Last week we had a code sparring session in Stockholm under the flag of Alt.Net Sweden.

Peter Hultgren, also a member of Alt.Net Sweden came up with the idea. During the Coding Kata held a few weeks ago at Avega we identified a few problems with the setup.

one of the problems identified during the coding kata was that a lot of people were idle, or non-productive. There was a lot of discussion etc. all due to the fact that there were 8 people and 1 keyboard.

With the code sparring setup there is a set up of 2 people per keyboard (maximum of 3). Meaning several different solutions. We also published which kata we were going to do in the invitation so no time would be wasted on deciding what to do.

RemoteX hosted the session at the new office, offering Beer and Pizza to the 11 participants. We did the Yahtzee kata, with 20 minute rotations. With 5 people stationary at their own computers, so everyone providing a computer felt comfortable with doing so.

This meant that we could have a full rotation in the given time frame.

As far as I could tell everyone had a good time. Of the 5 different solutions here were a few quirks:

  • one was implemented in python
  • one was implemented using BDD through NBehave
  • one used NUnit
  • one used NUnit in MonoDevelop on a Macintosh
  • one used MSTest

It was quite interesting to see the different setups, and solutions.

Some reflections:

The Yahtzee kata was a bit too simple to produce any interesting variations. Perhaps if it had been set up with Object Calisthenics it could have resulted in more variation.

Last night there was a coding dojo at Avega’s offices in Stockholm, under the flag of Alt.Net. This was the first coding dojo I’ve attended, and it was a fun experience. We did the HarryPotterKata with Object Calisthenics.

I thought I’d post a few thoughts:

  • There was allot of discussion around Object Calisthenics, which is good. But adding it to the mix added a requirement to the solution. Not everyone committed to this. “Let’s drop this and focus on some business value instead” was uttered at several occasions. I think that, if there is a requirement that code should be written a specific way. Then making sure it’s written such is a business requirement.
  • Deciding on a kata on before hand is a good idea, that can reduce the amount of time spent getting started.
  • Reshaper is awesome. I learned a few new tricks with it from working with others.
  • Creating some snippets for creating new tests could be a good idea for speeding things up.

To summaries I think it was a good evening, I especially think that coding dojos is a good idea to organize for in house knowledge sharing, or just team alignment in general. I got that feeling that it is easier to get a good flow in the Kata if you have some standards in place already.