Today, I learned, much to my surprise that I'd been re-orged once again. Mushroom city, I tell you, we're all mushrooms.

I've already gotten several emails from my family asking how the re-org is going to affect me.

And, as always, I've answered back "Not in the least". I've been here for 21.5 years, and lived through countless reorgs. In all that time, there has only been one or maybe two re-orgs that have affected what I do on a day-to-day basis. Microsoft just loves re-orgs, they're a fact of life here.

On the other hand, I'm pretty enthusiastic to be working under Steve Sinofsky, I remember when he started as a developer working on MFC, he and I have exchanged emails in the past, he's a pretty cool guy.

Btw, on the /. article (for those that click on the link), I have NO idea where that 60% thingy came from, as best as I can figure, the site that published the article pulled that information totally out of their hat. In addition, if you think about it, it's a nonsensical comment. According to the wikipediaa, Windows contains 40 million lines of code (I have no idea if that's accurate or not). But assuming that it is, and assuming that Vista had the same amount of code that XP had, that means that Microsoft would be re-writing 24 MILLION lines of code. In two months (Vista's only slipped for 2 months according to this press release). Now Microsoft programmers are good, but they aren't THAT good. Anyone who's ever worked on a project that involves more than a thousand or so lines of code understands how utterly laughable that is.

But that's why I read /., it gives me opportunities to spew Coke all over my monitor 🙂

PS: Before everyone asks, yes, I did get all the emails on Wednesday along with everyone else, it was just funnier to wait for the /. article.

That wikipedia page is kinda funny. According to it, "Windows NT 5.0", released in 2000, contains 20M lines of code, whereas "Windows 2000", released in 2001, contains 35M. ::scratches head::

In fact, all of the "years" are completely wrong. Windows 3.1 in 1990? No, 3.0 was 1990. 3.1 was 1991 or 1992 I think. "Windows NT" (no version) in 1995, Windows 95 in 1997, NT4 in 1998, and so on. The table is prefixed "According to Gary McGraw." Wonder where that guy got his info from? I’d hardly believe his LOC counts if he can’t even get the years right.

rodrigostrauss, that idea, taken to its natural conclusion (eliminate the direct involvement of editors, since they don’t seem to check accuracy or avoid duplicate submissions), is called digg. Of course, since a lot of people like Microsoft rumours, it’ll never help with stories like this.

On the other hand, the 60% number seems almost believable to a complete outsider if you take it as a total amount of code rewritten in Vista rather than the amount of work to do in the slippage: for example according to Channel 9 and Larry, the audio stack has been rewritten, as has the network stack and the printing subsystem. We know that the desktop composition stuff is quite different, and there’s DirectX 10 not to mention the other new technologies like WCF and WPF. It’s hard to figure out how much of the shell changed. There’s IE7. Even Minesweeper got an upgrade.

Who knows where most of the code is in Windows? The shell? The drivers? The base system? Besides, the destinction between rewritten and changed is suprisingly unclear to non-developers, and who can think of three major things that haven’t been changed? The most remarkable thing, quite frankly, is how little value this appears to have to end users, most of whom will only notice that it looks different.

It’s also worth noting that the Microsoft press release suggests Vista slipped two months behind /the announced release date/. Many people would be unconvinced if they were told that was the total slip from the internal estimates being used in, say, 2004. Wasn’t there a whole ‘reset’ thing when WinFS?

Since the majority of the article goes on to discuss Media Center, I’d say that, if ANYTHING, the 60% would be referring to the Media Center functionality. Given that even Paul Thurrott has criticized Vista’s Media Center, I’d find it more believable that that could be the case.

And it is probably the Media Center stuff that is the reasoning behind the announcement that only the "consumer" version of Vista will be delayed. Vista is still supposed to be available to businesses at the "original" November date. Why? Because businesses don’t need the Media Center stuff.

But that’s just my guess. And I’m no more likely to be right than the slashdot crowd.

I talk to the MCE guys every day (they’re on the first floor of this building), and as far as I know, they’re not rewriting anything.

It’s concievable that the 60% number came from an estimate of the code churn in Vista, it’s possible that 60% of the source files in Windows have changed during the 5 years that Vista has been under development.

I wonder why people consider this kind of reorg to be news. The only kind of organization that doesn’t undergo high frequency meaningless reorgs is a government — they often wait two years or more between meaningless reorgs.

The first Windows NT came out in 1993, it was Window NT 3.1. What came out in 1995 was Windows NT 3.51 (and there was 3.5 in 1994). Windows 3.1 was in 1993. Well, see for yourselves. But there never was Windows NT without a version number.

I hate those "xx% has been rewritten" garbage that goes around from time to time. I would not want any vendor to rewrite for rewrite’s sake … recompile yes, but source code does not "age". A rewrite has potential to loose a very valuable asset … years of bugfixes, and backwards compatibility. From Joel Spolsky:

On AppleInsider, they have the 60% story too, but on top of it they add :

"Vista – I wouldn’t buy it with someone else’s money. Then again what do I know, I’ve only been testing the dog for the last 2-3 yrs," one proclaimed employee wrote. Another put it less bluntly: "Folks, the only difference between Vista and prior releases (back to at least NT4/Windows 2000) is the size of the [::expletive::] up."

Apple is on the working group which released DWARF-3 spec in Jan 06 – not sure why Apple is still after STABS when the FSF GCC/GDB moved away towards DWARF a while ago.

I am surprised though to hear of the virtual address space exhaustion due to debugging symbols! Either GCC is mind numbingly terrible when doing STABS or the project doesn’t have any concept of modularization at all. All bigger C++ projects (especially dealing with UI) already have concept of doing everything via ‘plugins’. Only load them when they are required and optionally dump them when not required. It’s hard to understand one would hit the 2Gb limit just with Debug information – something horribly wrong.

My guess is that Windows XP SP3 will be popular in 2007 and MS has better ship the "administrator window to install software"-feature with it otherwise PC makers won’t sell much PCs this year with everyone waiting for the final Vista specs to buy.

Vista has a too long story to be deployed easily in the market without the new chief reassessing all features in the next 12 months and giving the industry a clear signal.

This is my external point of view as a user and developer after 18 years of Windows in a small ISV.