---
title: "Excellent TDD articles, and a Code Kata"
url: "https://osherove.com/blog/2003/10/6/excellent-tdd-articles-and-a-code-kata.md"
canonical: "https://osherove.com/blog/2003/10/6/excellent-tdd-articles-and-a-code-kata.html"
published: "2003-10-06T22:59:00"
updated: "2003-10-06T22:59:00"
tags: ["Cool Articles"]
author: "Roy Osherove"
description: "\"TANSTAAFL! - There Ain't No Such Thing As A Free Lunch.\" I liked this acronym so much I had to post it. I ran across it in one of a group of amazing articles that depict working in test driven development: Test Driven…"
usage: "Licensed under CC BY 4.0 — reuse, quote and adapt with attribution (Roy Osherove, link to the original page)."
license: "https://creativecommons.org/licenses/by/4.0/"
---

# Excellent TDD articles, and a Code Kata

By Roy Osherove October 6, 2003 In [Cool Articles](https://osherove.com/blog/category/cool-articles)

**Historical article** · Originally published October 6, 2003; technical details may be outdated.

"TANSTAAFL!  - There Ain't No Such Thing As A Free Lunch."

I liked this acronym so much I had to post it. I ran across it in one of a group of amazing articles that depict working in test driven development: [Test Driven Development - Craftsman series](http://www.objectmentor.com/resources/listArticles?key=topic&topic=Test%20Driven%20Development).These are actually all the same long article divided into smaller pieces. Be sure to read it from the start (bottom of the page) to get the full picture. Along the way they deal with the notions of test-first,test as documentations, testing multi threaded, mock objects and lots more.

Another nice (even though weird at times) idea is “Code Kata“s -

\[[From the site](http://www.pragprog.com/pragdave/Practices/Kata)\-\]

_A kata is an exercise in karate where you repeat a form many, many times, making little improvements in each. The intent behind code kata is similar. Each is a short exercise (perhaps 30 minutes to an hour long). Some involve programming, and can be coded in many different ways. Some are open ended, and involve thinking about the issues behind programming. These are unlikely to have a single correct answer. I add a new kata every week or so. Invest some time in your craft and try them._

I found it interesting, although I'm not sure how much practice I'll actually do of these, but it's really cool to find stuff you never even thought about - [Code Kata](http://www.pragprog.com/pragdave/Practices/Kata)

Both of these links were picked up in the win-tech\_off\_topic mailing list during a discussion of how to survive ever changing project feature requests.

## More in Cool Articles

[All posts in Cool Articles](https://osherove.com/blog/category/cool-articles)

- Oct 15, 2003

    ### [\[Article\] on MSDNAA: Creating a Generic Site-To-Rss Tool](https://osherove.com/blog/2003/10/15/article-on-msdnaa-creating-a-generic-site-to-rss-tool.html)

- Oct 8, 2003

    ### [Describing and evaluating API usability at Microsoft](https://osherove.com/blog/2003/10/8/describing-and-evaluating-api-usability-at-microsoft.html)

- Oct 6, 2003

    ### [Getting a focus on performance - some new pages](https://osherove.com/blog/2003/10/6/getting-a-focus-on-performance-some-new-pages.html)

- Oct 6, 2003

    ### [The "Don box" of windows installer?](https://osherove.com/blog/2003/10/6/the-quotdon-boxquot-of-windows-installer.html)


---

## About the author

**Roy Osherove**: Senior Solutions Architect at AWS working on AI for production and AI-driven development; author of The Art of Unit Testing and Elastic Leadership, with about 20 years of consulting and training on unit testing, TDD, team leadership and continuous delivery.

### Sites

- [RobotPaper](https://robotpaper.ai/): This blog: AI patterns and anti-patterns, AI and coding agents, and engineering leadership.
- [osherove.com](https://osherove.com): Roy's personal site. Author of The Art of Unit Testing and Elastic Leadership; consulting and training on unit testing, TDD, team leadership and continuous delivery, plus about 20 years of blog posts.
- [The Art of Unit Testing](https://www.artofunittesting.com): The Art of Unit Testing, 3rd Edition (Manning): readable, maintainable, trustworthy unit tests, plus TDD workshops in C#, JavaScript, Java and Kotlin.
- [5whys.com](https://www.5whys.com): Roy's writing on software team leadership: self-organizing teams, surviving chaos, learning mode and the Elastic Leadership model.
- [Pipeline Driven](https://pipelinedriven.org): Continuous delivery and DevOps practices: build patterns, pipeline-friendly testing, DevOps metrics and enterprise DevOps.
- [Elastic Leadership](https://www.elasticleadership.com): Elastic Leadership, Roy's framework for software team leaders (survival, learning and self-organizing modes).

### Social

- X: https://x.com/royosherove
- LinkedIn: https://www.linkedin.com/in/osherove/

### Contact

- Contact form: https://forms.gle/jQSx5KoXvrVA1JCK7

### License

Licensed under CC BY 4.0 — reuse, quote and adapt with attribution (Roy Osherove, link to the original page). License: https://creativecommons.org/licenses/by/4.0/
