With test-driven development being promoted as one thing that can help encourage better coding, most developers are looking into its use and how it can help. Paul Jones takes an opposite approach, though, and looks at how it could cause "ravioli code" in an application.
I know that test-first and test-driven development (TDD) are popular methodologies these days, but something about those processes has always met with a level of mental resistance from me. Even though it sounds good in theory, I have been intuitively wary of the "test-first" mentality for some reason. My own approach is closer "remember to code so you can test it later" and then "test-last" after the API is mostly stable.
He includes quotes from Slashdot comment quotes from AuMatar and dkf. Be sure to check out the comments on the post (17 of them at the time of this posting) for some opinions from others about test-driven development and how it can affect your code.
Blogs also mentioning this discussion: