Some of you may remember my shock and horror at Jeff Atwood and Joel Spolsky’s statements in Episode 38 of the Stack Overflow podcast.  Aside from insulting Uncle Bob, a guy who is a heavy-weight in the world of software engineering, they made several asinine statements about software testing and code quality.  After some back-and-forth blogging, the exchange culminated in Episode 41 of Stack Overflow.  Fortunately, Jeff and Joel somewhat redeemed themselves.  Joel apologized for some of his comments, and Joel and Jeff gave Uncle Bob a chance to explain the SOLID principles and why they are valuable.  I’m still not sure that Joel truly understands how to do software testing correctly, but at least he listened. 

While the discussion was enlightening, I think the most interesting thing to come out of Episode 41 was the reader questions/comments.  It was neat to see how clueless some developers are (the guy who claimed that you should only unit test things that take two numbers as input and return a number as output) compared to how enlightened others are (the guy who pointed out that a big benefit of test-driven development is improved API design).  I wholeheartedly agree with the later statement: test-driven development is as much about software design as it is about testing.  I’m glad other people are picking up on that…