Letztes Wochenende war eines der größten Community Events in der deutschen .Net-Hemisphäre. In Leipzig trafen sich etwa 170 begeisterte Entwickler um über Trends, alltägliche Sorgen und die Verfehlungen von Microsoft zu beratschlagen oder philosophieren. Für mich als Ex-Leipziger und Exil-Dresdner natürlich ein Muss. Und so kam es, dass ich schon begeistert der Anmeldung harrte bevor diese überhaupt freigeschaltet wurde.
Als der Termin dann jedoch endlich da war, gab es für mich das typische Problem aller Leistungsträger: Zu viel zu tun und zu wenig Zeit. Weshalb ich statt zwei nur einen Tag vor Ort sein konnte und leider auch die anschließende Party verpasst habe. Dennoch konnte ich an dem einen Tag weit mehr lernen und weit mehr interessante Menschen treffen als bei so mancher kommerziellen Veranstaltung.
Dies ging schon mit der Organisation und den einfachen Regeln des Tages los, die sinngemäß lauteten:
- Eine Session kann ein Vortrag sein, eine Diskussion oder Live Coding, es hängt komplett davon ab was gewünscht wird.
- Jede Session lebt von ihren Beteiligten und geht maximal eine Stunde.
- Vorbei ist vorbei, nicht vorbei ist nicht vorbei. Fragen also gleich stellen, sonst ist es vielleicht zu spät.
- Niemand muss in einer Session bleiben. Wenn es wo anders schöner ist, geht man halt da hin.
Darauf basierend, wurden dann entsprechende Themen gesammelt. Welche jeweils zunächst auf einen Zettel geschrieben und dann allen Beteiligten vorgestellt wurden. Jeder der sich dafür interessierte hob anschließend die Hand damit eingeschätzt werden konnte welche Raumgröße benötigt wird, bevor die Session dann grob in ein Zeitraster eingeplant wurde. Dieser Plan wurde dann, nachdem alle Sessions fest standen, von allen Beteiligten nach Belieben sortiert bevor es in die ersten Räume ging.
Letzteres sehe ich gewissermaßen als notwendiges Übel. Es ist verständlich, dass bei einer so agilen Veranstaltung keine Agenda existieren kann und demnach eine Raumplanung im Vorfeld unmöglich wird. Aber irgendwie hatte ich das dumpfe Gefühl, dass die Räume über den Tag hin weg gern mal wieder umsortiert wurden. Zumindest ist es mir mehr als einmal passiert, dass ich in einem Raum saß in den ich zumindest anfangs gar nicht wollte. Naja, zumindest so lange bis ich gemerkt hatte, dass mich das „neue“ Thema auch interessierte.
Genau bei dem Punkt muss ich der Veranstaltung ein großes Lob aussprechen. Obwohl es viele Leute gab die, wie ich, wohl eher zum Konsumieren gekommen sind, gab es sehr viele sehr gute Sessions. Nach meinem Gefühl gab es genau die richtige Mischung aus typischen Wiederholungstätern, Technologiegurus und begeisterten Brötchen-Verdien-Programmierern. Auf diese Weise konnte ich gelegentlich eigene Erfahrungen zum besten geben und musste mich an anderer Stelle nicht ganz so tief verkriechen weil ich vom Thema noch nicht viel gehört hatte.
Mein Tagesablauf sah dann auch so aus (über die Reihenfolge bin ich mir nicht mehr sicher):
Windows Phone 7
Eigentlich wohl zum Live Coding gedacht artete es schnell in eine Marktanalyse aus, mit meinem späteren Entschluss auf Webapps umzusatteln bevor ich überhaupt mit WP7 anfange…
Mittagessen
Gesponserte Hühnerschenkel und dazu Diskussionen zum Praxiseinsatz von Specflow, UI-Testing und wo im V-Model sich Techniken wie BDD und TDD finden.
Für mich wichtigste Feststellung: V ist als Vorgehensmodell vielleicht nicht so hip wie Scrum und Co. aber es zeigt uns sehr einfach die Abstraktionsebenen der Software und gibt uns eine eindeutige Definition der Testarten wie man sie in der typischen online Literatur oft schmerzlich vermisst. (Man vergleiche nur mal die missverständlichen Betrachtungen in Blogs darüber was ein Unit-, Integrations-, System- und Akzeptanztest ist…)
WTF is a Type Provider?
Steffen Forkman zeigte wie man mit F# 3.0 Typen während der Programmierzeit(!!!) dynamisch und ohne Kompilierung aus einer Beschreibung eines Webservices oder anderen Quellen erstellen kann, wodurch typsicheres Programmieren ohne großen Aufwand möglich wird.
Neben dem Microsoft Bashing eindeutig mein Highlight des Tages.
[Session Hopping]
Eine Stunde lang von einer Session zur anderen hüpfen und irgendwie überall mal rein schnuppern, auf dem Gang mit Leuten reden und ungestört das Buffet plündern. Wunderbar!
Event Based Components und Flow Design
Man baut sich für jede grundlegende Funktionalität eine Klasse mit nur einer Methode. In „Platinen“ oder „Controller“-Klassen stöpselt man diese dann zusammen und erreicht damit eine bessere Austausch- und Testbarkeit.
Auch wenn Björn Rochel und Stefan Lieser mir in der Session das Brett vor dem Kopf entfernt haben, kann ich ehrlich gesagt dennoch nicht ganz so viel Begeisterung dafür entwickeln. Was wohl auch an meinen schrecklichen Erfahrungen mit graphischen Editoren für flussgesteurte Systeme liegt.
Feature Toggeling
Mit Feature Toggels schaltet man vor, beim oder nach dem Release Features aus bzw. ein. Dabei handelt es sich in aller Regel um modifizierte If-Statements die jeweils den Abarbeitungspfad ändern.
Hier habe ich still in meiner Ecke gesessen weil ich einfach nicht mitreden konnte. Ich bin Desktopentwickler und unsere einmonatigen Releasezyklen haben wir uns vor allem deshalb auferlegt um schnell fest zu stellen wenn es irgendwo hakt. Für mich war die Diskussion aus einem anderen Grund interessant: Sie erlaubte einen Einblick in die Arbeitsweise mit sehr kurzen Releasezyklen und den damit verbundenen Problemen aber auch Vorteilen.
Bash Microsoft
Wie beschreibt man so etwas für Leute die nicht da waren? Sagen wir mal so: Die beiden Microsoft Evangelisten haben mit Sternburg Export ausgerechnet das Bier ausgegeben was ich in dem Zusammenhang eher mit SEHR fußballbegeisterten Mitbürgern in Verbindung bringen würde, die sich gerade beim Heimspiel gegen ihren verhassten Erzrivalen befinden. Ob sie das beabsichtigen weiß ich nicht, ich weiß aber auch nicht was sie mit der gesamten Diskussion bezweckten.
Natürlich ist es verständlich, dass sie uns Entwicklern die Firma und ihre Produkte näher bringen wollen. Aber aus meiner Sicht kann es lediglich der Unterhaltung der Anwesenden gedient haben als des ernsthaften Informationsaustausches. Und so wurden die beiden von der geballten Kompetenz der .Net-Community auseinander genommen ohne, dass es am Ende ernsthaft neue Erkenntnisse gegeben hätte.
Dank des Biers und Popcorns war die Situation aber dermaßen schräg, dass ich mich die ganze Zeit in einer Sitcom wähnte und unterbewusst auf die eingespielten Lacher wartete. Wobei diese gar nicht nötig waren weil sich der Humorlevel konstant auf hohem Niveau befand.
Fazit
Zusammenfassend lässt sich also noch einmal sagen: Die Organisation war klasse, der Spaßfaktor riesig und nächstes Jahr werde ich versuchen wirklich 2 Tage da zu sein. Vielleicht gewinne ich dann auch mal was…
Kommentare