Saturday, August 11, 2007

The future of Microsoft

With the release of iWork '08, Apple now has a competitive answer that lines up perfectly against Microsoft's two main monopolistic pillars: Windows and Office.

If Apple continues to gain installed-base share, it won't be too long before the automatic nature of the purchasing policies of business stop being quite so automatic. When that happens, the curve will get a nice knee in it and Apple will at the very least achieve a duopoly.

At that point, what does Microsoft do?

It took them 6 years to release Windows XP.2, aka Vista. And the world has not stopped yawning. Will Vista be the last monopoly Windows product?

I think everyone can agree that without the monopoly propping it up, Windows has nothing to recommend it. And it's interesting to note that the only competition left are Unix clones of one sort or another (in fact, MacOS X recently passed the Open Group's Unix certification, so it's safe to say that MacOS X is not just a Unix clone anymore - it IS Unix).

The Windows NT architecture is dead. It hasn't seen any significant development since Windows 2000. Microsoft's development cycles are doubling in length for each minor release (though if that trend continues, Vista's successor won't appear until 2019, so it's unlikely that it will). Microsoft has, in the past, stated that .Net was the way forward, but most apps for Windows still use the WIn32 api. In that sense, the applications barrier to entry is now working against Microsoft in exactly the same way it has worked against Java and all of the rest of its competitors.

No, it's clear that Microsoft's only alternative to move forward is to do what Apple did when it was in the same spot 10 years ago. Microsoft needs to throw away the underlying architecture and start over. And as it does so, it can provide a backwards compatibility layer for legacy Win32 applications.

So what should they choose?


Shocking? Not so much. I didn't say GNU/Linux. I don't suggest that Microsoft should adopt the Gnu LIBC implementation. Microsoft would likely make a clean-room reimplementation of the basic Unix library set. Why would they do that? Because they'll be falling back on their old bag of tricks: embrace, enhance, destroy. By making subtle, incompatible changes to the API, they can re-achieve platform lock-in. Doing this in the kernel will be virtually impossible because of the GPL. But the kernel is irrelevant. Make the libraries proprietary and Microsoft will realize the revenue stream anyway. See also: Mach and MacOS X.

What would Microsoft gain from this strategy? Well, assuming they didn't do it in an asinine way, they'd gain a lot of security improvements. They'd gain incalculable political points - they'd be able to claim that they were based on an "open" system, even though the most important bits would be closed. They'd pass off development and maintenance of their kernel to someone else, effectively, which would dramatically reduce their costs. And to top it all off, this is the exact same play that Apple made when they brought out OS X, so it's not a completely unprecedented move.

It would take some imagination for someone in the upper echelons to grasp this concept. It's not something I think Steve would be able to figure out without help. But maybe Bill still has enough imagination left.

No comments: