Today my old team mate on the previous projects and currently Scrum Master, Alex Ginda, joined me in Unit Testing Kata effort... in the bar :) Kata is very straightforward thing: masters of martial arts perform certain fighting "patterns" in solo (or even in pairs) but it's not a real fight.
The idea turned applicable in software development. For more detail we refer reader to CodingKata website. What we did was a bit different though. The idea was not that much about performing a coding exercise but rather coding and unit testing.
So, we came up with the exercise, relatively simple one, here it is.
The exercise: Lighthouse radio monitoring devices run Java (wishful thinking, allowed in kata's legend:) ). Two in-house (or better say, in-light-house) programmers need to code and unit test simple java method that accepts a collection of Morse signals as input and returns true if the signal is SOS; single mistake allowed though. And it returns false otherwise. Very simple. Oh, and I almost forgot to mention that SOS in Morse code looks like this: . . . _ _ _ . . .
Took us about 45 minutes pure time. Technical details are not that relevant, here's few screenshots of the process:
Good finding... eating and coding is not that bad, seriously... when both of us ate we couldn't continuously code, but we could think better - very useful for "test-first" approach. It doesn't necessarily mean though that TDD develops unhealthy team habits :) It's all more complicated...
And finally, performing kata is fun, should be fun no matter what... Having it in the bar, like we did, or even outdoors or some other funny place, really sets cool context and totally reloads your mind. It's funny and insightful...