Dave Thomas’s Code Kata’s in Swift

Wax on. Wax off.

This series shows my thought process and Swift solutions to Dave Thomas’s code katas (this is a work in progress).

In karate, a kata is a series of choreographed moves that you keep practicing to get good. Remember how Danielson was able to do this?

game time

Well, it was thousands of hours of this.

practice time

These solutions are optimized for readability, testability, and maintainability. My coding style emphasizes clarity over brevity in variable, type, and method names. I like to be able to go back to code I wrote 6 months ago and more or less understand what I was doing. I like to be able to refactor a method with confidence that I didn’t break anything.

Here’s the GitHub repo with all the completed exercises. I’d love to hear what you think about these approaches and am excited to discuss with you in the comments.

Katas

Kata04: Data Munging — Part 1, Part 2, Part 3

Kata18: Transitive Dependencies