Jeremy Miller believes that among the various beneficial and important qualities a codebase can have, the single most important quality of code is maintainability. I totally agree, having spent many hours maintaining legacy code written years ago as well as code I wrote a week ago.
As soon as a line of code is typed on the screen, it becomes legacy. You are now maintaining that code.
Enterprise software systems change. Business rules change, technology platforms change, third party dependencies are upgraded. ...
Enterprise systems typically aren’t replaced because they stop working. The end of life cycle for an application or system is often brought about because the system has become too difficult, risky, or expensive to modify to keep up with evolving needs.
According to Robert L. Glass in Facts and Fallacies of Software Engineering, research shows that maintenance typically consumes from 40 to 80 percent of software costs, typically making it the dominant life cycle phase of a software project.
Fortunately, Jeremy has your back. He’s written a multi-part treatise/manifesto on writing maintainable code. Some of the posts are a bit longer than your typical skim it while reading blogs during a compile entry, but are well worth reading.
Print them out, sit back with a fine glass of scotch, and savor the excellent knowledge he imparts.
I look forward to the next post in the series.