Fear driven development - Thu, Jun 23, 2022
Fear driven developmentTakeovers of legacy code have been among the most challenging parts of my software engineer career. And the first steps when having to further develop / refactor such code is to write tons of unit tests as Martin Fowler suggests:
“If you want to refactor, the essential precondition is having solid tests.”
(Refactoring, Martin Fowler)
A good strategy is to start with tests for the code that is to be changed and it’s nearest neighbors. That way you can gradually increase the test coverage.
Coming back to the original quote, it is normally not so much fear that drives me or that I have, but rather frustration from the lack of understanding why the code has been written like that.
That’s actually no surprise since in long lasting projects the “whys’s” and reasons tend to be forgotten over time especially when developers come and go.
When being frustrated, I sometimes recollect another famous quote which eases these feelings:
“The problem with quick and dirty…is that dirty remains long after quick has been forgotten.”
(Software Project Survival Guide, Steve C McConnell)
P.S.:Click here if you want to kno where the image above comes from