Was ist ein CodeRetreat?

Sie kennen es sicher: Im Klein-Klein des Programmieralltags haben Sie nur wenig oder gar keine Zeit, Ihre Kenntnisse zu verbessern und zu üben. Vielleicht nehmen Sie an der ein oder anderen Schulung teil – aber die Verbesserung der Arbeitsweise und die Vertiefung bestehenden Wissens bleiben dabei meist doch auf der Strecke. Programmieren kann jedoch als eine moderne Handwerkskunst gesehen werden, an deren Perfektion jeder Entwickler regelmäßig feilen sollte.

„Retreats“ liegen zweifellos voll im Trend. Viele Menschen denken dabei an einen spirituellen Rückzug, etwa in einem Kloster. Aber auch wir Programmierer kennen den Begriff: Ein Code-Retreat ist ein etabliertes, bewährtes Lernformat, bei dem Sie sich ohne Zeit- und sonstigen Druck ganz auf die Programmierung und gutes Code-Design konzentrieren, Ihre Arbeitsweise verbessern und Ihr bestehendes Wissen vertiefen – all das, ohne an Ihr aktuelles Projekt und seine drohenden Deadlines zu denken.

Der Aufbau eines CodeRetreat

Ein Code-Retreat dauert üblicherweise einen Tag. Dieser wird dabei in fünf bis sechs 45 Minuten lange, aufeinander aufbauende Programmiersitzungen unterteilt. Zwischen jeder Sitzung liegen jeweils 15 Minuten für einen Rückblick, eine Kaffeepause und ein Briefing für die nächste Sitzung. Am Morgen konzentriert man sich darauf, sich mit der Problemstellung vertraut zu machen, mit alten Gewohnheiten zu brechen und seine Arbeitsweise zu fokussieren. Am Nachmittag wird es anspruchsvoller: Sie stellen Ihr Abstraktionsvermögen und Ihre Fähigkeit zu Test-Driven Development auf die Probe. Statt neue Erkenntnisse zu gewinnen, verbringen Sie den Tag damit, diese Konzepte zu üben.

Als Arbeitstechnik wird grundsätzlich die Paarprogrammierung genutzt, da der Wissenstransfer ein essentieller Teil der Übung ist. In jeder Sitzung arbeiten Sie mit einem anderen Partner zusammen, wählen einen Teil des zu lösenden Problems aus und beginnen mit der testgesteuerten Entwicklung. Nach jeder Sitzung löschen Sie den entwickelten Code (komplett!) und tauschen sich mit den anderen Teilnehmern über die gelernten Lektionen aus.

Um die Sache noch interessanter zu machen, werden häufig besondere Handicaps in die Sitzungen eingebaut, beispielsweise dürfen Sie mit Ihrem Partner lediglich durch Code kommunizieren.

Als Aufgabe wird üblicherweise “Conway’s Game of Life” verwendet. Nach ein paar Sitzungen werden Sie erkennen, dass Sie das Problem niemals lösen werden und dass Sie es in der Tat gar nicht lösen sollen. Es geht tatsächlich rein um die Leidenschaft für sauberen Code, gutes Design und testgesteuerte Programmierung.

Sie werden sehen: Wenn Sie gemeinsam mit anderen und mit Spaß an den gestellten Aufgaben arbeiten, dann wird der Lerneffekt ganz automatisch eintreten!

Blog CodeRetreat: Perfektionieren Sie Ihr Softeware-Craftmanship