The joys of maintenance programming (2011)
The newbies cut their teeth debugging and fixing musty old code that still worked for the business. There's a rich vein of maintenance work out there that most programmers turn up their noses at, preferring ground-up development projects that neither they nor their client are well-suited for. Skilled programmers recognize what makes good code good, and what makes bad code bad, and working with lots of code will impart that skill. We all get involved with clients we don't want to work with. Maintenance work is shorter-term and the tasks are smaller, so you have more opportunities to terminate the relationship without breaking a contract or either side losing money. Programmers in ground-up development mainly work with each other. Maintenance programmers get to work with real users, often the people on the floor who work directly with the application and experience the bugs and where the software doesn't match the reality of their job.