Last Saturday was my first Global Day of Code Retreat. Code Retreat is an event where software engineers meet to for a day to practice their craft by attempting to create Conway's Game of Life, in four or five 40-minute sessions.
After each iteration, the code is deleted and new pairs are formed. Each iteration comes with its own constraint.
Desired effect: object-orientated code.
Test-Driven Development as if you meant it, i.e. start with the smallest unit of certainty and wait for patterns to emerge to extract them into concepts, with objects and methods.
Desired effect: minimalistic code and the fewest abstractions as possible.
Methods can have no return value.
Desired effect: Use of the observer pattern. Tell, don't ask.
Pairing ... in silence
Desired effect: write methods in a way that reveals our intentions. Side-effect: ridiculously long method and variable names.
The event is designed to put emphasis on the process rather than on the solution. In that way, it is like katas in martial arts. No one is expected to succeed in writing the entire solution in 40 minutes.
The Code Retreat provided us with a safe place to try out new things, learn and be creative.
Many thanks to Enrique and Makis for organising this great event.