Algorithms

Visualizing Algorithms

http://bost.ocks.org/mike/
http://bost.ocks.org/mike/algorithms/

Shuffle an Array

http://bost.ocks.org/mike/shuffle/
http://en.wikipedia.org/wiki/Fisher–Yates_shuffle
http://stackoverflow.com/questions/6274339/how-can-i-shuffle-an-array-in-javascript

function shuffle(arrToShuffle) {
    for (
        var j, arrTmp, i = arrToShuffle.length;
        i;        // if i==0 => false => break

        j = Math.floor(Math.random() * i),
          
arrTmp = arrToShuffle[--i],
           arrToShuffle[i] = arrToShuffle[j],
           arrToShuffle[j] = arrTmp);

        return arrToShuffle;
}

 

Datalist

Datalist

 
<input type="text" list="myDatalist"
   placeholder="search term" autocomplete="on" >

<datalist id="datalistWebsites" onclick="chgWebsite(2)">
	<select name="selWebsite" id="selWebsite">
		<option value="show all">show all</option>
		<option value="aagz">aagz.ethz.ch</option>
		<option value="arolla">arolla.ethz.ch</option>
		<option value="asmena">asmena.ethz.ch</option>
	</select>
</datalist>

 HTML5

<label>Choose a website from the list:
<input list="websites" name="myWebsite" /></label>
<datalist id="websites">
	<option value="show all">
	<option value="aagz">
	<option value="arolla">
	<option value="asmena">
</datalist>
HTML5 <option>: no closing tag is needed because there is no input possible, means no start & end & between
<label>Choose a website from the list:
<input list="websites" name="myWebsite" /></label>
<datalist id="websites">
	<option value="show all">show all</option>
	<option value="aagz">aagz.ethz.ch</option>
	<option value="arolla">arolla.ethz.ch</option>
	<option value="asmena">asmena.ethz.ch</option>
</datalist>

 

Custom Select Box

    <style>

        #c {
            height: 150px;
            width: 150px;
            float: right;
        }

        #menu {
            display: inline-block;
            border: 1px inset #999;
            padding: 44px;
            cursor: pointer;
            box-shadow: 0 0 8px #aaa;
        }

            #menu:hover { border: 1px inset #333; }

            ul{ 
                list-style-type:none; 
                max-height: 400px; 
                overflow: hidden;
                overflow-y: auto;
                width: 50%;
                margin: 40px;
            }
            li{
                margin-left: 20px;
                line-height: 20px;
                padding: 5px;
            }
            .letter{
                margin-left: 0;
                font-weight: bold;
            }
    </style>

 

 <body>
    <div id="c">Color</div>

    <ul id="menu">
        Select Website
        <li class="letter">Random</li>
        <li>Zufall (8)</li>
        <li>Zufall (alle)</li>
        <li class="letter">A</li>
        <li>aagz.ethz.ch</li>
        <li>arolla.ethz.ch</li>
        <li>asmena.ethz.ch</li>
        <li class="letter">B</li>
        <li>baufak.ethz.ch</li>
        <li>bauing-diplomreise.ethz.ch</li>
        <li>bauoek-modell.ethz.ch</li>
        <li>bendit.ethz.ch</li>
</ul>
<script>
var c = document.getElementById('c');
var menu = document.getElementById('menu');
var options = menu.getElementsByTagName('li')

for (var i = 0; i < options.length; i++) {
    options[i].style.display = 'none';
    options[i].addEventListener('mouseenter', function () {
var aaa = this.getAttribute('data-url');
//if (this.querySelector('[data-url]')) {
    console.log(aaa);
//}
c.innerHTML = this.innerText;
    })
}

menu.addEventListener('click', function () {
    for (var i = 0; i < options.length; i++) {
options[i].style.display = options[i].style.display != 'none' ? 'none' : 'block';
    }
})
</script>

 

Death of ipx10975 ...

Exactly 10 years after its birth our webserver has gone.

The last sign came after death:
Monday 31.03.2014 01:34, Automatische Benachrichtigung des IPX-Server Watchdogs.
Ihr Server ipx10975 ist derzeit nicht per Ping erreichbar!

Yep, it's well known: No ping, no existence!
Even for a Webserver.

All the time he has done his job as a Web-, Database- and Mailserver (XMailserver thx! ) very well! Only once he'd lost a little bit of his drive ... one of the disks had left the machine.

And here it is

ipx10975, 03.31.2004 - 03.31.2014
Windows Server 2003 retired, 1€ worth

ipx10975 lived in the datacenter of IPX Server GmbH (now QSC AG) - 10 years of very good service, satisfied!

This machine belonged to pinkytoes.com and grashalm-it, pinkytoes.com now is the partner of suter & partner (also called su-pa).

Now su-pa owns a new Windows Server 2012, again with a mailserver (hMailserver thx! )..