HacklabTo

Author: janusz

Um mal ein paar Leute in Kanada kennen zu lernen habe ich mich im Internet auf die Suche nach Moeglichkeiten hierzu begeben. Mein erster Versuch eine Openstreetmapparty am letzten Sonntag (siehe Sensecam Video) war schon mal ein sehr interessantes Erlebnis und ein schoen verbrachter sonniger Tag und ich werde versuchen an den naechsten Partys ebenfalls teilzunehmen.

Am Dienstag habe ich mich dann auf den Weg zum hacklab Toronto gemacht. Einem Hackerspace in den Kensington markets. Dort ist jede Woche unpatched tuesday. Offenes Haus kennenlernen und arbeiten an eigenen oder gemeinsamen Projekten. Aber bevor ich von dem Abend berichte erst eine kleine Tour durch den Hackerspace.

Der Hackerspace ist direkt ueber einer Kneipe in dem wundervoll alternativen Stadtteil Kensington markets. An Zahlencode plus RFID Schloss an der Tuer sieht man gleich wodran man ist. Jedes Mitglied bekommt eine RFID-Karte und hat somit jederzeit Zugang zum Labor. Zusaetzlich kann so geloggt werden wer wann das Labor betritt.

LED sign and 19" rack

Gleichzeitig wird auf dem LED Board ueber dem Eingang angezeigt wer den Raum betreten hat und der IRC-Bot postet die Information in den IRC-Channel.
Das Labor selber besteht aus einer gemuetlichen Sofaecke mit Bibliothek,

Library and Map of the Internet

einer Kuechenecke mit einem Kuehlschrank voller kalter Softdrinks, einem Bad

Toilet with alarm light and lasercutter

und einer grossen Arbeitsflaeche.

Public machines and personal bins

Soviel zu der Einrichtung. Sehr gemuetlich und alles was man braucht fuer ein paar Stunden arbeiten an einem Projekt oder aber fuer ein Wochenende LED-Signs oder Theremin loeten. Zusaetzlich ist das Labor voller Spielzeug die das Herz eines Computerfreaks hoeher schlagen laesst. Die Toilette ist mit einer Warnleuchte versehen die anzeigt ob das Bad besetzt ist. Jedesmal wenn die Toilettenspuelung betaetigt wird postet diese dies auf Twitter, bis jetzt nur ueber einen Sensor im Spuelkasten. Ein Sensor fuer die Luftqualitaet ist aber bereits bestellt.
Und damit nicht genug ueber das Bad, zusaetzlich ist dort auch der Lasercutter des Labors intalliert, da nur dort eine gute Entlueftung zur Verfuegung steht.

Weiterhin ist in der Mitte des Raums ein Touchscreen installiert ueber den sich verscheidene Radiostreams starten lassen und auf dem Wetter und Nachrichten angezeigt werden. Fuer die Sauberkeit in dem Labor sind drei kleine Roboter zustaendig. Zwei Staubsauger-Roboter und ein Wischroboter. In Vorbereitung ist eine Kamera auf einem kleinen Wagen der sich auf zwei Drahtseilen an der Decke durch das ganze Labor bewegen kann. Dazu kommt eine komplette Ausruestung fuer Loetworkshops, einige oeffentliche Computer ein 19″ Rack mit Switch und Server, ein Telefon samt eigenem Asterisk Setup fuer Telefonkonferenzen etc. Vermutlich habe ich vieles noch gar nicht gesehen oder vergessen aufzuschreiben aber naja man bekommt einen Eindruck. Sehr viel Spielzeug und soweit ich das beurteilen kann nette Leute, wenn auch sehr auf der wir loeten strange Sachen Schiene.

So zurueck zum Dienstag abend. Dieser Abend war ein sehr gutes Beispiel wie der “Informatiker” Leute kennen lernt. Anfangs war es recht voll und alle waren mit Projekten beschaeftigt so das man sich schlecht irgendwo einbringen konnte. Daher habe ich es mir erstmal auf dem Sofa gemuetlich gemacht und die Bibliothek genutzt um mich etwas in Objective-C weiter zu bilden.

Nach einiger Zeit war der Grossteil der Leute auf der Jagd nach Buritos und uebrig blieb eine kleine Gruppe die sich bald um einen einzigen Rechner scharrte. Alex ein unglaublicher schneller Visual-Basic Programmierer hatte ein Bot geschrieben der eine optimale Loesung fuer ein gegebens Level in Jawbreaker liefern sollte. Bei Jawbreaker geht es darum gleichfarbige Baelle die nebeneinander liegen anzuklicken, wodrauf diese verschwinden und die darueber liegenden Baelle herunter fallen. Je mehr Baelle man auf einmal verschwinden laesst desto mehr Punkte gibt es. Ich wuerde euch raten es auszuprobieren bevor ihr weiter lest.

Leider gibt es ganz grob ueberschlagen im schlechtesten Fall 9.87irgendwas*10^92 Moeglichkeiten pro Level. Ziemlich schnell waren wir zu dritt in wilde Versuche und Diskussionen verwickelt wie wir das ganze beschleunigen koennen. Nach einigen schon ganz guten Hacks, einigen Testspielen am Whiteboard mit daneben gemalten Graphen etc. war das ganze fuer uns immer noch mehr oder weniger ein  Raetsel. Eine kleine Verbesserung hatten wir bereits und zwar haben wir das Spiel in dem Moment abgebrochen wo die maximal moegliche Punktzahl auf dem Brett + die gerade erreichte Punktzahl geringer waren als bei dem besten Spiel, das wir bis dahin gefunden haben. Damit lies sich die Anzahl der gespielten Zuege stark verringern allerdings immer noch nicht in berechenbare Groessenordnungen.

Eine Heuristik musste her. Wenn man sich an den Punkten orientiert die ein Move einem gibt und immer den Zug macht der am meisten moegliche Punkte gibt erreicht man sehr schnell eine grosse Anzahl von Punkten. Allerdings erreicht ein menschlicher Spieler immer noch bessere Ergebnisse indem er am Anfang sehr viele schlechte Zuege macht, also nur zwei oder drei Baelle verschwinden laesst so aber eine grosse Menge von Baellen der gleichen Farbe an einem Fleck sammelt und mit diesen dann richtig abraeumt. Am Ende einigten wir uns darauf das eine etwas kompliziertere Auswahl des naechsten Zuges her muss, die die bekommenen Punkte beruecksichtigt und eine Verbesserung des Wertes des Spielfeldes. Allerdings war es schon zu spaet um zu versuchen dies noch in Code um zu setzen. Falls ihr ein wenig Zeit habt und ihr Lust habt euch diesem Problem anzuenehmen lobe ich hiermit eine Belohnung von zehn Tafeln Schokolade fuer eine gute theoretische oder fertig programmierte Loesung aus.

Nachdem wir uns somit technisch schon ein weing kennengelernt haben kamen wir dann auch dazu Namen und aehnliches aus zu tauschen, wobei sich heraus stellte das Alex eine deutsche Mutter hat die vor zwanzig Jahren aus Hamburg nach Kanada uebergesiedelt ist.

Ich werde auf jeden Fall am naechsten Dienstag wieder im Labor sein und ueberlege ob ich zum naechsten Monat Mitglied im hacklab werde. Vielleicht gibt es ja Rabatt fuer fuenf Monate Gastmitglieder.

Tags: , ,

Leave a Reply