It's occurred to me that we routinely practice Test Driven Development in the physical world, such as building houses.
Consider how we use a "test first" approach in construction:
Typically, if you want a hole in the wall 30 inches below the ceiling:
1. You take a ruler and make a mark on the wall 30" below the ceiling.
2. You drill a hole where the mark is.
3. If your hole is where the mark is/was, your test passes, otherwise, go to step 1.
Now consider what that would be like without doing it "test first":
1. You drill a hole in the wall.
2. You measure hole far from the ceiling the hole is.
3. If the hole is 30" from the ceiling, you win . Otherwise, go to step 1.