Rückblick: code.talks 2014

Am 9. Und 10. Oktober fanden in Hamburg die code.talks 2014 statt. Dabei gab es neben den interessanten Vorträgen noch viel mehr zu entdecken. Abgesehen von der Nacho- und Popcorn-Flatrate gab es ein durchaus sehenswertes Catering der Kochfabrik und viele Sponsoren mit viel Engagement im Recruitment. Nur sehr wenige Dienstleiter waren vertreten – Zielgruppe waren eindeutig Entwickler. Davon gab es dementsprechend sehr viele – über 1500, den größten Teil stellten Webentwickler im Front- und Backend. Das konnte man das auch an den Themen ablesen. So gut wie kein Vortrag beschäftigte sich mit der „klassischen“ Anwendungsentwicklung oder gar systemnaher Entwicklung. Die für meine Wahrnehmung größten Themenkomplexe waren Responsive Design, Webtechnologien rund um PHP und JavaScript sowie Datenbanken, Skalierung, IT-Management und Softwarequalität. Mehrere Vorträge gingen auch in die Richtung gesellschaftlicher Bedeutung von Software und IT im Allgemeinen.

Was ich interessant fand, waren einige Vorträge, die einige weit verbreitete Prinzipien wie TDD, BDD, SOLID etc. auch kritisch hinterfragt haben und anhand der historischen Entwicklung den Kontext erklärten, in dem diese entstanden sind und warum nicht unbedingt jedes Projekt davon profitieren muss (Sebastian Bergmann: Eine kurze Geschichte der Testpraktiken; Marco Cecconi: Guerrilla software design: doing it wrong and getting it right).
Einige interessante Ideen gab es zum Thema Softwarequalität, wie z.B. „Visual Regression Testing“ (Milena Reichel). Dabei wird eine zu testende Webseite in ein Bild gerendert und die Differenz zu einem Referenzbild ermittelt. So lassen sich Darstellungsfehler insbesondere durch CSS gezielt ausschließen. Ein spannender Ansatz ist auch die „Datengetriebene Analyse und Verbesserung von Code“ (Andreas Dewes), bei der anhand von Syntaxstrukturen Quellcode analysiert wird und maschinell aus großen Datenmengen Strukturen gelernt werden, um häufige Fehler leichter als bisher auffinden zu können.
Viele Vorträge zeigten inhaltlich ähnliche Überzeugungen, wie die Bedeutung der Kommunikation, ein Bekenntnis zu qualitativ hochwertiger Software, und die allgemeine Zufriedenheit mit der eigenen Situation als Software-Entwickler.

Was ich mitgenommen habe, ist neben viel technischem Wissen die Erkenntnis, dass man als Entwickler bei allem, was man tut, nie den Kontext aus den Augen verlieren sollte, in dem man handelt, und nach dem Kontext zu fragen, aus dem heraus Techniken und Technologien entstanden sind. Ob es nun um SOLID oder NoSQL geht – neue Lösungen sind nicht allgemein „besser“ als alte, sondern nur in einem bestimmten Kontext. Bevor man neue, mit hoher Wahrscheinlichkeit fehlerbehaftetere Technologien einführt, sollte man diesen Kontext kennen und kritisch mit seinem eigenen vergleichen.
Wünschenswert wäre vielleicht noch eine Unterbrechung der vielen Vorträge durch kleine Workshops oder Diskussionsrunden, da durch den engen Zeitrahmen und die Kinoatmosphäre wenig Interaktion entsteht.