Since I started working, a common thing I have heard from agile coaches, senior developers, or consultants is the importance of practicing test-driven development (TDD). At my previous company, TDD was a far-off land. A utopia that if we just focused and adhered to its principles, we’d receive ease of development, safe refactoring, and engineering bliss to which every other XP practice paled in comparison.
I never got there.
At DICK’s Sporting Goods, the teams on which I’ve worked have practiced TDD religiously. It is no longer some fairyland, make-believe place. It’s our natural state of working. It’s as common…
The way we write code has changed over the years. In the 10+ years I’ve been writing code, I’ve followed different practices to “speed up development” or make code “more manageable” or “more readable”. It seems we as software engineers are always looking for ways to make our lives easier. We have to work in the code we write everyday, so why wouldn’t we want to make it easier, less frustrating, and less error-prone?