There’s always been this conspiracy theory that Microsoft purposely made crappy operating systems over the years because then they could always sell us upgrades and patches. Besides being just way off base (we don’t pay for patches, for starters), it’s always had this one flaw – by the theory’s own admission, one day Microsoft would actually get it right and then they’d be screwed. It’s like the flaw in Al Bundy’s Bigger Idiot Theory: eventually you find the biggest idiot (and he called her Peg).

So, while I don’t think that was really Microsoft’s plan, one aspect of it has seemingly come true – they finally got the operating system right with Windows XP.

Windows XP was the first Windows consumer operating system from Microsoft that didn’t require a daily reboot. It was the first Windows that felt truly stable. Blue screens of death were more a function of driver conflict than random occurences (Windows 95 actually had a bug wherein the OS would crash 48.5 days into a session, no matter what happened). Even the most skeptical Windows users were convinced by SP2.

XP worked so well that Microsoft would not release another major operating system for over five years. This was a change from their usual procedure of every two to three years. One operating system, Windows ME (Millenium Edition) was a marketing stopgap release between Windows 98 and Windows XP – someone literally just decided at Microsoft that they needed a new operating system to sell and so they wound up delivering probably the least stable operating system in their history. This probably had something to do with the change in scheduling,

Windows XP being so popular and stable had one side effect – it made it much harder to be a Microsoft critic. No longer did you have Windows to kick around any more, at least with regards to stability. Security was still a concern and over five years, security patches were always a concern – in fact, installing the original Windows XP (no service packs) while connected to the Internet will result in a system infected by worms. However, a fully-patched copy of XP is the best operating system Microsoft has ever released.

Earlier this year, Microsoft delivered the XP followup, Windows Vista. The reviews on it are decidedly mixed. While it offers many new features, uses 3D acceleration for the desktop, and finally adopts a limited user account user model (technically XP had this but it was a joke), it comes at a performance hit and requires more resources like processing and RAM. It has DirectX 10, which is good news for gamers – except that few cards support it and almost no games need it yet (and those that do only use it for marginal effect).

So relatively few have upgraded to Vista. I know of people who have and have had no problems. I also know of people who’ve pitched it out entirely out of frustration. Myself, I used to dual-boot between XP and a Vista RC but I just bulldozed it when the RC expired. It is, overall, a nicer operating system than XP but I just haven’t felt the need to shell out the money for the Ultimate version (I’d have to get that one), especially when XP does everything I want it to.

It doesn’t help that even Microsoft has issues with Vista – the first version of Visual Studio 2005 SP1 wouldn’t work on Vista, and neither did the Zune software, both from Microsoft. Major vendors had problems making drivers for the OS – Nvidia was shipping cards with “Windows Vista Ready” stickers on the boxes while at the same time the drivers were causing major issues for users. Many people had older, unsupported peripherals whose manufacturer decided not to come out with a Vista driver for – they would prefer the customer buy a new device, one that they haven’t discontinued. Myself, if I were running Vista today, I would dual boot with XP for those times when you really need to use something that Vista won’t do. I think it would be different if my computer was completely for personal or entertainment use, but as it stands now I use it to make part of my living, so it’s more important that it use an OS that works, instead of a flashy one which might not work.

So many people prefer XP right now that many are rolling back. Dell is offering it six months into 2008. Microsoft is about to roll out XP SP3, something they had previously stated they would never do. Actually, they had to unveil SP2c, a service pack whose lone function over SP2 was that it allows for more product keys than SP2 did – implying that XP is still selling well.

One of the problems Microsoft has developed over the years is that they’ve pretty much tapped the entire market. Nowadays everyone has a PC already and so most people have a Microsoft OS already. I paid for XP back in 2001 and they haven’t seen another penny from me since on operating systems. If I were the type to buy my PC’s premade from Dell then every time I would buy a new PC, I’d also be buying a new OS license, at some price. If the Dell PC came with Vista, then I’d be buying a Vista license with the PC, but overall the amount of money that goes to Microsoft is unchanged (since Dell likely buys these things in the same bulk quantities/prices that they did with XP).

No, what Microsoft wants is for people like me who run XP (or people who bought a Dell PC in the last few years with XP) to go buy a Vista upgrade. This way, they get the money from the initial OS sale, as well as the money from the upgrade. Their stock price hasn’t budged in years since, while they always have been and always will be selling operating systems, they’re not selling more operating systems except for when people just buy more PC’s. So they want people to upgrade to Vista, but when people refuse and just stay on XP, it screws this plan up.

But really no one thinks that it’s the biggest problem in the world that everyone just prefers to stay on XP. Everyone will upgrade, eventually. There have always been stragglers. There are people to this day that refuse to upgrade to Windows XP and continue to run Windows 2000 (and are only now running into the issue of programs locking out 2000 for artificial reasons). I knew someone who ran Windows 98 until about 2005 – he would spend the LAN Party BSOD’ing and reinstalling his OS while the rest of us played.

Now, the real humor comes from people who somehow view the Vista disdain as an opportunity.

Yes, the Macintosh is a good system, especially now that it’s essentially a PC running an Apple OS. Double especially now that it can dual-boot Windows. But people aren’t going to switch to it. Yes, some will but not in a mass number. At some point you hit this tipping point and you really need to have a PC running Windows. You could run a Macintosh with its 10.5 “Leopard” operating system and use Safari or Firefox instead of IE for web browsing, and iLife or whatever Apple calls its Office competitor for word processing and email and so forth and it will work OK. But at some point you will need to run some Windows program that Parallels won’t run or a game or something and then you’ll have to boot into Windows to do it – at which point you might as well have saved some money and bought a Dell laptop anyway. Dell is still more cost effective (albeit marginally so these days) and offers more choice.

But really the Macintosh is just a symptom of the bigger problem – the bigger problem is the clued-out perception that computing is interchangeable. That you could go to your parents’ house and swap out their PC for one running Ubuntu and they wouldn’t notice. After all, they’d still have web, email, and office applications. What do they care, right?

They’d care. As soon as they get the idea to download or purchase some software from Wal-Mart they’d care. As soon as they buy the $50 scam HP printer from Target and it won’t work on Linux until they do a herculean amount of Googling and have to set up a root password to print off an email, they’d care. Linux zealots have been prognosticating the “year of Linux on the desktop!” for a decade now and they’ve gotten nowhere. Their rallying cry of “Ubuntu is getting better! Give it some more time!” goes hand in hand with “Vista has had a year, forget it, it’s too late! Move on!”

I go to Slashdot from time to time and it’s such a piece of shit site. The stores that make it to the main page are about as incendiary as they come. Just last week came a story titled Microsoft Disses Windows to Sell More Windows, poking fun at how Microsoft has to point out flaws in “older operating systems” (XP, in this case) to sell Vista. This from the community that produces a new Ubuntu every six months. And praises Apple for coming out with a marginal upgrade every 1.5-2 years and charging $129 for it.

The funniest thing about Slashdot is the posters to the forum threads attached to the stories. I’d love to see a venn diagram of them. You see a lot of people posting stuff like “Death to Micro$oft!” “Windows Sucks!” “Linux for Life!” “.NET Sucks!”, etc. Then you see a number of people saying “Why can’t I get a job?” “Why won’t anyone hire my Linux/PHP skills?” “Why do companies insist on running Microshaft software?!” I wonder how many of these people are the same people. Yes of course no one’s going to hire you – you spent all your time learning a bunch of free stuff that the marketplace isn’t interested in. Yes, Google runs almost 100% on Linux, but companies that do are few and far between. Yes, over half of the web servers in use in the world run on Apache and the LAMP stack (Linux, Apache, MySQL and PHP) but when you whittle it down to the Fortune 500 companies (the people who tend to employ others) it’s 80% Windows and IIS.

Apple actually makes their own web browser, called Safari. They unveiled it on the Macintosh in 2003. Earlier this year, they released a Windows port to coincide with the fact that the iPhone runs Safari and they need web developers on Windows to use it to develop apps. Within the first 24 hours, over 100 security vulnerabilities were found. While some of these vulnerabilities were a side-effect of how Windows handles issues (i.e., they didn’t exist on the Macintosh port), many of them were simply inherent to the browser itself (i.e., they were found to exist on the Macintosh port). Four of them were quite severe. Part of the reason they were found so quickly is because the software tools needed to discover them exist on Windows and not on the Macintosh (a side effect of the hacker community existing mainly on Windows), but part of the reason is because there’s just several orders of magnitude more users on Windows than on Macintosh. The security vulnerabilities languished undiscovered for four years simply because not enough Macintosh users were looking for them. To their credit, Apple released a patch for the most critical ones within 48 hours, and a flurry of patches since then.

If I were Microsoft, I’d be saying “It’s not so damn easy, is it?”

Apple has been experiencing similar problems across the board. They released Mac OS X 10.5 “Leopard” in October and many Macintosh users have experienced issues. Some have seen slowdowns, others have noticed less stability. A number of people have rolled back the upgrade. The whole affair sounds suspiciously like the XP versus Vista debacle. Apple shifted resources from this upgrade to the iPhone project, which was a lot more difficult than they had envisioned, and it shows.

It’s not so damn easy, is it?

Linux zealots proclaim conversions. They want people who are fed up with Windows to convert to Linux. They want people to convert from an operating system designed for the masses to an operating system designed for hardcore techies. This goes back to that interchangeable computing garbage. The notion that companies can take their existing codebase and products and throw them away to migrate to an operating system which will run nothing they’ve ever created and was instead written and concieved by a group of individuals, most of whom have never met in real life. Ever notice how Linux doesn’t do much if anything innovative? Ubuntu runs a lot like Windows, because they copied Windows. Microsoft has rooms full of people coming up with stuff like the Ribbon UI in Office 2007. The Open Source movement has people connected online trying to write a competitive web browser.

The Open Source and Linux movements have done good things but they lose sight of one simple fact (or are in denial): money makes things happen. More specifically, money makes things happen faster, and in the technology field this is vital. Let’s take a look at the Open Source Software (OSS) Movement’s big success stories:

Linux: A successful example of OSS working well. However, consider how slowly it has evolved. It was unveiled in 1991 and is still unusable for the average user to this day. My wife’s grandfather can figure out Windows 98, an OS that’s closing in on a decade now. But putting that aside, consider that Linux was born out of a group of individuals looking to clone UNIX, which was written by a commercial entity. In fact, that group of individuals (The GNU movement) was unable to complete anything until a plucky Swedish college kid wrote them a Kernel and finished the thing off. And consider that most of the innovations in Linux nowadays come from companies like IBM, Red Hat, and Canonical (the Ubuntu corporation). People with financial motivations, in other words.

Apache: Another success, and pretty much an organic one. I can’t really take anything away from them on this one. Same thing goes for MySQL. PHP is a poor man’s ASP clone (and not even ASP.NET, mere ASP) but hey, it’s free.

Firefox: An increasingly popular web browser, but it was based off of the Netscape 5 codebase (Netscape 5 was never formally released, it was essentially the maturation of the 4.x line). So, code written for commercial reasons. And this is after many years of a loose net of people working on it. Firefox is a good browser but it wouldn’t exist were it not for the commercial desires of another company. And it’s not even 100% standards compliant (that award will likey go to Opera 9.5).

OpenOffice: A solid product, but it suffers both from the fact that it, too, was originally derived from a commercial codebase (a German company which was swallowed up ages ago by Sun Microsystems) and the fact that it only offers a fraction of the features of Microsoft Office. Office products are in this difficult spot in that literally everyone in the world needs to use them and they have very diverse needs. True, the average user only ever employs 10% of Office’s features, but that 10% is different for everyone. Many a person has attempted to migrate themselves or their secretary to OpenOffice only to learn that some obscure feature that Office had is missing and is a complete deal breaker. Microsoft Office has pretty much hit feature saturation point and it took it twenty years or more to do so. OpenOffice has been out for five years. Not so damn easy is it?

Not that I’m 100% a Microsoft apologist, I call them out on the rug when they need to be. Like the bizarre decisions surrounding the Zune. Or the licensing policies for Vista. But they’re not stupid, or even necessarily evil. Yes, they have made some shady ethical business decisions in the past and I’m not excusing that. However, some of the things people blast them for are simple business decisions. Yes, of course they’re going to charge money for their operating system and software – they’re in this to make money. Yes, they’re going to cut Dell a volume discount – why not? Dell’s offering Linux PC’s now so it’s not like Microsoft’s not “allowing” them to do so or something. A lot of the people who blast Microsoft for the business decisions they make either have never worked in the business world or are in denial about how it works. If Apple had Microsoft’s power, they’d be worse. Apple hates buttons on mice for crying out loud and doesn’t trust you to change your own iPod battery.

But the people who think the world need to migrate away from Microsoft have it all wrong. Apple can’t make a secure web browser and the OSS movement can’t make anything happen without financially motivated people, which they’re against (look at how they’ve turned on Red Hat for doing just this). Moving entirely to a less mature option (and both are less mature in terms of experience with a critical mass of users) would be a huge step backwards. I’m not saying that other options can’t exist – I run Linux myself and hope to own a Macintosh one day – but this notion that one all-encompassing entity needs to be removed and replaced by another all-encompassing entity, just one you like better, is naive.

And this is why the world is seriously not going to move away from Microsoft technologies – because the real world is staffed by intelligent people who get this.