Test with confidence, code with clarity

Your home for mastering Test-Driven Development through real-world katas and expert guidance.

TDD Buddy Logo
Latest Spec-Driven Development Is the Prose-Spec Drift Trap, Reborn

Kata Catalog

Practice TDD with a curated set of real-world katas, each with clear requirements and test cases.

Browse Katas

Guides & References

Learn best practices, naming conventions, and advanced TDD techniques from industry experts.

Explore Guides

Interactive Learning

Discover the TDD Gears model and learn how to apply TDD principles in real-world scenarios.

Learn More

Why TDD Matters More in the AI Era

The bar for "good tests" just moved. Agents made it non-optional.

  • Every prose spec the industry has built has drifted. Requirements documents, Gherkin feature files, wiki design docs, hand-edited OpenAPI. Four attempts, four failures with the same shape. SDD is the fifth turn.
  • A spec that cannot be invalidated by a failing test cannot be wrong. Unfalsifiability sounds like a strength when a specification is being sold. In the discipline of specification, it reads as uselessness.
  • The executable test is the only spec that cannot lie. It runs. It either holds or it does not. The team is forced into awareness of every divergence at the moment it happens, which is the whole game.
  • The disciplined test suite already did all of it. Domain-named scenarios are specs. Builders are the grammar. The suite is the version-controlled artifact. SDD reinvented the part that does not work.

Read the argument: Spec-Driven Development Is the Prose-Spec Drift Trap, Reborn

The Bar Moved

Old bar

Tests exist and pass. Good enough for humans with context.

New bar

Scenario names · builders · domain types · ubiquitous language. The test suite is the interface agents operate against.

TDD Gears

Shift gears based on context, not habit

TDD Gears model showing Low, Medium, High, and Reverse gears for test-driven development

Low Gear

New territory. Build context. Small steps. Learn the shape of the problem before solving it.

Medium Gear

Patterns emerge. Apply design principles. Let the tests guide you toward better abstractions.

High Gear

Known patterns. Follow existing architecture. Move fast because the structure is already proven.

Reverse Gear

Wrong direction. Back up. Delete the test. Try a different approach. This isn't failure — it's steering.