“TDD is best used when the requirements are clear.”

And I counter that TDD is best used to clarify the requirements.

Chicken, meet egg.

@jasongorman

I say,
"TDD is best used to ensure that the code you're writing does exactly what you intend for it to do. Nothing more. Nothing less."

But somehow some people think that a legitimate "objection" is, …

"But what about when I don't know what the code should do? I can't do TDD then!!!"

I think, …
"Buddy, if you have no idea even what *you* want the code to do, then PLEASE STOP!!! You're doing more harm than good. This will NOT work out well."