The mainstream media has been all abuzz over the recently announced delayed release of Microsoft’s next operating system, code-named Vista. I’m not sure anybody was really surprised. Regardless, there is a really good article in the New York Times discussing how the once all-powerful burden of backwards-compatibility has become so huge that it is causing Microsoft to flounder.
[A] crucial reason Microsoft holds more than 90 percent of the PC operating system market is that the company strains to make sure software and hardware that ran on previous versions of Windows will also work on the new one - compatibility, in computing terms.
As a result, each new version of Windows carries the baggage of its past. As Windows has grown, the technical challenge has become increasingly daunting. Several thousand engineers have labored to build and test Windows Vista, a sprawling, complex software construction project with 50 million lines of code, or more than 40 percent larger than Windows XP.
Any geek can tell you there is usually a point were a project becomes too complex, where there are just one-too-many hacks and kludges, where the interest on the technical debt is just too compounded to pay, and where the best thing to do is break with the past and start over. The code just seems to smells funny.
For code monkeys like me, The Old New Thing is a veritable smorgasbord of different smells. Some of them are funny, most of them are interesting, and each one tells the tale of one small piece of baggage that Microsoft Windows carries. (Check out this post on invalidating the null window to see what I mean.) Individually, they don’t seem like much - but if you take a step back, it is clear that the baggage hold is too full. Up until now, Microsoft has been able to keep their ship afloat by throwing money and intelligence at the problem. For years, the solution was more complexity and more testing and still more testing. The returns are obviously diminishing. The water is rising, and when you’re taking on water, you need to toss some baggage.
As the NYT article mentions, Apple reached this point a few years back with OS9. Under Steve Jobs’ leadership, and with the help of some Free software, they were able to make a clean break, delivering a dynamic, modern, and all-around kickass operating system. Most people I know consider it the best desktop OS currently on the market.
Microsoft might still find a way to deliver Vista with all the backwards compatibility in place, but this will be the last time. The next time around, there won’t be any wiggle room left. They’ll need to christen a new flagship, or they’ll go down with the old one. It may be that the fast-maturing technology of virtualization may finally provide the tool that Microsoft can leverage to move to a new design without ruining their installed base, that’s my bet anyway, but only time will tell.