Too Long; Didn't Read
Test Driven Development (TDD) is a good way to write software that is self-documented and maintainable. The benefits of TDD are real: you write better software. You have protection from breaking the world when new features are introduced. You avoid over-engineering. You don’t need TDD to write good software. It’s easy to say, but so hard to do! Here I will share my experience and what has worked for me in turning the benefit/cost ratio to my favour.