Test driven development is both loved and loathed by software engineers everywhere. It’s a complicated relationship. While the benefits of TDD are well established, programmers are human, and the human mind is reluctant to associate non visible progress with perceived progress.
However, saying “I’ll get this done faster if I don’t write tests” is like saying “I’ll get to china faster by going in a straight line.” It’s a great sentiment if you’re willing to dig through a lot of rock. The fact is that writing tests might seem like taking a detour, but they also show you an easier path to where you want to go.
The first benefit of TDD is something almost intangible. Writing tests forces you to think about what you want to do. It forces you to plan, to design, and to define in your own mind what needs to be done. This…
View original post 166 more words