CodeKata
A very good way of gaining a better understanding of a programming language is to use it for some well defined tasks that won't take to long to do, while still exploring interesting features of the language that might vary substantially.
Dave Thomas, of the pragmatic programmers, has defined the code kata. These are a set of tasks that can be done to understand a programming language. This page will contain descriptions of all the kata, and also solutions to them. Anyone should feel free to add their own solution to any kata. This will help drive discussion and also show different styles.
The material on this and linked pages contain passages that has been copied from Dave Thomas' blog. You can find the original descriptions of Code Kata here: [1].
- KataOne - Supermarket pricing
- KataTwo - Karate Chop
- KataThree - How Big, How Fast?
- KataFour - Data Munging
- KataFive - Bloom Filters
- KataSix - Anagrams
- KataSeven - Reviewing
- KataEight - Objectives
- KataNine - Checkout
- KataTen - Hash vs Class
- KataEleven - Sorting it Out
- KataTwelve - Best Sellers
- KataThirteen - Counting Lines
- KataFourteen - Trigrams
- KataFifteen - Playing with Bits
- KataSixteen - Business Rules
- KataSeventeen - More Business Rules
- KataEighteen - Dependencies
- KataNineteen - Word Chains
- KataTwenty - Klondike
- KataTwentyOne - Simple Lists