Ask Slashdot: Why Won't Companies Upgrade Old Software?
An anonymous reader writes "IE6. Several governments and big companies I know use software dependent on IE6. They won't upgrade, citing the expensive cost. Do you know what's more expensive than upgrading? Downgrading to the old system they had before they upgraded! You see, before computers, companies used to have room full of people manually calculating and processing stuff. It wasn't until the computer came that they could fire all those people and save a ton of money on their collective salaries. Now, my question is: what happened to that money they saved? Even a small portion of the money saved over the years could be used to upgrade ancient systems to modern standards. However, big organizations keep citing million-dollar upgrade costs as why they won't do it. Aren't they also losing money by working with inefficient, outdated systems?"
Downgrading to the old system they had before they upgraded!
Oh ok, Im glad you cleared that up. Say, can you write a proposal for how this will save oodles of money upgrading IE8 on 10000 machines to IE10, even tho it will brake the internal apps of about 15 different departments? Maybe you can also write 15 separate proposals for them to renew their contracts with the people who originally wrote the apps, and proposals for the cases where the original dev is long gone and we'll need to do a full replacement.
Boy, Im glad you cleared all that up.
This is an easy assumption to make, but it isn't always the truism you're making it out to be. Many software packages are highly specialized. There may only be a handful of options available that perform their function. Many of them may be difficult and far more expensive than you realize to upgrade, may have been abandoned, may have been ruined by "improvements" during upgrades, etc. When a piece of software is integral to a business, and there is no simple upgrade path, sometimes the cheapest (and *correct*) option is to stay on an "outdated" platform. Often, mitigating the issues with the old systems are cheaper than upgrading the software (if that is even possible).
Often, the people who may have made these tools are long gone (and if a tool is used for years, then the person was probably promoted out because it was a success). And very often they are either built in a short period of time for a specific task and don't scale well to newer systems, or they were built over a long period of time by many different people and there is little if any documentation as the goal was just to make it function and work.
It's not about laziness, it's about resources. Simply upgrading a web browser can render something non-functional. Basically when you make a major change like that, every inch of system, tools, and code needs to be tested, rewritten, and/or replaced. Since the company cannot just multiply it's IT budget by a factor of ten, or just close up shop for the time it takes to do all this so customers/clients are unaffected, it takes time.
Contrary to what some people try to claim, businesses aren't sticking with XP because they are lazy or stupid. Many people really don't understand the business aspect of this. It's not the same as a person upgrading one or two computers in their home.
Businesses have a very legitimate problem -- changing thousands (or tens of thousands) of computers to a new operating system is very expensive -- not just the cost of the OS itself but you have to pay people to do all the upgrading and deal with all the problems that come up. And after you spend all that money, what do you have? You have thousands of computers that look slightly different but work exactly the same as they did before. So what benefit did your company gain from spending all that money? This is a legitimate business concern.
Then there is the problem of software, and this is something that affects many companies both large and small. Many businesses run specialized software that is very expensive and, unfortunately, in many cases, very poorly written, meaning that it runs on Windows XP but often won't work on never versions of Windows. And so, in addition to all the expense involved in changing the OS, there is the additional expense of buying new versions of other software. And once again, once you've spend all that time, effort and money, what do you have? Computers that function exactly the same as they did before. There may be improvements "under the hood" but there is no obvious improvement in functionality.
What you really have here is an inherent conflict between the software companies and the companies use use the software. Software has matured to the point that 12 year old Windows XP, 10 year old Office 2003 and 8 year old Photoshop CS2 are still perfectly fine and able to do everything that most people need. But the software companies need to keep selling software, so they keep making changes to create "new" versions.
But businesses don't want "new". They want stability. They don't want to be constantly changing things because that disrupts their business and costs them a lot of money, with little or no benefit.
You're asking the wrong question. The correct question is: Why should they upgrade?
And if your answer doesn't involve making or saving money, you're going to get laughed out of your bosses office.
Gotta agree with you... you go through the process and somebody forgets to test some "little thing" that is no longer supported in the new version. If it's commercial software, that can leave you scrambling to work around the issue.
With custom software it's still a pain but you seldom run into something that absolutely can't be done, usually it's something takes awhile to program around and you impact business in the meantime. No matter how carefully you examine the requirements you will always miss something, it's the nature of the beast. If you rely on third party tools to plug into your IDE you may find the licensing has changed drastically and it may no longer be acceptable to use that widget or tool.
And let's not forget about bugs... you may run into something that is documented, works in testing, and when it hits production it just doesn't work when you have hundreds of people hitting it at once. Good design solves a lot of that but you can always have scenarios that can't be adequately tested before you roll it out. Parallel systems help with that but at some point you spend so much time and effort keeping everything in sync while you prepare for full deployment that it's easier to cut off the old system and just deal with the issues as quickly as you can.
OpenVMS
Cool and Unhackable, with documented uptimes over a decade on single servers. If the business really cares about uptime it's probably still using VMS. Of course the support staff was laid off because no one ever need to work on that system and it hasn't been rebooted since the big power outage 6 or 7 years ago.