Mäxle Coding Dojo

Am Donnerstag war es so weit - das erste Java Coding Dojo im neuen Jahr!

Diesmal ging es allerdings nicht um schönen Code, nicht um Tests, nicht um kleine Schritte oder Refactorings..diesmal ging es darum, auf einem Server gegen alle anderen Teams Mäxle (je nach Region auch bekannt unter Mäxchen, Meiern, Einundzwanzig) zu zocken. Und zocken heißt nicht “schön programmieren”, zocken heißt gewinnen :-) Um den Abend so authentisch wie möglich zu gestalten, gabs auch jede Menge Bier. Mäxle ist nunmal ein Würfel-Trinkspiel.

Kurzerklärung Mäxchen: der Vordermann übergibt zwei verdeckte Würfel und sagt an, was angeblich drunter liegt. Entweder man glaubt ihm, würfelt selbst und gibt dann seinerseits die Würfel an den nächsten Nachbar weiter, wobei man mehr ansagen muss als der Vordermann. Oder man glaubt ihm nicht und guckt nach, was er gewürfelt hat. Wer lügt und erwischt wird, hat verloren. Wer seinen Vordermann denunziert aber falsch liegt, verliert auch. “Mäxle” ist dabei der höchstmögliche Wurf - 2 1.
 
Vier Runden à ½ Stunde (jeweils ca. 5000 Spiele) wurden gespielt. Jedes Team hatte zum Anfang einen “SimpleBot”, der immer die Wahrheit ansagt. Während nun die Bots gegeneinander spielten - am Anfang noch recht unbeholfen - wurde hinter den Kulissen gecodet was das Zeug hielt. Die vermeintlich bessere Strategie konnte man dann gleich live auf dem Server ausprobieren (dabei aber bloß keine Exceptions einfangen - Downtime kostet Punkte!). Die ganze Zeit über wurden aktuelle Spielberichte und Trends live an die Wand gebeamt - Fast Feedback Loops!
 
Unter Zeitdruck entsteht so innerhalb einer Viertelstunde bei fast allen Teams wunderbarer, ungetesteter Legacy Code, den man fürs nächste Refactoring-Dojo gleich wiederverwenden könnte :-)
 
Es war ein lustiger Abend..mit Hochs, Tiefs und kuriosen Ansagen (76 !?). Und das Ende war ein Thriller - in der eh schon engen vierten Runde verliert jackbott durch eine kurzzeitige ArrayIndexOutOfBoundsException (tja, wer hat hier nicht getestet?) wertvolle Punkte, es kommt zu einem Kopf an Kopf Rennen mit Markus, der dank minimal aber besserer Strategie im Zeitlupentempo vorbeizieht und sich damit den Tagessieg holt. Team 42 sind knapp dahinter auf dem dritten Platz, weit abgeschlagen die crushers (Datenbanken und Jenkins konfigurieren ist halt nicht Programmieren :P).
 
Die letzte Momentaufnahme des Abends - ein Fünf-Minuten-Lauf aller Bots im Vergleich mit dem initialen SimpleBot.
 
Finale
 
Danke an alle, es hat Spaß gemacht, bis zum nächsten Mal. Aber dann wieder mit Tests.
 
Seb & Daniel
 
Credits und vielen Dank an Conrad Thukral und Gregor Gramlich. Von ihnen kommen die Implementierungen für Server, Client und Viewer (github), gesehen zum ersten Mal auf der SoCraTes 2012.
 
 

Add new comment