Recently Uncle Bob talked about a manager who constantly choose short term hacking over anything else defending the decision with the idea that “business software is ugly.” Uncle Bob came up with a good argument to make:
One of the developers asked the question point blank: “What do you do when your managers tell you to make a mess?” I responded: “You don’t take it. Behave like a doctor who’s hospital administrator has just told him that hand-washing is too expensive, and he should stop doing it.”
For many developers trained through experience that speed is more important than quality it’s difficult to resist being asked to develop a feature faster. Hacking just adds debt and slows down future development. It’s the sort of thing where an application has gotten so complex and hairy that a developer new to the project can’t even be productive for a month or two. Just getting up to speed on how the beast has been hacked together wastes weeks of time.
Kudos to Uncle Bob for using a powerful analogy to make people think.