“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.


Leave a Comment




  • Windows Live Writer isn’t bad Until recently, the bulk of my writing was done on a Mac using Ecto.  I was looking for a suitable publishing tool for Windows and was directed towards ...

  • Pet Peeve: Don’t email my password to me in plain text You know the drill. Signup for some random service on the internet Receive a confirmation email with your account information or Forget a password for some random service ...

  • Eclipise Memory Analyzer (MAT) I must say the Eclipse Memory Analyzer looks pretty slick. There is some pretty good material over on the developers blog. Lastly, there was a talk on it ...

  • Open-source Web-based Code Review Tool: Rietveld Guido van Rossum, of Python fame, has recently released a Django-based application that enables web-based code reviews... Rietveld. It supports any language and currently can hook into Subversion repositories. You ...

  • An implementation of the JVM in Javascript? Caught this over on JavaPosse Google Groups. Essentially, some bright fellows over in Japan have developed a bytecode->javascript compiler. There's a demo floating around that took a Tetris ...