Monday, September 08, 2003

Maintenance

Why is maintenance considered such a dirty word in our industry? On a lot of projects that I've been on, the finished product is thrown over a wire to a maintenance team. Now, this team has usually not been a part of any discussions or designs of the system that we are giving them. They have also been less experienced developers in the technology used in the making of the system. Why is this the norm in our industry? It blows my mind! I heard a comment from a developer the other morning in which they thought maintenance was even below them. I get this attitude a lot from developers on projects. Clearly, I don't think maintenance is below me and I don't think maintenance is something that should have the stigma that it has. Maintenance should be looked as an activity that is more important that the original development. In fact, I think the developers that wrote the original system should maintain it. Why? Well, if you write a piece of code and know that you are going to have to maintain it, I can bet you'll write the code differently. In fact, I bet you refactor and try to make things simpler. I even bet you'll write more tests so that you know you haven't broken anything from refactoring. I think it is the only true path to quality software. I've always wanted to ask this question in an interview, "Would you feel comfortable doing maintenance?" or this one, "Should you refactor code that is in maintenance?" I think a lot of people would be suprised by the answers that they would get. I know I would never hire a developer that thought maintenance was below them. I think the throwing the elephant over the fence that is the norm in our industry is wrong. Let's start the revolution and take over our code. I think developers that can maintain their own code is worth a million. But, that's just my opinion....=) Anyway, I was thinking about this morningand thought I'd post on it. If you want to read further, check out the book, "Software Craftmanship". The author relays the same message in a much more elegant way...=)

No comments: