Why TDD?

Given we want to build something beautiful and complex.
When we build it, one step at a time.
Then we can experience our product manifest,
while we use our experience as a compass, to correct it.

Just like with do, when we put a jigsaw puzzle: one brick at a time.

This is what Test Driven Development is all about.

We can use it to learn programming, testing and build what ever we want – be it software or something completely else! (I use TDD to improve my house!)