Coding Horror: Exception-Driven Development
codinghorror.com
codinghorror.com
You need to include failure reporting tools with your app and c'est tout.
I disagree, however, with the reasoning of getting rid of TDD to become a firefighter developer on the basis of exception logs. That can shoot yourself in the foot when your need to ensure system isn't broken when new features arrive.
<off-topic> Am i the only one who is tired of getting almost every coding horror post on HN? </off-topic>
"While there are many other valid reasons to practice TDD, as a pure bug fixing mechanism it's always seemed far too much like premature optimization for my tastes."
That's news to me.
misunderstands TDD, and make a correct and vital, but fairly obvious point
I'll admit we don't practice TDD where I currently work, so I might be missing something. He even says that there are many other reasons for using TDD, and his criticism here is only towards it as a bug-fixing tool. Given that, how is this not a valid critique?
As far as catching bugs go, real users have no substitute. But you leverage the knowledge of real users by capturing their examples and creating automated tests from them. There's no sense in wearing out human resources by having them do the same things over and over.
TDD has nothing to do with fixing bugs, bugs are where the program differs from its specification, TDD is about creating that specification, in a way that can be tested.
All in all, I'd say the people who say that TDD isn't about fixing bugs are in violent agreement with Jeff.