Why clean code is not the norm?
Why clean code is still the exception and not the norm? An intriguing question I read recently. Most of the answers are so human but also so wrong. It's them! The project managers, the junior developers...
Project managers care only about delivering more and more features, while they don't even understand what technical debt is, not to mention clean code. At the same time, "the amount of new developers doubles every five years", they don't learn how to code in a clean way and obviously there cannot be enough senior developers to mentor them.
These answers are so human but so wrong. Blaming others is never the answer. They lack any responsibility. We have to find a way to warn the stakeholders around us that if they continue like that they'd shoot themselves in the leg. Even as an individual contributor, we have to raise our voice. Sometimes we have to say no or other times we'll even have to step aside and look for another project. After all, if management doesn't trust you in how you do your job why would they keep you?
Clean code is hard. It requires serious effort and discipline. At the moment, it's easier to be lazy. You need a framework, you have to push yourself and others to be better, and to improve all the time. We have to drive these changes, we have to step up.
What we have to keep in mind is that the responsible are always us. Never them. We have to raise our voices, we have to explain and educate. And in case, we have to step aside. That's the only way towards more maintainable and reliable code bases. You think it's an exaggeration today, but tomorrow you might understand that it can be a matter of life and death, not just professional pride!
Sandor is a passionate software craftsman focusing on reducing maintenance costs by developing, applying and enforcing clean code standards. His other core activity is knowledge sharing both oral and written, within and outside of his employer. When not reading or writing, he spends most of his free time with his two children and his wife baking at home or travelling to new places.