Inside The Development of Windows NT
mrpuffypants writes "Winsupersite has a 3 part series this month about the history and development of Windows NT all the way up through Windows Server 2003. The author goes fairly in-depth describing how Windows is developed, managed, and how all 50 million+ lines are compiled daily. Part One covers the history of NT from its early days at Microsoft and Part Two discusses how the deployment of the forthcoming server version of Windows is coordinated daily." *shiver*
The stuffed mascot in the background looks an awful lot like someone else we know ;)
#!/bin/bash
You are not the customer.
This book, from around '95 I think, was a great read. I don't know how much overlapit has with the articles mentioned above, but I enjoyed it.
0 29 356717/103-3105313-8496655?vi=glance
http://www.amazon.com/exec/obidos/tg/detail/-/0
Also available at your local library!
There are 5000 developers on the Windows team generating over 50 million lines of code for Windows Server 2003. It's an enormous task, the biggest software engineering task ever attempted. There are no other software projects like this
Accordig to this, we should be getting them in a year or 5
I thought the initial NT "heavily borrowed" (MS tradition) from the Digital Equipment Corp (now part of HP) VAX operating system. Then it gradually incorporated parts of the evolving Windows/DOS OS.
GameTab - Game Reviews Database
0) CVS checkout the latest net stuff from freebsd.org
1) Look at code and scratch head until "A-ha!"; enlightenment.
2) Merge code into Windows source
3) go to 0
Trolling is a art,
We thought, 'How hard could it be to build an OS?' and scheduled 18 months to build NT. But we had forgotten about some of the important stuff--user mode, networking, and so on."
Either this means that the NT team were actually fairly clueless...or incredibly cocky. Either way, that seems like a pretty stupid thing to say.
It's just a big advertising piece about how NT is the greatest thing since sliced bread. Sure, it has some entertaining facts, but I'm still not buying it.
I see a lot of complaining in the article about how some architectures were not ready for NT on a timely basis (Intel i860, PowerPC), but I see no mention how they were so slow to bring NT to the Alpha. I recall that DEC actually ended up porting VMS to the Alpha because they were waiting on MS for their promised NT release. I'm a bit curious to hear from the developers about their perspective on that.
I've used both NT and VMS on the Alpha (as well as a Unix varient). NT is sooooo slow.
-Jennifer
"You compile it today."
"No way--*you* compile it!"
"No way! Hey--let's get Mikey, he'll compile *anything*!"
if !strcmp(vendor.name,"microsoft") {
int i,j;
while (ij = (2*i)/2+(3*i)/3+(4*i)/4+(5*i)/5+(6*i)/6
}
if (rand()}
A feeling of having made the same mistake before: Deja Foobar
It is interesting how incrementing each of the letters in VMS gives WNT. It is something similar to IBM and HAL.
"By late 1989, the NT group began growing. They added a formal networking team and expanded the security team beyond a single individual who, incidentally, had also been previously burdened by file system and localization development."
You mean they've got more than one guy working on security for Windows? Oh come on, who's gonna believe that?
I thought it was forged deep within Mt. Doom...
Engineers: "No problem, we'll release betas every year and you can sell them to the public for the price of a finished product."
Bill Gates: "Good idea. What do you think Steve?"
Steve Ballmer: "Developers, developers, developers, developers, developers, developers, developers, developers, developers, developers, developers, developers...*wheeze* *hack* *cough*...."
Bill Gates: "It's ideas like those that will make you CEO in 10 years."
Once again M$ is rewriting history. Now it is NT that killed OS/2. You guys in Redmond are such a joke.
...so full of shit?
To step around the topic for a second:
Paul Thurrott's SuperSite for Windows is dedicated to providing all of the information you need to evaluate Microsoft's current and upcoming Windows operating system technologies. These exciting products include Windows XP Service Pack 1 (SP1), Windows XP Media Center Edition (code-named Freestyle) Windows XP Tablet PC Edition, Windows Media 9 Series (code-named Corona), and Windows Server 2003, which will launch in April.
Sounds like it'll be an EXCITING, unbiased, hard hitting, honest review to me!
Maybe that's not the best example. But even when you read technical treatises on Microsoft technologies the authors always manage to pack in gushing, surrealist praise.
Wasn't there even a book? THE AWESOME POWER OF DIRECT3D? Amusingly enough, it was released several months after John Carmack and the rest of the gaming industry started bitching Microsoft out for pushing Direct3D over the clearly superior OpenGL.
I'd hate to be all conspiracy here, but damn it's either that or believing that all Microsoft reviewers/writers are really stupid.
"On the day I attended, one feature group had four of its bugs punted to Longhorn because they had failed to shown up for War Room. When someone argued that they should be given another day, Wanke simply said, "F#$% 'em. If it was that important, they would have been here. It's in Longhorn. Next bug."
Did one feature group have its *feature* postponed to longhorn or the *bug-fixes* postponed to longhorn ? hmmmmmm interesting.
"For Windows Server 2003, the War Room is run by Todd Wanke, who we eventually found to be an amazingly likeable guy. However, in the hour-long War Room sessions, Wanke rules with an iron fist" :)
"...compiling and linking it into the executable and other components that make up a Windows CD is a 12 to 13 hour process that is done every day of the week
So they rebuild Windows from scratch every day? Somebody send them a copy of make, please.
I read this book years ago when I was just out of college. I found it to be a very good read and an insightful on the life of Microsoft engineers. Here is the amazon link: http://www.amazon.com/exec/obidos/tg/detail/-/0029 356717/102-2673393-2852914?vi=glance
"We thought, 'How hard could it be to build an OS?' and scheduled 18 months to build NT. But we had forgotten about some of the important stuff--user mode, networking, and so on."
Too funny.
The opposite of progress is congress
...the War Room is run by Todd Wanke...
Oh dear. Poor Todd.
"We thought, 'How hard could it be to build an OS?' and scheduled 18 months to build NT. But we had forgotten about some of the important stuff--user mode, networking, and so on."
I think that sums-up Microsoft perfectly.
A programmer is a machine for converting coffee into code.
Passing IRP's (IO request packets) between drivers creates a much more well-defined interface that a bunch of globally namespaced functions just calling each other (like some other OSes we all know). It also lends itself to a layered driver model (Bus Driver, Physical Driver, Functional Driver) much better.
I really like the NT Kernel. What driver developers do with it isn't the kernel's fault.
Nothing is so smiple that it can't get screwed up.
Win NT being the backbone OS for 2K, XP and upcoming Longhorn needs a good reading to come up with the basics.
But memory management, driver support, file system mgmt and OS system utilities have changed way too much. And so I feel
IT WOULD BE MUCH MORE USEFUL/BETTER TO STUDY ABOUT THE BETTER FEATURES GOING INTO XP AND NEWER LINUX SYSTEMS.
Though the BSODs are still harrowing . .
I just got rid of an NT system at workplace and got a Compaq Evo with P4-1.8MHz and XP + 2K dual-boot.
To be honest, I don't see why they just don't hold these bug fixing meetings around the IIS guys desk :o)
Avantslash - View Slashdot cleanly on your mobile phone.
There are 5000 developers on the Windows team generating over 50 million lines of code for Windows Server 2003.
I think it's safe to say that they're most defniitely _NOT_ using VSS!
There is no longer anything that can be done with computers that is nontrivial and clearly legal. -- Paul Phillips
I guess this statement neatly sums up the attitude behind much of their corporate culture.
Remember a while back when Bill mandated a whole month of nothing but bug fixes? I find it highly unlikely that their people were able to go through 1.667 million lines of code per day (assuming a 30 day work month. I'm generous)..
Trolling is a art,
I have a copy of UnixWorld magazine circa 1993, all about Dave Cutler and the genesis of Windows NT.
According to the article, Cutler's only "vision" for windows NT was to 1) destroy Digital and 2) hurt UNIX. Nothing else. NT's foundation is built upon a personal vendetta.
And you know what? Davey failed at both. DEC died of their own incompetance. UNIX is alive and well, and GROWING despite NT and Dave Cutler's personal vendettas.
Sorry Dave, your drill seargant attitude isn't going to make UNIX go away.
. . . just naive and inexperienced.
/. GNU/Linux crowd do the same thing.
You know how to an 8-year-old boy, his dad's favorite sports team is the greatest thing in the world, able to turn lepers to supermodels and bath beads into geltabs? It's basically the same phenomenon.
It stops being amusing after a couple years reading the
Off topic but....
Give a man a fish, he owes you one fish.
Teach a man to fish, you give up your monopoly on fisheries.
My favorite...
Build a man a fire and he will be warm for the night. Set a man on fire and he will be warm for the rest of his life.
Be nice to people on the way up. You will meet them again on your way down!
And while you're right that this article is a very happy view of NT, it's interesting from the standpoint of how a project grows and new versioning control systems are added to handle such growth. Sure, the articles are heavy on fluff and light on details - but Microsoft is closed source. They're not going to give you much more. I honestly am not sure why you're so upset with these articles.
I hate liberals. If you are a liberal, do not reply.
"My god, it's full of crap!"
Malike Bamiyi wanted my assistance.
So in a couple of years we'll learn that:
You forgot the five thousand developers.
Each person would need to review 50,000,000/(5000*30) = ~333 lines of code per day. Not quite so intimidating.
--grendel drago
Laws do not persuade just because they threaten. --Seneca
Does anyone else design an OS in two weeks?
Why bother.
Daily Builds are for Wimps! And they only have one architecture to build for. Compare for example Mozilla's Tinderbox.
Write once, blue-screen anywhere. Is that the best you can come up with?! Even when faced with MS's abandonment of MIPS, PPC and Alpha with NT4? What about the Linux folks beating them to the punch with ia64 support? Come on, there are a hundred actual reasons why MS's porting strategy/porting support is a joke.
--grendel drago
Laws do not persuade just because they threaten. --Seneca
Shit sells, havn't you noticed.
Want to pull, talk shit.
Want to get good marks for essays, put lots of shit in them.
Want to get promoted, fill everything you write with lots of bonus shit.
Want to make it big in sales, talk shit.
Want to get a review published, well it better be full of shit.
Even specifications have lots of shit in them, there written in the style of SAT tests instead of 'start at one and go up incrementally in steps of one' you get four paragraphs of shit. No wander there are so many poor implementations of specs.
thank God the internet isn't a human right.
A year ago, Micro$oft claimed the future focus was security and stability. According to Part 2 of the article, the biggest issue now is the name change (from Windows .NET 2003 to Windows Server 2003). So, is this change for greater stability or something to do with marketing?
I sure hope it covers Internet Explorer, it is after all by law a part of that operating system...
...for not showing up to the goddamned meetings with his bugfixes.
-Looking for a job as a materials chemist or multivariat
Luckily for the world, the NT team likes to eat their own dog food. Unluckily, there isn't any indication that the team that released ME even booted it up before they shipped it.
Sure part of the problem is OEM's using crap hardware, but there isn't any excuse for windows me.
I find it amusing that they claim that the NT architecture is so wonderful because it's the exact same architecture that's been used since the original "N-Ten" design.
Right.
Translation: "The kernel is easily portable in 18 months".
All the app developers code to the Win32 layer. This used to include the windows GUI shell which they had to REWRITE for every platform, and that oftentimes requires rewrites by the app developers. (Yeah, that MS Word app "scales" real well to pocket PC's.. oh wait... I need MS Word - Pocket PC!)
This sig under construction. Please check back later.
I think that they were forgetting about that orher large-scale software engineering task, in which thousands (tens of thousands?) of people crunch out code and compile software every day.
What's that called?
Linux.
no they where lucky to get a testing/build team aka "black team" let alone security
the security policy is borrowed from unix if I had a penny every time I heard marketing say "it starts on the File system and works up, allowing your workgroup to see your files"
I would not be rich but it would make it worth it
regards
John Jones
explain the merits of the bug
Merits!?!?!?! it's a bug - and a bug in a userland app - it needs to be fixed.
I guess this explains why MS makes such shoddy products.. instead of disussing how to fix bugs, they stand around pontificating about the "merit" of them.
No, it isn't.
Is that what one's pathetic life is like in "the software factory"?
50,000,000 lines of code / 5,000 developers= 10,000 lines of code for each developer/
Spread that over a 3 year development cycle. Thats only 9.13242 lines of code a day per developer! How much are they getting paid? Sign me up!
I'd like to heard from their GUI Team, if you don't likw any other aspect of windows, it's pretty to use. It has a uniform look and feel. You can copy and paste between all different applications. I'm not trying to start another flame war or anything, but their GUI is second only to one (OSX of course)
I always wanted to know the story. There was a parallel story of what's going on all these years in linux-kernel mailing lists. Only this one was in a private mailing list in Redmond. The NT-kernel mailing list.
First, the parallel Linus decided to start clean and redo some parts of MS Dos to make NT. Actually, he needed a terminal emulation program to connect to the Microsoft server and watch the current value of the stocks. After about 6 months of work, he had something almost like a kernel!
Then he announced in the MS newsgroups. Than exited many other MS developers who started working on the new NT thing. After about two years, the parallel Alan Cox and Theodore ttys and the other fellows were proud to announce the first official release of Windows NT.
That was back in 1994.
It crashed a lot then, didn't provide copy-on-write and the IP networking was mostly broken.
But our fellows kept improving windows NT. Each day thousands of messages were exchanged in the NT-kernel mailing list. Flames, trolls, stupid questions by newbies, duplicate bug reports, installation questions, spam, new features, benchmarks.
It was a beautiful story.
In the first picture of part two (http://www.winsupersite.com/images/reviews/war_te am_85.jpg)
Look at who is sitting beside the monitor in the background!
In the same article, it mentions the changes with the graphics subsystem in NT 4.0. IIRC, NT 4.0 only supported i386 and Alpha, while NT 3.51 those, plus ppc and mips.
They moved the graphics subsystem into the kernel, and it ceased to be a microkernel. When pretty much everything lives in userland, portability is pretty easy. In fact, you can essentially write a new kernel (with the same external interfaces) for each architecture if need be. You also get neat features like being able to restart networking or the graphics system if they crash, without bringing down the system.
The problem that you have on i386 is that context switching is expensive (read: slow as a dog). On other platforms (sparc, ppc), it's not that big a deal.
Now, Windows doesn't look like a microkernel at all. And it's not at all portable, either. From what I understand, the Itanic port is giving them big headaches, and Intel is none-too-pleased about it.
A) Take a stand and tell your boss "It'll be ready when it's ready" (and clear your desk), or
B) Kludge something together and hope you get a chance to do it "properly" sometime before release?
Daily builds are not a good idea.
TWW
"Encyclopedia" is to "Wikipedia" what "Library" is to "Some people at a bus stop"
Looks like one of our guys is on the inside. Caught him on film. He's infiltrated the war team. Check him out, in the background by the TV...
See it here
I was an employee with Microsoft for sometime and was there when the RTM march was on for Windows XP and I can definitely tell you that war team during the last few weeks before escrow is a lot more than just inconsequential bugs. Its staggering how many bugs that are punted to the next release are actually rather serious in the grander scheme of things beyond the "ship windows" horizon. This is a very happy and flowery view Paul has given but it is not very accurate.
When someone argued that they should be given another day, Wanke simply said, "F#$% 'em. If it was that important, they would have been here. It's in Longhorn. Next bug."
C#, J#, S#....now we have F#....shall we pronounce it "Fuck Sharp"?
that a pingvin I see? Man, I didnt know that Linus had spy's inside microsofts hq!
--
...or your stuff gets punted!
"Stop throwing the Constitution in my face, it's just a goddamned piece of paper!" - George W. Bush Nov. 2005
After reading this interesting, but somewhat cheerleading article, one thing struck me:
Microsoft has 10,000 programmers who must meet strick deadlines, secracy rules, and put up with hard ass project leaders in order to make NT. It requires ungodly amounts of investment and centralized leadership to incrementally improve the final product.
Linux also has thousands of programmers, but they contribute code in between downloading porn, drinking beer, eating pizza and playing online games. This is generally done on computers ranging from low end pentiums to state of the art servers, scattered all over the globe, for virtually free.
Then I compare how far each has come in the last 5 years.......
Perhaps MS needs to install a pizza oven and keg with tap in their war room.
Tequila: It's not just for breakfast anymore!
>"asshat" - AC
the term "asshat" was invented by the guys on the Kevin and Bean show on KROQ 106.7 in Los Angeles who are ACTUALLY funny and entertaining - unlike Mark and Brian who are still doing Elvis jokes.. still...
I believe, iirc, that the term "asshat" was actually conceived for the obvious asshat, Rick Dees.
When you learn the origin of asshat - its obvious but also insightful at the same time... kinda like making a laptop keyboard glow from below.
guns kill people like spoons make Rosie O'Donnell fat.
I love when people slam something as common that very few people were using at the time. At least they were honest in their silly (in retrospect) assumption they could complete the OS in 18 months.
MS didn't become the 800lb Gorilla by being stupid. They use every advantage possible. I'm not a MS fan by any stretch but I sure wish I'd put that $2000 i had in 1991 into msft.
Blanket statements are stupid, but we can make a few observations that show trends. Have you ever seen a pdksh develper argue with Korn that pdksh was "fully compatible" with the ksh? Nah, me either, but an M$ rep did. Ever see a kernel hacker say that all computers should run the Linux kernel? One or two might say that all computers should run free software, but there is nothing egotistical about that.
Of course there are a few things we can say about Windows developers in general too. Code Red, Sir Cam, "I Love you", and all the rest. Humiliation is a Microsoft thing and will be till they fundamentally alter their development model. Marketroid driven closed source software does not work.
DMCA, Hollings, Palladium. What might have sounded like paranoia is now common sense.
It's really interesting to see how Microsoft actually relate to their competitors. They wanted to run on PPC, but IBM messed them around. They wanted to work with Novell, but Novell weren't interested. Even Intel failed to deliver on the promise of i860.
Given that, is it any wonder that MS would rather do things "in house" than rely on third parties?
I laughed out loud over the assertion that the Win32 API is easy to work with. I guess you can get away with lying when you know your audience won't go and check.
Go get a complete listing of the API function reference sometime. It looks like 12 different groups of developers came with 12 different coding styles (few of which could be described as elegant; or even safe for that matter) and got in a fist-fight. They were all beat up and too tired to fix it at the end of the day, so they just shipped the mess that is Win32.
Wonder why they re-invented all the ANSI C functions. The new functions do the same things, but with different names.
NT was a great operating system until 1990, then it went to hell from there.
A. Penguin User
It was a great piece of software.
The only thing I DIDN'T like about it was that it only went up to Direct X 3 so it couldn't play modern video games.
So I switched to XP when it came out, but I was very happy with NT.
Thanks Bill!
PS - you owe me a house for this, ok?
It's Christmas everyday with BitTorrent.
Whoah, you should have set up the hyperlink there, dude. There might be a Mac user watching...
IIRC the NT4 retail CD shipped with MIPS, ix86, Alpha, and PowerPC. NT5/Win2K was developed on ix86 and Alpha, MIPS and PowerPC had poor sales - x86 had price Alpha had performance, but Alpha was dropped before it shipped. I'll have to look for an NT4 CD later to confirm the above recollection.
Dr. Watson will soon pay you a house call if you do. The memory management in MS operating systems is worse than anything IBM ever dreamed up for their mainframes.
Only the size of the Linux KERNEL is currently about 5 mln lines, while the size of the WHOLE Win NT is about 50 mln. lines. This includes the whole GUI, OLE/ActiveX/COM+/InternetExplorer/OpenGL/DirectX and so on shebang, and also a myriad of printer/camera/scanner/etc drivers included in the default install.
The size of the WinNT kernel is nowhere near the 5 mln lines of code, I believe it is well below 1 mln. lines.
The WinNT is also only compiled for Intel platform, so it does not include code for other platforms.
Is that you guys sit here an bitch, make fun of, and generally waste time talking about what MS and Bill Gates have done so wrong, yet he is the one with how many billion in the bank? Looks like your plan for riches and glory is off to a good start!
I used to be a MS fan but then I was brainwashed. Now I see the Light. Mac OS X pwns u.
... but I see no mention how they were so slow to bring NT to the Alpha
My recollection is that WinNT 3.1 for Alpha was available a few months after x86 and MIPS shipped. I was receiving beta CD for NT 3.1, I'll have to go scrounging in old dusty boxes.
So if I call Microsoft and ask for help with an NT4 bug they'll help me with it? Gee, I got the impression they'd just tell me to upgrade to the next version. Because that is the official fix for it. And let's not get into the fact that they're trying very hard to move to an all-subscription model with built-in forced upgrades.
Nope, no sig
Yeah, both started with something good and wholesome, and ended up with something psycopathic and dangerous!!!!
the preceding comment is my own and in no way reflects the opinion of the Joint Chiefs of Staff
build an entire career out of tongue-bathing Microsoft? Don't they already pay people for that?
Anyone who loves or hates any language, platform, or manufacturer, doesn't know what they're talking about.
That "goto" in line 3 prevents lines 4 and 5 from working:
4) ???
5) Profit!
(Not that Micro$oft needs anymore of that.)
I can't believe anyone, even on /., would dare call MS coders clueless or cocky. Have you seen the way OSS programmers strut around like a bunch of teenage boys on testosterone overload, dissing users, starting public flamewars, and not making any progress whatsoever in loosening MS's grip on the mainstream desktop market???
It's a room full of computer geeks, of course the penguin means linux! The softies probably stick pins in him or some other voodoo that has about as much chance of making Linux go away as they have of overcoming their marketroid bosses. Freedom works, closed source blows.
DMCA, Hollings, Palladium. What might have sounded like paranoia is now common sense.
Wanke said that the server team had already fixed all of the known security vulnerabilities. "We're very happy about security," he said. "It's fun to see where we are [with security]. I'm personally very impressed with the work that went into it, the fixes and the thought process. We all think it's very secure..."
Yes, just keep telling yourself that and eventually you'll believe it. Meanwhile, the rest of the security-conscious community will write things that are secure rather than things that they think are secure.
Why bother.
False Advertising. There is NO PART THREE on the website at all, please get your facts straight.
Thompson elaborated on the importance of NT's foundations. "Our core architecture is so solid, that we were able to take NT from 386-25's in 1990 to today's embedded devices, 64-way, 64-bit multiprocessor machines, and $1000 scale-out server blades. We've been able to deliver a whole array of services on it."
Remind me of some other OS
:wq
read something a little more descriptive of the winblows development process. Mark Lucovsky wrote this ppt presentation to share with the world why windows has "issues". paul's junk looks like its ready to go into third grade readers and whatnot. though i do like the colorful metaphors like "bowels of microsoft".
"You never want a serious crisis to go to waste." - Rahm Emanuel
Hmm. Not a life for me, thank you very much. I have a wife and daughter, and jealously guard my time with them. You can forget being called at at 3:00am to fix bugs, and you can forget being required to be in on Saturdays too.
Cheers,
Ian
after reading this I will make sure that I never work with this guy. He seems to value flash and features over software that works! Maybe he just is in the mindset of programming himself into a job.
Errr, would you please be my girlfriend?
"Our core architecture is so solid, that we were able to take NT from 386-25's in 1990 to today's embedded devices, 64-way, 64-bit multiprocessor machines, and $1000 scale-out server blades."
-David Thompson
Vice President
Windows Server Product Group
Reality:
Our architecture is so solid that a new virus for Windows gets written every day.
It only took 10 years to merge different variants of the Win32 API.
He, Thompson, let us know what you're smoking!
there's no place like ~
That mascot is probably reserved for voodoo rituals :-) Geek or not, it's still MS... :-)
The ENIAC Demo Competition
However, in the hour-long War Room sessions, Wanke rules with an iron fist,..
I'm not really a web designer, I just play one on the Internet.
Odd that to compile Solaris 2.6, you type 'make turncrank'.
> "NT 3.51 was a very unrewarding release," Thompson said, contrasting it with
> Daytona. "After Daytona was completed, we basically sat around for 9 months
> fixing bugs while we waited for IBM to finish the Power PC hardware. But
> because of this, NT 3.51 was a solid release, and our customers loved it."
I wonder why I think so bad about Microsoft products?!
This is the third plug for this book in this article already. Who's spamming /., and can we shoot them?
--R.J.
Electric-Escape.net
So how does this really compare?
If you concider the kernel, GNU and KDE | Gnome (either one w/o apps) I would think that there is as much to them.
I would also wonder about the big iron OS dev teams.
Also as with any huge corporate project you have to assume 1/2 of the 10,000 people are dead weight PHB types.
Unfortunately it only seems to be available in Amazon's zShops, or B&N's used & old stuff store.
The best thing I got out of this article was the in-depth war room description. It's good to know exactly how so many bugs get into Microsoft Software, and don't get taken out. It's also cool to know that there are indeed nightly builds of Windows.
This means that in the event Microsoft decides to be nice, they can publicize the bug database and the nightly build iso files along with the source code to people, and they can fix windows bugs. Especially the really big ones that this Wanke(r) guy doesn't think need fixing until the next version.
Of course, this will only happen when Lucifer soars upon a winged hog in the snowy August winds. But its nice to know that the same thing that OSS people do via bugzilla and cvs are the same things that MS does in its big ol' proprietary house.
The GeekNights podcast is going strong. Listen!
I think real world circumstances belie this stance. The reason MS decided to push the Windows API on NT instead of making it the new OS/2 was because the software industry was writing Windows apps, not OS/2 apps. They believed - correctly - that migration to the 32-bit platform would be more successful from a successful 16-bit API.
I remember prior to the divorce over this dispute that Gates was often in the illogical position of asserting that OS/2 was a natural migration path for Windows developers, when that was only true in the broadest terms, such as making your C program event-driven. But migration from Win16 to Win32 was more natural.
Anyway, Microsoft was right. Developers did migrate their Win16 programs to Win32 and the market success of both drew more developers and more users to Windows. OS/2 could have been considered a success if they had lesser expectations of it, but the market in general did not move to it, and even companies that did write OS/2 apps (Word Perfect, Lotus) didn't work very hard on them. I tried them all and they basically all sucked.
I am astounded at the sheer number of developers involved-- well, let me clarify that-- the number that are being paid, overseen, and managed by a single entity for this code. Clearly we know where all the money from those licenses is going, but it's structurally flawed: as software evolves, it will take an increasing number (linear? geometric? exponential?) of developers to build and maintain that OS. However, by trying to maintain them all under one roof, with one management structure, one 'political system' if you will, will always either make the process needlessly inefficient or horribly expensive.
I am reminded of the massive engineering projects the Soviets used to do just because they could-- it wouldn't make sense in terms of feeding their people or making their lives any more secure, but they did it because the central planners knew they could plan it.
This seems similar-- NT will become such an incredible beast that the bureaucracy to maintain it will suffocate it, or they'll start taking shortcuts.
davejenkins.com |
What is a branding issue bug?
Sorry, the answer is:
C) Your feature doesn't make it into the build tonight.
Believe me, at any large shop doing a big project, the last thing you want to do is break the build. I would rather miss a meeting than break the build...
- -
Are you an SF Fan? Are you a Tru-Fan?
This is a sickening PR fluff piece. It's like reading $cientology "literature"... filled with "Thanks to the modularity of the NT kernel"...
I'll probably lose some karma for this, but it's all praise and no objectivity!
Move along, nothing to read here.
I have no problem with your religion until you decide it's reason to deprive others of the truth.
ok
there are alot of modules in the winnt build have you seen the amount of drivers ?
the core is small but does not get you very much infact you cant even get a console without the debugger so it's all pretty meaningless
the NT kernel is a microkernel much like the mach kernel in MacOS 10.x and unlike the linux or BSD kernels conceptually
one of the nice things that I learnt was that they check it builds on alpha - with MS compilers
and x86-64 now that there is dev platform and not just an emulator - amd silly compiler
and IA64 - built with intel compilers
and another 64bit platform which they would not speak about (-;
regards
John Jones
BTW, my name is Michael so I get the reference (/em brushes side of nose in reference to The Sting).
Unlike some doomed attempts to make a "better" Windows clone *cough*Freedows*cough* that degenerated into a puff of vaporware, the fine people at ReactOS have been keeping their noses to the grindstone and quietly worked away at getting an NT clone working. It's still a long way from replacing NT, as this screenshot of the one and only GUI application shows.
But if you want a free and open look at Inside the development of [a] Windows NT [clone], ReactOS is a good place to look.
They've done a number of things right:
Did I mention they spend thankless hours coding?
Let's see if I've got this right:
"This late in the development process, bugs are often passed along, or "punted," to the next Windows release--Longhorn--if they're not sufficiently problematic."
"The atmosphere in War Room is intimidating, and I spent most of my time in the room, silent and almost cowering, praying that Wanke wouldn't turn his attention to me or my group.... The most virulent treatment, naturally, is saved for those foolish enough to blow off a War Room meeting. On the day I attended, one feature group had four of its bugs punted to Longhorn because they had failed to shown up for War Room. When someone argued that they should be given another day, Wanke simply said, "F#$% 'em. If it was that important, they would have been here. It's in Longhorn. Next bug."
So... in this macho atmosphere, reeking of testosterone... the punishment for not being that the bug meet is that... YOU DON'T HAVE TO FIX YOUR BUGS UNTIL THE NEXT MAJOR RELEASE?????????
Words fail me...
"How to Do Nothing," kids activities, back in print!
If they're really that fix-crazed, how come outlook has had the same bug (overly persistent and reappearing send/receive dialog box) for years now? I first got that bug on Outlook Express on Windows 95. Fast forward 5 years, and I have that bug on Outlook on Windows 2000.
Load of crap, I doubt anybody is spamming slashdot for a book this old.
:)
It is simply the BEST look at the insides and development of NT around. The article on Paul's site is dry and doesn't even remotely express the truth behind NT.
For example, ShowStopper reveils the amount of disgust the NT team (or at least Daves side) -really- felt towards Win16 compatability. The canned articles says how 'easy it was' and what a 'good idea' it was.
Show stopper explains how rejected it REALLY was from most of the team and how much of a complete and utter headache it was to implement the Windows 'personality'.
The articles linked are not bad when talking about the latest version of Windows, but it's very much preaching and definatly doesn't tell much about how NT started out and it's effect on Microsoft as a whole.
The whole GUI thing was actually pretty much a laugh to the DEC people Dave dragged over with him, and the practice of 'eating dogfood' at Microsoft was really first imposed by Dave himself. And there's intresting background on the IBM/MS OS/2 debacle (Windows NT was originally going to be OS/2 NT!) and how Windows very nearly didn't have anything approaching usable graphics until Michael Abrash himself came in with his 'new trick' that actually allowed NT to show graphics at a usable rate and was the first step to removing the console.
Anyway, I don't want to do a book review here, let's just say that the above articles are far too preachy, the book shows the REAL story and I recommend it. And I'm sure that's why the other three people have plugged it also
a militarist delight!
me? i'll take FILTHY HIPPIE PORN!
Actually, it really stands for "nice tits", but that's something they couldn't tell the marketing department.
The Grammar Nazi called -- he wants that word for his big collection of errors.
If it's going to break the build, ou don't check it in to the main branch for the daily build.
"For a successful technology, honesty must take precedence over public relations for nature cannot be fooled." -Feynman
Unfortunately, for various reasone, they didnt end up making Hardware Abstraction Layers (HALs, as they are called) for different OSs after a while, but the groundwork and ability to do so is still there. I would imagine the reason they dont make Alpha versions of current NT OSs is due to either legal difficulties in doing so, or because the support costs would outweigh the income gained.
Manipulate the moderator system! Mod someone as "overrated" today.
OK. But I'm taking full credit for "cumsnort" and "assweasel".
I made those two up when some cumsnorting assweasel almost rearended me on 80-94...
-- I wanna decide who lives and who dies - Crow T. Robot, MST3K
Your mother.
did anyone else see this? (right side of TV in background.) there is a spy in their midst!
There are no trolls. There are no trees out here.
You've been living in a cave, perhaps? ;-)
Mainframe/UNIX Bit Twiddler and long time Windows/Linux Hobbyist.
The Theorem Theorem: If If, Then Then.
Ahh, good ol' sed. I wonder if he used the Windows version, or if he booted up the Linux box? :-)
This just goes to show that even the biggest software developers have to deal with "simple" requests like name changes that are very inefficient uses of engineers time. I want to know what super-duper advanced bug system they use.
My beliefs do not require that you agree with them.
Microsoft's record of "innovation" has sunk to a new low -- now it looks like they are going to embrace-extend-exterminate Tux. These bozos can't even invent their own mascot...but then again, a furry, squishy bug (the animal most reminiscent of Windows, IMHO) isn't the most inspiring marketing tool.
Bet they claim they had a penguin for a mascot all along and it was those hippies, foreigners and un-American freaks that stole their idea and made Tux the mascot for that mean ole' Linux.
How typical.
wow a bunch of linux trolls going off on windows. I never saw this coming!
Don't you ignorant redneck geeks have a real job and a real girlfriend/wife?
Linux is nothing special, sorry its not. Windows isn't special either, but Linux is just a Unix clone, big deal.
When are you idiots going to grow up and talk about stuff that matters and not unix masturbation?
Its like a bunch of redneck geeks talking about the color of their shotgun. Get a life and a job and maybe you will find out that there are a lot more important things out there in the real world.
"I went out and handpicked the three best developers on the team and said, 'just go and fix it.' One developer fixed over 7,000 references to [Windows] .NET Server. Let's just say that there are people I trust, and people I don't trust. I told these guys, 'don't tell me what you're doing. Just do it.'"
When the drek hits the fan, everyone is CMM level 1. Heroes! LOL.
It's quite ironic that Todd Wanke is a complete wanker :-)
Oolite: Elite-like game. For Mac, Linux and Windows
I am sure we have all had this experience before
"We expect all of our customers to install the security fixes,"
Except for our own people, in the case of Slammer!
Fascism starts when the efficiency of the government becomes more important than the rights of the people.
I recall reading a Usenet post or two written by someone who had just loaded and ran Opera for the first time. It's similar to the behavior of people who get online with Linux for the first time.
They act like a dog that's gotten off a leash for the very first time.
They are soo, soo, sooooo liberated and free. Or something.
HAHAHAHAHA omg, that is TOO funny, -1 Flamebait. Well at least I was RIGHT! Nothing but a bunch of MS bashing retards in here, I have NO IDEA why people consider some of you to be immature. Throw a little medicine back your way and you flip
"The saddest words of mice and men, are not those which were, but should have been."
[evil bash]
Well, if you have demonic minions of the Beast working overtime working psionic circuitry, a daily build seems anything but impossible.
[end evil bash]
This space for rent.
"We should be able to reproduce that [build] three years in the future, using the various tools, compilers, and scripts we used at that time."
amazing... they figured out CVS, aren't they special.
The NT kernel was good. Then Microsoft moved the GUI into the kernel.
This is pretty much spot on, not flamebait.
To be fair to MS they had to do something to improve GUI performance in order to move NT onto worstations, and to a certain extent compete with other servers. NT3.51 was fine as a server, but painfull as a workstation. Win3.1 and later Win95 both provided much better user response. It is hard to sell your "high performance" OS when it feels slower then the old tech.
They say they are using a new source code control system with "acquired technology" , apparently because the previous version (which I'm assuming is SourceSafe) wasn't up to the task. I'd like more details please ... we are considering ditching a very old version of PVCS where I work. Bitkeeper won't do it, and CVS + Bugzilla isn't a solution.
The Russians have won. They have made the world a cesspool of distrust, greed, fear and hate.
(of the anti-trust case)
Microsoft is pushing awfully hard to sell their version of NT's history. The fact is, that even if someone was on Microsoft's payroll to tinker with some "new technology" since 1989, there was no NT product until 1996, when Windows NT 3.5 came out. It was a flop, because it still had the old Windows 3.1 GUI, and everyone was enarmoured with Windows 95's look and feel. Their official "NT 3.5" was actually just a bolted on netware client to windows for workgroups (16 bit.) NT 4.0 was just a GUI upgrade, but wasn't really usable for a couple of service packs. NT started having "server" functionality around 1997, and that was really just back office -- whose main feature was a network printer driver!
Yikes.
I figured someone here would post about MS recompiling 50 million lines of code every day.
Does this mean they update each program source every day? The kernel, as well as each of the dlls? It seems like overkill.
Or at least it seems like major code bloat. Perhaps it's too much in the OS itself.
Doesn't linux separate the file system from the user interface? Seems there has to be a better way than the way MS does it.
all brought down routinely by 5 line scripts :(
Maybe a half price bookstore will have an OS/2 kernel programming book. Unless you have any suggestions for web resources about OS/2 architecture.
Nothing is so smiple that it can't get screwed up.
I was interested, a frankly a bit bothered, by this:
"The source code control system we use now is new, because we really pushed the scale of the previous version with Windows 2000. Mark [Lucovsky] personally lead the development of the new system and introduced it post-2000."
The process described in the article depends heavily on branching and migrating changes between branches. Microsoft's version control product, Visual SourceSafe (VSS), has some serious and well known weaknesses in precisely those areas, which is why we are looking at a replacement.
VSS development has been minimal for years. Since Microsoft advertises that use the same development tools (Visual Studio, Visual C++, etc.) that they sell, I find it frustrating that for version control they've gone forward internally but left us VSS customers behind.
All that time/money/effort, and Windows is arguably as stable as linux has been for years. Microsoft and Windows is a scam, can you imagine if all of that time was invested into Linux. I just downloaded SP3 for my machine at work, and played around with the "set program access and defaults" tab they added, and it errored out like crazy on me. All of the fixes from windows update were security fixes, like 22 of them. For the last 5 years I have refused to buy Windows, and build my PCs from scratch, because I am sick of my money going to this large corporate scam called microsoft windoze!
I want my rights back. I was actually using them when our government stole them after 9/11.
Hmm... I didn't know I was a Redneck... maybe I should go buy some tobacca and start spitting in your eye... f'ing coward.
The truth of the matter is both OS's, *Nix and Windows, have their strengths and their weaknesses. You have to be able to identify how they affect your environment and work around them.
I like the article because I like to see what goes on behind the green curtain. I just wish Bill would let us see if it is a giant or a little person doing all the work.
Pa Ting!!!!
Cutler is probably a decent software engineer and manager, but his two major systems, NT and VMS are like MacDonald's food: it will make you less hungry and probably won't kill you (in the short term), but for good cuisine, or even good cooking, you need to go elsewhere.
Actually, step 3 is vulnerable to a buffer overflow and that gets you to step 4. (And we all now how that gets you to MS's profit. :-D )
--- I wish I could hear the soundtrack to my life. That way I'd know when to duck.
As a card carrying geek, I insist on being called a "pencil-necked geek", not a "redneck geek". I mean, what do you think would cause my neck to become red?
Even if it were 7000 different config files, a simple grep should take care of it. But even their help files should compile (or parse) a variable for seomthing like:
OS.Name, OS.Version
What I don't get is why it takes 10,000+ developers to develop an operating system. Granted, there are a few nifty utilities included, but it seems like a case of an awful lot of cooks.
For comparison, the Empire State Building took a little over a year and had at most 3,400 workers on the project at any one time.
Eric Sarjeant
eric[@]sarjeant.com
"..They wanted to work with Novell, but Novell weren't interested.."
You have this inverted. It would've been rather more insightful if you'd asked why people dont want to work with Micro$oft. Think stacker patent, DOS, Sendo, utility apps, etc etc etc etc. People who do joint ventures with MS wind up getting f**ked up the arse by them. This is why phone and embedded device manufacturers have the often expressed attitude "we'll work with anyone but M$".
Asking why no-one wants to work with M$ is a bit like Saddam asking "no-one wants to hang with me. Why is that?"
-he who laughs last, is a bit slow.
journal
Hmm, another 'assweasel' consumer? And here I thought that one was mine.
I can still however, lay claim to cuntburger, and jizzwaffle. Ho ho.
you can take the road that takes you to the stars...
#!/bin/bash
Line two:
#By compiling this program you agree to the following terms:
#1. Compilation is forbiden.
Well, it's true you know, even for those under the "shared source" program. Look, but don't touch. Who knows if what they share is anything other than a bill?
Friends don't help friends install M$ junk.
They have to eat their own dog food every day. It's compiled on some M$ encumbered x86 every night from scratch, regardless of changes made to the code. Other evidence of ritual self abuse at M$ include:
Friends don't help friends install M$ junk.
"We let people bring their kids in on Saturdays, it's a family day. There's no swearing allowed on Saturdays. But you still have to be there, and we still have to make a build."
.hta extensions? Where're the IIS guys? Not here? Fuck 'em. Punt it to longhorn. Shit is this saturday? er.. I mean to heck with them! Sorry little Timmy...!"
I can just see saturday war room meetings...
"IIS is doing *what* with the
What are you people blind?? That is not a penguin--it's a puffin.
Now we know why M$ can't tell the difference between a bug and a feature.
Friends don't help friends install M$ junk.
...They wanted to run on PPC, but IBM messed them around...
:-)
Apple wanted to run on PPC, but Motorola is messing them around -- but that didn't stop Apple!
(Sorry, couldn't help it.)
They admitted that 9 months of bug fixing was unusual and not likely to occur again. They don't like bug fixing and will do what they can to avoid it. It's urewarding, phththth-fit, that's one of the reasons they get a pay check, but bad attitude all around. If releasing something that works well is unrewarding to them, we now know why it does not work well. We also know what to make of the month long group hug M$ had a big PR fest about.
If they want personal satisfaction they should work for a company that does not claim to own all their ideas and use their time to write free software. Lots of fun and excitment there and you don't even have to drive to work.
Friends don't help friends install M$ junk.
So... in this macho atmosphere, reeking of testosterone... the punishment for not being that the bug meet is that... YOU DON'T HAVE TO FIX YOUR BUGS UNTIL THE NEXT MAJOR RELEASE?????????
It seems the MS developers consider it a punishment to ship a product with a bug in the parts they are responsible for, and you consider it a reward. What does that say about the MS developers, and what does that say about you?
... you're eating dog food! :-/
*rimshot*
I'm fairly sure that they use Perl from friends that have worked as coops/interns at MS. And from emails such as these.
How can this article be taken seriously when it has statements like:
"in the hour-long War Room sessions, Wanke rules with an iron fist"
...from One Tree a few years ago it was good for its time. They haven't really touched it too much since then.
I am very small, utmostly microscopic.
-Mark Lucovsky
Distinguished Engineer
Windows Server Architect
So would his (typeful distinguished) context be:
.CN=LucovskyM.OU=Engineer.OU=WindowsServer.OU=OS .O=Microsoft.C=US
?????
"A plan fiendishly clever in its intricacies"- Homer Simpson
As for IBM, I think it was Microsoft that dropped the ball on PPC support--NT for PPC had no applications to speak of and was essentially useless. And Intel didn't fail with the i860 to screw Microsoft, they just screwed up.
G. Pascal Zachary of the Wall Street Journal (maybe he isn't anymore, but was at one time) wrote a very good book back in the early to mid '90s called "Showstopper" that covered the very early development of Windows NT, starting with the Dave Cutler/Digital gang and going up to 3.1 or 3.5 if I recall correctly.
Read other people's messages before posting your own to avoid simply duplicating what has already been said.
you think that's funny?
I've personally seen a function that took a void * and an int. The int was an enumeration on one of several globally defined data types that the void * could possibly be.
Sure it's good - it was based on OS/2...interesting the article glosses over that a little...
I remember a couple of years ago in highschool where you were judged by the lines of code you wrote for a particular program... each line more than the teachers code, was -1 to you.
:
:-)
He actually thought he was a master in coding. Hell, I copied his program, but did not use a return after each semicolon...
So basicly, this
if(xy)
{
do this;
}else{
do that;
}
Looked like this:
if(xy){do this;}else{do that;}
Took him one hour before he figured that out..
So dont judge someone on the lines of code he wrote... you can write any program on only ONE line.
I guess you rather have billy boy's 2" dick up your
ass.............
Are you malicious or just ignorant? Obviously SAA was part of the picture, But IBM OS/2 also has interoperability with Unix and the Net ...
... If you haven't come to the conclusion that OS/2's technical marketing was a clusterfuck from day 1, something's wrong.
The question was if IBM malicious or just ignorant.
His facts are correct. IBM tried to bury the i386 because they were worried about their midrange. This torpedoed OS/2 1.x and gave the entire project a "Loser" reputation long before Win 3.1 even shipped.
IBM also heavly marketed OS/2 as part of a Mainframe integration strategy, with it's special "Extended Edition", etc. And you would be hardpressed to find any significant OS/2 deployment that wasn't in a IBM mainframe shop.
This gave customers the impression of lock-in and that their Unix and Novell machines were second-class citizens in IBM's world -- Which they were. Windows NT shipped out-of-box with TCP/IP, IPX/SPX, AppleTalk, DECNet, you name it. IBM OS/2 2.0 shipped out of box with jackshit, and then made you pay for NetBEUI and pay some more (a lot more) for TCP/IP.
Not to mention that IBM themselves FUDded the idea of OS/2 on non-PS/2 hardware
Now I suspect at this point you are going to mention something about Warp 4.0 and so on, but trust me, OS/2 was already dead in the grave by then even at IBM.
Business. Numbers. Money. People. Computer World.
Ever notice how all these windows sites feature the name of some sort of celebrity windows guru in their title? They're all kind of like a more subdued version of grc.com, only they're praising windows to the skies instead of pissing on it 24/7 like STEVE GIBSON, the foremost SECURITY EXPERT in the WHOLE INDUSTRY!!! Of course, one or two open source projects out there fall prey to this cult of personality bullshit, but I never understood how the all-wise all-knowing Mr. Gates expected his operating system to be taken seriously with all this rather ironic hoopla.
If you're really interested in learning more about windows, check out the articles here:
h tm l
http://www.sysinternals.com/ntw2k/information.s
Much higher information to hype ratio.
Coming soon: Part Three!
In Part Three of Windows Server 2003: The Road to Gold, available soon, we'll take a look at Windows testing.
So, the author's blind, then?
I'm not a perl programmer, but surely it must have an else statement and your code could be written like so: sub do_something { my $rtc = 1; if( $value != $correct_value ) { # clean up stuff } else $rtc = 0; return $rtc; }
Geek used to be a four letter word. Now it's a six-figure one.
I guess it's true: What Intel giveth, Microsoft taketh away...
From the article: "Even with the increase in processing horsepower over the years, Windows has grown to match"
I agree. I, like a dog, tried for years to get Linux functional. It was a big relief when I finally did get it to work correctly (and I got online...once). And like any dog, once I got off leash, I was like, "so what? Now I have to work twice as hard to take care of myself and still hope I don't get killed. Fuck that. I'm going home".
I've always wondered how they made Windows, and finally reading about it was quite inspirational. Its amazing how 50+ million lines of code are managed and actually improved within a huge company.
Its different for an opensource project due to the remoteness and sporadicness(sp?) of the developers.
Regardless, I'm kind of annoyed by how no one seems to be commented on how much of a cool feat it is, and all they can comment on is how bad the reputation of Windows is. That's not what the article was about, folks. I mean, who among you didn't drool when the 3 "best" developers out of 5000 were picked to fix the last minute bugs. What a head trip!
Admit that it was inspirational and made you wanna code an OS and make a killer kernel.
Rillopy
NEVER bet their businesses on the performance of 3rd parties.
Ask all the little tiny DSL providers that popped up in the late 90's how it feels to lean on someone else to deliver your product....
Oh wait, they're all out of business.
If you've got an idea, you better bring it to market without someone else's help....or you might not bring it to market at all.
-ted
The real problem is that Microsoft's developers still haven't figured out Makefiles. (Well there is nmake. I rest my case.)
warren
A lot of dogs aren't leashed, so they don't have that psychotic behavior when they get loose. Any dog that's just kept in a fenced yard is for some reason more clueful. Maybe an animal psychologist can explain it.
Hope you don't get hit by a truck digging in that trash can for food.
If you reply, do so only to what I explicitly wrote. If I didn't write it, don't assume or infer it.
If they had to use it themselves how come they got nowhere near the crashes I get? Maybe because they didn't actually use it to do hard work, use lots of app's from different sources, not enough memory (as I work for a stingy organisation) and they do everything the MS way. When IE (5.5xxx SP2) crashes (am using NT4.0) - it takes out something and leaves my system barely usable - just enough to shutdown and restart - sometimes. I think there testing needs to be a damn sight harder.
The Singularity is closer than you think
Quant
Sorry, I don't know what happened to that link. Here's the one I meant to post.
This also makes reference.
According to the article, NT was ported to the R3000 in _big_ endian mode. I thought all versions of Windows were always _little_ endian (ia32, Alpha, MIPS, PPC, all CPUs supported by CE)?
Heated argument and cursing are a given in War Room, and the penalty for not being on top of your bugs is swift and cruel ridicule from the other team members.
If that's true, that's incredibly unprofessional. Now I know many coders prefer to work in a relaxed, casual atmosphere, but to me that is taking it way too far. It can't be good for morale either. Devs should be expected to do their job to the best of their ability, get help if needed, and keep their bosses appraised of their progress. If they don't do all of that, they aren't doing their job. If they aren't doing their job, why are they working there?
The most virulent treatment, naturally, is saved for those foolish enough to blow off a War Room meeting. On the day I attended, one feature group had four of its bugs punted to Longhorn because they had failed to shown up for War Room. When someone argued that they should be given another day, Wanke simply said, "F#$% 'em. If it was that important, they would have been here. It's in Longhorn. Next bug."
That is a completely wrong attitude. If the rest of Microsoft is like that, that explains many of the problems with Microsoft software. That attitude would be fine if the only people affected by a bug were those responsible for fixing it. But the people that are affected by bugs are the people that buy and use their software: their customers, the people who pay their salaries. It is irresponsible of a person in charge of a project like that to not fix a problem he is aware of just because the subordinates who are supposed to fix it didn't show up for one of their three-times-daily meetings. It's starting to sound like they're only concerned with bug counts and severity ratings, reaching only for the goal of Release To Manufacturing to satisfy their shareholders that Product X is out the door and on sale.
In addition to the main War Team, each of the feature teams have their own War Rooms, so there could be as many as 50 such meetings each day, each going over a specific component of the system. These other War Room meetings occur at 8 a.m., every day. When a bug fix passes the local War Team process, it's introduced at Wanke's meeting. "They can't come into War Room unless they're fix-ready," Wanke said. "They must be fix-ready." Because there isn't a single person making decisions, there is a system of checks and balances through which each bug fix passes before it's introduced into the build.
So, if people don't attend the War Room meeting they get chewed out, but they aren't allowed to attend until they have finished what they're working on? Maybe some details are missing, but if it's that simple, no wonder MS software is such a mess. "Be here or else." "Don't show your face unless you have your fix finished." Do you see a conflict here?
We've sent out calls at 3 a.m. when the build is broken, find the developer that broke it, and get him into work right then and fix it immediately. The developers are on call 24 hours a day.
Again, irresponsibility. A dev should not leave for home until he's finished with his work. Finishing his work should include having tested his work that's been submitted as complete. If a dev submits broken code and leaves, he's not doing his job. Mistakes can happen of course, but a 24-hour on-call policy for programmers?! That can't be good for morale either. They should put in their hours, do their job right, and go home and (try to) forget about work. If they mess things up so badly that they have to get up at 3 AM to fix it, they are not doing their job right.
"I'm responsible for 8000 to 10,000 developers, program managers, and testers..."
Another problem. 8,000 to 10,000 people is like a division of a company, or a whole company in some cases. A person in charge of that many people should be in charge of general operations, not a single product. In other words, that's way, way too many people working on a single product. If you compared the number of people who work on Windows to the combined number of people that work on Linux or other open-source software with equivilant functionality, would the numbers be anything close? I don't know, but I doubt it. But even if the numbers are close, the way the software is made (independant programs that work on their own) avoids the problem of having to coordinate so many people.
On the day that we attended War Room, on January 21, 2003, Windows Server 2003 had hit an "absolute historic low" for bugs, according to Wanke. "We're shutting down the project this week," he said. "It's done. We're going to ship it." On that day, WinServer 2K3 had just a few active bugs, and at least a quarter to one-third of those bugs were simple branding issues. "So let's say there are about 150 outstanding issues to address," Wanke told us. "Of that, we'll fix about 100. All of the bugs are severity rated from 1 to 3, plus they get a priority rating. We have [a few] severity-1 bugs left to fix, and those all have to be fixed for us to ship."
Wanke said that the server team had already fixed all of the known security vulnerabilities.
So, Microsoft will ship software with known, fixable bugs in it (not news but making a point). That again demonstrates their attitude towards the quality of their software and their attitude towards their customers. They should but a sticker on the box that says "This software contains known bugs. A list can be found at www.microsoft.com/bugs." Of course, I guess their attitude is that their huge, legalese EULA discounts any responsibility and disclaims any fitness of purpose or quality. It also doesn't indicate much pride in their product (maybe they do have pride in it, but still...). Yes, all software will have some bugs in it I guess, but to decide to not fix already-known bugs and go ahead and sell their software seems irresponsible to me.
My two bucks. Should be interesting to see other opinions on this.
"Those who consume the bulk of goods are those who make them. We must never forget this secret of our prosperity."
That's opinion, not fact. The software has not even been released yet. Not exactly journalism, is it?
"Those who consume the bulk of goods are those who make them. We must never forget this secret of our prosperity."
Say it with me now...goo...gle...
I have a book about the same subject but only up to version 3.1. Can't seem to find a link anywhere :-(
It was called something like "Showstoppers".
procedure process_file...
cleanup:This becomes:
procedure process_file...
procedure process_file_data...
I think it makes for a much cleaner version.
Gotos can also be mostly eliminated using labeled breaks (which C doesn't have), or redesigning things - I find that excessive use of gotos means that you're really trying to design a state machine. You can do that with gotos, or you can use a loop containing a state variable, and a switch() statement listing the states.
So far I've never found a situation where a goto couldn't be avoided while still writing clear, efficient code. Maybe I will, but those three techniques (returns, breaks, and state machines) have held up so far.
You are wrong! (i think)
Superuser/root is still in userspace but can access all io ports.
"Anyone who's used Linux longer than a couple months knows it CAN do bad
things to your machine."
And any one who runs a web server on the same computer will notice that
the server is still running after a X server crash.
CIA Factbook 2002 (US):"Since 1975, practically all the gains in household income have gone to the top 20% of households
"There are 5000 developers on the Windows team generating over 50 million lines of code for Windows Server 2003. It's an enormous task, the biggest software engineering task ever attempted. There are no other software projects like this."
-Mark Lucovsky
for all their chest beating bravado the lessons of Brooks MMM do not appear to be taken seriously.
Want to run a simulated S/370 on your linux box?
peterrenshaw ~ Another Scrappy Startup
quote: "Now there are 5000 member of the Windows team, plus an additional 5000 contributing partners, generating over 50 million lines of code for Windows Server 2003. Getting all those people going in the same direction, cranking out code, is an enormous task. Building the results of their work, compiling and linking it into the executable and other components that make up a Windows CD is a 12 to 13 hour process that is done every day of the week. It's the biggest software engineering task ever attempted. There are no other software projects like this." And Microsoft compiles the whole thing--all 50+ million lines of code, almost every single day" -- end quote.
n ting-potatoes/ , you can see that in the now outdated Debian 2.2 release, there were no less than 55 million LOC. That's 5 million more. OTOH, while the 50 million LOC in Microsoft Windows include just the operating system, some drivers, a few inferior application programs (they still need a market for Office) and a web browser, Debian GNU/Linux includes a lot more. If Windows requires 50 million LOC to accomplish not even half of what Debian GNU/Linux 2.2 did with 55 million LOC, and what Debian GNU/Linux 3.0 does even better, with admittedly some more LOC as well, then you either have a lot of comments in your code, or a lot of bloat.
Nice.
Let's compare this to an other operating system, shall we?
Debian GNU/Linux is also built and rebuilt almost constantly. No full rebuilds every day (which is braindead, there's no need to recompile unchanged code), but constant rebuilding of changed components. And unlike Microsoft Windows, of which the latest release is available for the unbelievable amount of two (2) (!) architectures, Debian GNU/Linux is released for 11 different processor types, while there is work in progress to add another one; there's even work in progress to make debian work on other kernels besides Linux.
All released architectures use the 'buildd' system to rebuild changed packages. These don't work 'nearly every day of the week', they work 24 hours a day, 7 days a week.
Unlike the described Windows build system, where you need several engineers to oversee the build process, a Debian GNU/Linux autobuilder is usually managed by a single person, who takes care of everything. This includes ensuring the build environment keeps working, ensuring that the output and, possibly, reasons of failed builds are reported to the person in charge of the package that failed to build, checking the daemon's logs, and often also general maintenance of the machine. This probably isn't even everything, but should be mostly so.
One of the main differences between Windows and Debian GNU/Linux also is that the development version of Debian GNU/Linux is actually used for day-to-day work, even by non-developers. On those eleven architectures (twelve, if you count both the Big Endian and Little Endian versions of MIPS).
One last thing: 50 million LOC is both nothing, and bloat. On 'Counting Potatoes', at http://people.debian.org/~jgb/debian-counting/cou
Not to mention that there are other operating systems out there, such as the BSD-ish ones, that also do that 24/7 recompilation thing.
I'm everything but impressed, sorry.