Code Retreats und Software Craftsmanship

31. Mai 2012Christoph Pater

Schon seit einiger Zeit gibt es die Software-Craftsmanship-Bewegung mit dem Ziel, die Skills der Software-Entwickler zu verbessern. Eine konkrete Maßnahme sind die Code Retreats von Corey Haines und die Legacy Code Retreats von J. B. Rainsberger. Dies sind Event-Formate, bei denen Software-Entwickler einen Tag lang ihre Programmierfertigkeiten trainieren, Neues ausprobieren und sich mit anderen austauschen. Dabei wird in 5-6 Sessions á 45 Minuten eine Programmieraufgabe im „Pair Programming“ und mit „Test Driven Development“ (TDD) gelöst. Nach jeder Session besprechen die Teilnehmer ihre Erfahrungen und machen dann mit einem neuen Partner weiter. Bei einem Code Retreat wird dabei das „Game of Life“ entwickelt und bei einem Legacy Code Retreat eine bestehende Code-Basis verbessert. Diese Events sind optimale Gelegenheiten, um die eigenen Fähigkeiten ganz konkret zu verbessern und weiterzuentwickeln.

Wie schon erwähnt, sind Code Retreats ein Teil von Software Craftsmanship. Der Ursprung dieser Idee liegt in agilen Prozessen. Obwohl man beim Stichwort „agil“ zunächst an Vorgehensmodelle wie Scrum, Kanban sowie eine iterative Umsetzung der Projekte denkt, war es vor mehr als 10 Jahren mit dem agilen Manifest das Anliegen einiger Entwickler, eine bessere Art der Softwareentwicklung zu erarbeiten. Wer sich die Namen unter dem agilen Manifest ansieht, wird feststellen, dass die „Erfinder“ des „Extreme Programming“ und die Autoren des „Pragmatischen Programmierer“ unter ihnen sind. So ist es nicht verwunderlich, dass sich die Prinzipien des Manifests auch auf das technische Handwerk bei der Softwareentwicklung beziehen.

Trotz des Durchbruchs der agilen Vorgehensmodelle blieb die geforderte, technische Exzellenz jedoch weitgehend unbeachtet. Gerade vor dem Hintergrund einer iterativen Umsetzung und der damit einhergehenden, kontinuierlichen Anpassung von Anforderungen ist dieser Aspekt aber von zentraler Wichtigkeit. Um diesen Missstand zu verbessern, hat ein weiterer Unterzeichner des agilen Manifests, Robert C. Martin, 2008 gefordert, ein fünftes Wertepaar in das Manifest aufzunehmen: „Craftsmanship over Execution“. Dieses stellt den sorgfältigen und verantwortungsbewussten Umgang mit der Code-Basis über das einfache Erfüllen der gerade gestellten Aufgabe.

Auch wenn dieses Wertepaar nie in das agile Manifest aufgenommen wurde, verhalf jedoch sowohl die Diskussion darüber als auch Robert C. Martins Buch „Clean Code – A Handbook of Agile Software Craftsmanship“, welches im selben Jahr erschien, einer Bewegung zum Durchbruch, die mit dem „Pragmatischen Programmierer“ begann. Die „Software-Craftsmanship-Bewegung“ verfolgt die Professionalisierung der Softwareentwicklung. Dabei lehnt sie sich an das Ausbildungsmodell des Europäischen Handwerks mit Lehrlingen, Gesellen und Meistern an. Ziel ist es, durch dieses Modell sowie mithilfe der Grundpfeiler „Lernen“, „Praktizieren“, „Teilen von Wissen“ und „umsichtiges Handeln“ gut gefertigte Software zu erstellen.

Im Jahr 2009 folgte die erste Software Craftsmanship Conference in London und das Software Craftsmanship Manifest wurde aufgesetzt. In Deutschland wurde die „Clean Code Developer- Initiative“ gegründet. 2011 fand hierzulande das erste Software Craftsmanship and Testing Camp (SoCraTes) statt. Als Ergebnis dieses Events wurde die deutsche Software Craftsmanship Community unter dem Namen „Softwerkskammer“ gegründet. Mittlerweile gibt es in zahlreichen Städten lokale Softwerkskammern.

Für adesso als Technologieführer ist handwerklich gut entwickelte Software sowie der kontinuierliche Ausbau von Entwickler-Skills ein wesentliches Fundament, um unserem Anspruch an qualitativ hochwertige Software jederzeit gerecht zu werden. Deshalb engagieren wir uns sowohl für die Craftsmanship-Veranstaltungen als auch für die Code Retreats. adesso sponsert beispielsweise die diesjährige Software Craftsmanship and Testing Conference (SoCraTes) vom 02. – 04. August in Johannesberg. Wir sind bereits gespannt auf die Impulse, die in diesem Jahr von der Konferenz ausgehen werden. Diesen Monat fand bereits das Gründungstreffen der Softwerkskammer Berlin in unserer Berliner Geschäftsstelle statt. Ebenfalls sind wir in der Softwerkskammer Dortmund aktiv. Wir unterstützen Code Retreats wie den „CodeRetreat Berlin“ und den „Legacy CodeRetreat Berlin“ und führen unternehmensintern Code Retreats durch, zum Beispiel in Berlin, Dortmund und München.

Haben Sie schon einmal an einem Code Retreat teilgenommen? Mich würde interessieren, welche Erfahrungen Sie dort gesammelt haben und welchen Stellenwert sauber entwickelte Software für Sie hat. Ich freue mich auf den Austausch mit Ihnen.

Christoph Pater Christoph Pater ist Softwareentwickler und ScrumMaster bei adesso mobile solutions. Des Weiteren organisiert er die Treffen der Softwerkskammer Dortmund und ist an der Organisation der diesjährigen SoCraTes Conference beteiligt.
Artikel bewerten:
1 Star2 Stars3 Stars4 Stars5 Stars
Loading...

Kommentar hinzufügen:

Ihr Kommentar: