Kata Descriptions
These katas can be coded in any programming language you feel like. They are designed to be small interesting problems that don’t take too long to complete. Give yourself a timebox to work on it, perhaps 30-60 minutes. Use Test-Driven Development. When the time is up, reflect on what you learnt. The next time you work on that kata, start over from scratch.
Once you’ve done it a few times and you can solve the interesting problem without difficulty, you can begin learning other things from the kata. For example do it in another programming language, or do the tests in a different order, or use an unfamiliar testing tool.
- Audit everything
- Bank Account
- Bingo Refactoring Kata
- Birthday Greetings
- Calculate Stats
- Twelve Days of Christmas Song
- Closest To Zero
- Diamond
- Filename Range
- FizzBuzz
- Fractions
- Gilded Rose Refactoring Kata
- Invoice Standardization System INSTAVOICED
- Leap Years
- Lift
- Lift Button
- Mars Rover
- Martian Message
- Monty Hall
- Office Cleaning Robot
- Parse Command-Line Args
- Recently Used List
- RPG Combat
- Shopping Basket
- Strange Characters
- String Calculator
- Supermarket Receipt
- Ten Green Bottles Song
- Tennis
- Theatrical Players
- Tire Pressure
- Trip Service Kata
- Vending Machine Kata
- Word Wrap
- Yatzy