Sunday, November 22, 2009

Agile 2009 - Day 3 - 26th August - Kake Coding Dojo

On Wednesday evening, after the talks were over, I organized a Kake Coding Dojo at the open jam area. We had 3 computers (my own running OS X, Thiago Colucci's with Ubuntu Linux and Pedro Leal's one with OS X) and about 10 people participating.
We chose Kata Bowling as our problem.

We built up the nice sheet you can see above (thanks Danilo Sato for the picture) with our explanation of the problem as well as the mechanics. This way, we intend to get people to join us on the fly while the dojo was already running. And it worked! We had about 3 or 4 people that came by, joined for two rounds and then left. A few people kept around just chatting about what was going on and wondering how to things were going. Thanks Pedro Leal for the picture below.

The same problem was being solved in Ruby, Haskell and Java on each computer and it worked about fairly well in all of them. We kept 7 minutes round as usual and just had some problems with missing experts on Haskell (just two people very familiar with the language and 2 more with some experience) which drove us to ask out for help to other Agile attendees.

Finally, we ran our retrospective which the result you can check on the picture above (or this link for the higher resolution one).

Our main problems were about the noise around (downside of being in an open area) and our lack of detached keyboards (which could have jumped from hand to hand more easily). We learned (the hard way) that changing a pair in the middle of a big refactoring is really hard. It is very difficult to explain what is happening to the newcomer when the code is not working.

People also liked trying Ruby and Haskell but mostly the experience of pair programming with different people from different backgrounds. There was a small issue regarding the stress situation that the format puts participants on. 7 minutes is a short time and having the pressure to explain the code to the newcomer and adding your own contribution in that time (not being able to fail on any or else the whole code might get lost) is not an easy and comfortable situation. From this view point, the format breaks the safety aspect so important in a Coding Dojo. On the other hand it also leads to a more exciting experience and gets you to practice a different set of skills.

On the overall it was an amazing experience and I would like to thank everyone for joining us. After so much fun, we obviously went out for some dinner at an amazing burger place in Chicago.

You can checkout the generated code of the three solutions at Coding Dojo São Paulo's github account. There are also more pictures from Danilo at his Flickr account and some more from Pedro at his Picasa account.


André Faria Gomes said...

Nice Hugo. We are running a coding dojo at bluesoft every tuesday. You guys will be always welcome whenever you want to stop by.

Mike Bria said...

Way to go. I love hearing these kinda stories!

Anonymous said...

Its Definitely good bookmarking for future reference.

Shahana Shafiuddin said...

You guys are looking great.