Corporate IT budgets have become paralyzed by their resistance to monolithic, all-or-nothing upgrades accompanied by painful services interruptions and unexpected cost overruns. Their obstinacy has been learned by hard experience, and is caused by the near ubiquitous use of Microsoft software in business. Microsoft has engineered its software to create just this interdependency. The result is the phenomenon of “cascading” upgrades, where the decision to upgrade a single Microsoft component triggers an avalanche of related upgrade requirements. Consider the following example:
A business wishes to upgrade its Exchange Server software in order to implement a virus protection protocol. In order to use the most current version of Exchange, its IT staff will also be required to upgrade their Windows NT server to Windows Server 2003. Because their server hardware is inadequate for Windows Server 2003, they will be required to purchase a new file server as well. Their backup software, designed for Windows NT, will not run on Windows Server 2003, and will also need to be upgraded or replaced. The (expensive) backup tape rotation device, purchased in 1998, has no driver support on Windows 2003, and, even though functioning perfectly, will have to be discarded and replaced with a new model that offers Windows 2003 driver support. A host of critical applications and related hardware will either require troubleshooting (DLL conflicts, etc.), upgrade, or replacement.
Finally, in order to successfully manage the simultaneous transition of every critical software and hardware component the business owns, the IT department will expend countless hours of planning and service, and mistakes are almost assured.
All of this to upgrade just one Microsoft application. A $2,000 email upgrade cascades into a $25,000 file server upgrade (including services and related upgrades).
You can’t blame customers who forgo desirable upgrade features out of fear of the true final cost to upgrade. The customers are making good business decisions -Ã¢â‚¬â€œ $2,000 is a good deal to achieve the new Exchange feature set, but $25,000 is not.
The majority of established consulting firms I spoke with while writing this article are still using Windows NT 4 as their server operating system. Most of them have access to free or low-cost Microsoft software. Why aren’t they on the most current versions of all Microsoft software? The answer is that the cost of the software is only a tiny fraction of the overall cost to upgrade the system. The cost in time, pain, and errors is also very high.
Our business customers have, in general, decided to upgrade their technology only when absolutely forced to do so, or when they can be sure that an incremental upgrade is both possible and painless.
The biggest problem with this situation is that it is driving everyone but Microsoft out of business. While Microsoft enjoys record profits, the rest of the industry is going out of business in droves. Information technology service providers could be described as self-destructive for installing Microsoft products -Ã¢â‚¬â€œ there is no profit margin for the installer and their customer becomes locked into the next stable configuration for years. The only winner is Microsoft, whose upgrade sales grow ever larger as customers are forced to upgrade everything whenever they upgrade anything.
Software developers are mistaken in continuing writing applications on Microsoft platforms using Microsoft development tools. Microsoft has made sure that if you write a program using the newest Microsoft toolkit, it will run well only on the current version of Windows. This is great if you’re selling to a brand-new business that owns all-new equipment, but if you’re selling to average customers that still use Windows 98, you’re going to have trouble closing the sale. Not only will your customers have to purchase your software’s license, but they’ll have to buy a lot of software from Microsoft at the same time in order to use it. Microsoft has figured out a way to get a piece of action whenever anyone else sells anything.
GNU/Linux offers a solution to this mess. Because there is no single dominant vendor, individual applications are designed to be easy to configure and run on a wide variety of versions and technology levels. And because applications are not inextricably wired into a specific version’s API, it is possible for users to upgrade a single application to the most current version without having to simultaneously upgrade everything else they own.
IT service professionals and small software publishers should consider changing their focus from Microsoft to GNU/Linux so they can help their customers move to an operating system platform that will enable customers to upgrade components singly and only when it makes sense to do so. The net result will be that we will all sell a lot more software and services, because customers will happily purchase new software and services in smaller bites when not forced into doing so monolithically.