This Saturday, our company was hosting Global Day of Code Retreat for the members of Ellerslie .NET User Group Meetup.
Global Day of Coderetreat is a world-wide event celebrating passion and software craftsmanship. Last year, over 5000 passionate software developers in 170 cities around the world registered to spend the day practicing the craft of software development using the coderetreat format.
In short: Code Retreat is a daylong, intensive practice event focusing on the fundamentals of software development and design. The coderetreat format has proven itself to be a highly effective means of skill improvement by providing developers the opportunity to take part in focused practice away from the pressures of ‘getting things done.
That was my second Code Retreat I took participation. Previous one, was an internal Legacy Code Retreat organised for our company’s employees only, so I have to compare much and say the difference. I would say it was a very well organised event, I did enjoy and I defenitely had got an inspiration for the next couple of months or three 🙂
We got two sponsors: Olympic Software who provide the venue, snacks and drinks, free WiFi access and Fiserv company who organised lunch.
Because of the attendee limitation we couldn’t fit all people wanted to participate, at least 25 were registered and another 10 were in a waiting list. Man, I don’t really understand those people who confirmed their RVSP and then delberately ignored email notification, TXT messages and didn’t come at all. That’s really sucks. Do not behave in such a childish way. Don’t wanna go or don’t have time? Just change RVSP to No and give a chanse to others.
So, anyway, we got around 22 developers who woke up early in the Saturday, drove to Ellerslie and were ready to start 🙂
What can you get out of Code Retreat?
- Spend a day pair programming with 6 different people
- Experiment with various programming languages
- Write code as you wish without usual real-world constraints…
- and then write code with some very unusual constraints
- Practice 4 rules of simple design and TDD as if you meant it
- Meet other passionate programmers that you can learn from and also teach them a few cool things
What do you need to attend?
A laptop with the programming environment of your choice (IDE, unit testing library, etc.). One per pair is enough.
The agenda was:
- 8:30 – 9:00 Welcome coffee
- 9:00-9:30 Introduction
- 9:30-10:15 Session #1
- 10:15-10:30 Retrospective
- 10:30-11:15 Session #2
- 11:15-11:30 Retrospective
- 11:30-12:15 Session #3
- 12:15-12:30 Retrospective
- 12:30-13:30 Lunch break
- 13:30-14:15 Session #4
- 14:15-14:30 Retrospective
- 14:30-15:15 Session #5
- 15:15-15:30 Retrospective
- 15:30-16:15 Session #6
- 16:15-16:45 Retrospective of the whole day
All sessions was about implementing Game of Life. The rules were:
- Pass all tests
- Minimise duplication
- Maximize clarity
- Has fewer element
The first session task was to implement Game of Life as maximum as you can and write some unit tests.
The second session rule was one developer writes test, another implements functionality.
The third session had time limitation: you both have 5 minutes only to design, implement and test one cycle. Otherwise delete the code, both test and implementation.
The fourth session had these restrictions (you should pick at least two of them):
- No mouse
- 4 lines per method
- Immutable Objects
- No naked primitives
The fifth sessions was quite challenging: it was not allowed to use any if and conditions. I would say it was my favourite part of Code Retreat which remind me programming competition in a high school. It was quite amazing learn how different people do their own approaches to solve similar problems.
Session 6 had these restrictions (you should pick at least two of them):
- Pure functions
- No Return values
- No Constraints
Finally, we had a Retrospective of the whole day where everyone had to say three things:
- What have you learned today
- What surprised you
- What are you going to do/to change on your work from Monday
After that, we cleaned show room and went to pub for a couple of drinks 🙂
Ivan Grigoryev's Blog
Living in New Zealand. Blogging about the country, beautiful places, everyday life.
Do a skydive - halfway completed; get 1400 - still working on; reach 300kph - completed by 96.6%