The Duct Tape Programmer
I enjoyed reading this piece and really benefit from hearing this sort of practical wisdom.<p>&gt; [Unit tests] sound great in principle. Given a leisurely development pace, that’s certainly the way to go. But when you’re looking at, ‘We’ve got to go from zero to done in six weeks,’ well, I can’t do that unless I cut something out. And what I’m going to cut out is the stuff that’s not absolutely critical. And unit tests are not critical. If there’s no unit test the customer isn’t going to complain about that.<p>I hear this sentiment being shared a lot by self-described pragmatists.  I don&#x27;t doubt that this individual made the right choice at the right time given the circumstances, and I certainly can&#x27;t claim to understand the unit test tools available to C programmers in the Netscape era.  But I do know that there is data to strongly suggest that unit testing increases velocity.  And I also know that if a module is cumbersome to test, it&#x27;s almost always a code smell, not an indictment of unit testing.<p>Anecdotally, I feel way less anxiety shipping production code that is well-tested.  That&#x27;s important, because the root of merge-induced anxiety is uncertainty about the impact on the end user - I&#x27;m sure the customers care about _that_.