Do old applications lead to train wrecks?
I don't mean literal train wrecks… sorry, I suppose that's a rather tasteless metaphor at the moment. But it's the one used in this Silicon.com article, which may or may not have been quoting Gartner analyst Scott Nelson. I haven't seen the Gartner report, nor does the article give it's name, only that it warns of the potential for "IT train wrecks" if certain warning signs aren't heeded.
I happen to think that's a rather obvious generality, but then the article goes on to give one (and only one… here, again, I'm unsure of whether to lay this at Gartner's feet or not) of these warning signs: spending big on hiring programmers to keep an old system running.
Of course, I would say it's equally intuitive to say that if you are spending big on any maintenance item it's probably a warning sign, but in this case, I don't think Gartner could have picked a worse example. Nelson's advice, according to the article, is that "Gartner said companies should focus on developing an application strategy that involves retiring older systems." This may be conventional wisdom, but as it happens, it's also pretty bad advice for avoiding train wrecks. Recent studies tend to support the point that it's more costly and more complex to develop new software than to maintain the old. More costly and more complex add up to more likely to run right off the rails, in my experience.
I would never advise against having an application strategy, but I would think long and hard about recommending that you center it around retiring older systems. I might say poorly performing systems, but the idea that you should evaluate a software system simply based on its age rather than its function is excessively simplistic and flatly ignorant of the costs of replacement for custom software in today's programming environment.
