With Bill Gates on the way out, Microsoft's new chief software architect, Ray Ozzie, has big shoes to fill and an even bigger operating system to manage. Windows XP is in the neighborhood of 50 million lines of programming code, and Windows Vista will push that number higher by millions. The time is coming for Microsoft to reverse direction and pare back its mother lode of code.As a point of reference, Windows NT 3.1 was about 6 million lines of code back in 1993, according to Wikipedia, which cites Andrew Tanenbaum's book Modern Operating Systems as its source. Windows NT 3.5 grew to 10 million lines, NT 4.0 to 16 million lines, Windows 2000 to 29 million lines, and Windows XP to 40 million lines, according to those sources. I'm using 50 million lines of code in XP as my point of reference because that's the number I've heard in my own reporting. Somewhere between 40 million and 50 million is probably a good bet.
Windows' code accumulation can be explained in a few words: new features and backwards compatibility. Windows keeps growing because Microsoft is constantly adding to it, yet loathe to remove anything that might break app compatibility from one version to another. Customers wouldn't like that, and Microsoft knows it. Thus, Windows keeps swelling like a tick on an x86 processor.
Windows could stay on this path of code bloat, but I'm not alone in thinking that Ray Ozzie will try to put Windows on a diet. In the emerging world of software-as-a-service--where Microsoft needs desperately to be successful--bigger isn't better. And there are other reasons to scale back the size of Windows: old code tends to be less secure; Microsoft wants to sell stripped-down versions of Windows in emerging markets; and regulators keep giving Microsoft noogies for its inability to remove features (think browsers and media players) at the drop of a gavel.
So Ray Ozzie may try to get Windows to do more with less code. And he will do that, in part, by architecting Windows to be more modular in construction, and partly by removing some of the old code that's built up over the years.
What about backwards compatibility? That's the billion-dollar question. The benefits of breaking with the past may finally outweigh costs. Ray Ozzie shouldn't spend too much time staring into the rearview mirror of Windows' legacy. Navigating the rough road ahead will take all his attention.