Originally performed in front of a live audience at the Go Open 2011 / Communities in Action event in Oslo.
A code kata is a simple exercise used to sharpen programming skills. You only actually practice problem solving the very first time you perform the kata. Then you repeat, and repeat again. And again. The objective of the exercise is to practice speed, technique and tools.
(Run it in fullscreen to see the code more clearly)
Note: I use testdriven development through most of the process. Toward the end I drop the unit testing when I finish the visuals and gameplay logic. I could drive the whole thing with unit tests but opted for a more visually interesting ending. :)
You can look through the code at my github account. Each commit in the repo is separate exercise done from scratch.
Libraries and tools used: