Tuesday, August 18, 2009

Code Kata Resources (Updated)

I've got a ton of exercises in the Building Skills books. Specifically, my OO Design book is based on my own personal Code Kata exercises.

Plus there's the established Code Kata resources. The CodeKata page, Mark Needham's blog posting on code-kata, Rizky Farhan's Collection of Software Projects, jp.hamilton's Code Kata Resources. The Coding Dojo page (which suffers from showing no usable URL's -- what a mistake.)

Plus there are the random problem sites: Project Euler, Top Coder, UVa, SPOJ, Google CodeJam.

I've done a few (63) Project Euler problems (I got stumped by problem 69). Another 37 and I'd be at level 3.

The question isn't "where are the problems?" The question is "Are these good Code Kata problems?"


  1. This is awesome, thanks for posting all these potential Katas!

    I think part of what makes a good Kata is not necessarily the problem, but the attitude you take to solving it.

    For example, a problem that has a difficult domain to understand or create a solution for (e.g. a Project Euler brain teaser) covers a different set of skills then something like making a wiki using werkzeug and AJAX, or focusing on TDD technique with bowling scores.

    As long as you have a focus on what skill you're trying to practice and the problem offers enough opportunity to practice that skill I think it makes a good Kata.

  2. I think one definition of a good kata is one which takes you outside your comfort zone, to stretch your abilities.

    I think we will continue to see more katas, Dave Thomas came to the idea while working on an algorithm and trying many different types of approaches. So software craftsman will continue to stumble upon these katas (typically within their problem domain) and hopefully publish their findings.

    I try to point this out to fellow co-workers when they get caught up on something for a period of time unexpectedly .. hmmm, is there a code kata in there?

  3. Great collection
    I have tried to do the same : http://tddkatas.codeplex.com/