Editor's note: Russ McGuire is the online director of Business Reform Magazine. Each issue of Business Reform features practical advice on operating successfully in business while glorifying God.
Headlines the past two weeks have been downright scary. "Computer Virus Closes Maryland MVA", "Big Bank Suffers Windows ATM Crash", and "Microsoft Worms Crash Ohio Nuke Plant, MD Trains" being just a few examples. These are the kinds of disasters we expected on January 1, 2000, not in mid-August 2003. At the root of the problem? Microsoft's over-selling of its bug-ridden software.
Advertisement - story continues below
I started my professional career writing software used by the U.S. Navy in launching missiles. I then moved briefly to the nuclear power industry, writing software tracking radiation exposure to plant workers. My next job was in telecom, writing software on the huge switches that route telephone calls over the global network. None of these systems could afford downtime or errors. None of them ran on PCs.
TRENDING: 'Dementia thing': DNC cut out anti-Trump mental joke for fear it would remind viewers of Biden
Of course, at the time, PCs were in their infancy, so of course they couldn't be trusted. But, when I was writing software for telephone switches, the programmable digital switch technology was less than 15 years old, and even at that time, the expected reliability of a switch was 99.999%. That is one second of downtime in 100,000 seconds, or roughly 5 minutes a year. Do you think the average Windows-based platform has more, or less than 5 minutes of downtime per year? Ok, you can stop laughing now. The Microsoft-based PC was introduced 22 years ago. You probably think it reasonable to expect it to have achieved some level of reliability by now. But you'd be thinking all wrong.
Advertisement - story continues below
You see, that huge digital switch that I worked on in the mid-1980s had a very complex architecture. To achieve 99.999% reliability, it had multiple processors operating completely in parallel. If one failed, it would immediately switch to the other without missing a beat and definitely without dropping a call. The first would recover and get in position to take over if the second one failed. That same redundancy was built into the entire architecture, ensuring that no single failure would bring the switch down. In fact, in my first year in the industry, a disgruntled Bell employee walked into a switch room in California with an automatic rifle and opened fire on the switch. The network didn't even notice. A number of components were destroyed, but their backups all picked up the slack. Except for some lost billing records on a damaged disk drive, there was absolutely no impact to operations.
But, that is a million dollar piece of equipment. We should never expect that kind of reliability from a simple PC.
Advertisement - story continues below
And that, my friends, is the problem.
Microsoft has been very aggressive in pushing Windows-based systems into as many places as possible. The company has convinced their customers that Windows-based servers are just as good at running critical operations as the mainframes, fault-tolerant servers, VAX servers, and UNIX servers that they have replaced. Undoubtedly, part of this sales pitch in the late 1990s was that these other systems would fail due to Y2K bugs. And yet today we are seeing the exact kind of problems that we feared more than 3 years ago. And I believe that we are seeing these problems, in part, because Microsoft marketing exploited Y2K terror to push an unreliable platform into places that absolutely require the highest levels of trusted computing.
Advertisement - story continues below
So, perhaps the problem isn't the Microsoft software, but rather the hardware architectures? Undoubtedly, many of us in business decided to swap out legacy servers for Windows-based architectures primarily based on the price of the hardware. We often thought, "so what, we'll buy two in case one fails. At this price, we could buy a dozen for less than our old solution." And Microsoft's sales channels encouraged that thinking.
But that logic is fundamentally flawed. You can't string together a few unreliable parts and think they will naturally be reliable, especially if the cores of those systems, by their nature, share the exact same flaws and vulnerabilities. You have to start with a reliable solution and then plan for the problems that will arise. Which gets us back to the software.
Advertisement - story continues below
The telephone switches I worked on cost a million dollars: in part because the market would bear that price; in part because the hardware was expensive; but mostly it cost that much because it was very expensive to write and, most importantly, to thoroughly test the software before sending it out into the real world. The software that we wrote was specialized for a single function. It only ran on one kind of system, the one my employer built. And it could only be sold to a few hundred companies around the world. Those customers were willing to pay a high price because they couldn't afford for the system to fail. And we spent about 2/3 of the entire software development process in software testing. We duplicated entire telephone networks and ran them through rigorous sets of regression tests to ensure that everything that used to work, still worked. We tested the software on every possible configuration of the hardware. We tested it under load. We tested it in extreme heat and extreme cold. We tested it under simulated network attacks. And the software failed. But we fixed it and we started the tests all over again from the very beginning.
By the time that product shipped, we were confident that it would work reliably. And it did. Occasionally there were minor hiccups after release, but nothing on the order of what we've seen from Microsoft products.
Advertisement - story continues below
So, perhaps the problem is not with Microsoft, but rather the Internet that has created a channel for hackers to continuously test the system for flaws to exploit?
In the mid-1980s, when I was working on telephony software, the hacker community didn't yet have much of an Internet to attack, so guess what they went after? The telephone network. There was already a vibrant community of "phone phreaks" and "crackers" looking for any way to beat the telephone system – from getting free long distance to bringing down switches. This was a known fact and part of the software design process. The software had to be designed, written, and of course, tested to eliminate all these vulnerabilities.
No, the fundamental problem is that the Windows system is not very reliable. Is it ok that my personal computer crashes a few times a week? Sure. I wish it wouldn't, but I can live with that. It's certainly not worth paying $50,000 for a computer to replace it that wouldn't crash. Is it ok that sometimes when it crashes I lose the article I was working on? Yeah, I guess so. Is it ok that sometimes I can't access my e-mail for a few hours, or maybe a couple of days? I guess I can survive.
So, Microsoft, I guess I don't mind if you go ahead and keep selling Windows as a personal computer operating system. Thankfully, I still have options if I don't want to buy it.
Is it ok that a bank network goes down? Is it ok that an entire state government agency gets shut down? Is it ok that trains stop running? Is it ok that a nuclear plant needs to shut down? All because of flaws in Microsoft's operating system?
I'll let you answer that one. What comes next?
Jesus warned us what happens to the house that is built on shifting sand instead of a solid (reliable) foundation. Our entire economy is increasingly being built on a foundation of software running on Microsoft operating systems. What is your business built on?
I shudder to think what I would see if I were to return to the missile control rooms or the nuclear power plants that once ran software I developed on systems designed from the ground up for total reliability.
Thinking back to Y2K, maybe this time we really do need to head for the hills, stockpile our canned goods, and build radiation shelters. And if that day comes, I pray for your sake that your life is built on the Solid Rock of which Jesus truly spoke.
Russ McGuire is Online Director for Business Reform. Prior to joining Business
Reform, Mr. McGuire spent over twenty years in technology industries, performing various roles from writing mission critical software for the nuclear power and defense industries to developing core business strategies in the telecom industry. Mr. McGuire is currently focused on helping businesspeople apply God's eternal truths to their real-world business challenges through Business Reform's online services. He can be reached at [email protected].