What’s wrong with Microsoft?

This is a serious question, not a rhetorical one. (I raised it tangentially in today’s Observer column.) It’s sparked by clear signs of stress in Redmond, with serious managerial restructuring and the announcement that Vista is going to be late — again. A few days ago, Steve Lohr and John Markoff asked the question in an article in the New York Times.

The company’s marathon effort to come up with the a new version of its desktop operating system, called Windows Vista, has repeatedly stalled. Last week, in the latest setback, Microsoft conceded that Vista would not be ready for consumers until January, missing the holiday sales season, to the chagrin of personal computer makers and electronics retailers — and those computer users eager to move up from Windows XP, a five-year-old product.

In those five years, Apple Computer has turned out four new versions of its Macintosh operating system, beating Microsoft to market with features that will be in Vista, like desktop search, advanced 3-D graphics and “widgets,” an array of small, single-purpose programs like news tickers, traffic reports and weather maps.

So what’s wrong with Microsoft? There is, after all, no shortage of smart software engineers working at the corporate campus in Redmond, Wash. The problem, it seems, is largely that Microsoft’s past success and its bundling strategy have become a weakness.

Lohr and Markoff say that the explanation is that Microsoft is hamstrung by its past success as a monopolist — that it has to make sure that its new operating system is “backwards compatible” with older versions of Microsoft software running on millions and millions of PCs.

I’m sure there’s something in this. But it’s not entirely convincing. After all, Apple has some of the same problems (albeit with a smaller consumer base and a more uniform hardware platform). So it was interesting to read Eric Raymond’s comment on the NYT article. He says that the authors have described only symptoms, not the underlying problem.

Closed-source software development has a scaling limit, a maximum complexity above which it collapses under its own weight.

Microsoft hit this wall six years ago, arguably longer; it’s why they’ve had to cancel several strategic projects in favor of superficial patches on the same old codebase. But it’s not a Microsoft-specific problem, just one that’s hitting them the worst because they’re the largest closed-source developer in existence. Management changes won’t address it any more than reshuffling the deck chairs could have kept the Titanic from sinking.

Apple has been able to ship four new versions in the last five years because its OS core is open-source code. Linux, entirely open-source, has bucketed along even faster. Open source evades the scaling limit by decentralizing development, replacing top-heavy monoliths with loosely-coupled peer networks at both the level of the code itself and the organizations that produce it.

You finger backward compatibility as a millstone around Microsoft’s neck, but experience with Linux and other open-source operating systems suggests this is not the real problem. Over the same six-year period Linux has maintained backwards binary compatibility as good as (arguably better than) that of Windows without bloating.

Microsoft’s problems cannot be fixed — indeed, they are doomed to get progressively worse — as long as they’re stuck to a development model premised on centralization, hierarchical control, and secrecy. Open-source operating systems will continue to gain at their expense for many of the same reasons free markets outcompeted centrally-planned economies.

The interesting question is whether we will ever see a Microsoft equivalent of glasnost and perestroika.