Would you support this code?
29 Nov 2006“If I had to perform all future maintenance on this code, would I be happy?”
or
“Would Person X still be my friend if I left them to maintain this code?”
I’ve been thinking recently about motivating developers to write good (ie. maintainable) code.
We all know how easy it is to fire and forget… moving from project to project, leaving maintenance to the next guy. Why would I want to worry about nitty gritty things like unit tests or encapsulation when I can crank out dialogs and widgets day in and day out. Well… what if new development stopped and all that was left was maintenance or enhancement of the existing code base? It’d probably be a difficult transition.
In my opinion, it takes a seasoned (or perhaps dedicated is a better word) developer to realize the importance of quality and the implications of not considering maintainability in your designs. It’s one thing to recognize the importance of quality and another thing to actually make correct decisions to achieve it.
Some people have a knack for it, but not everyone. The difficult thing (yet critically important) is encouraging the development of these skills and ensuring that maintainability and quality don’t fall by the wayside.
That’s enough from me. Back to your regularly scheduled program.