A friend of mine recently returned the book Showstopper! after an extended loan. If you haven't heard of this book, allow me to quote the Amazon.com editorial summary:
Showstopper! is a vivid account of the creation of Microsoft Windows NT, perhaps the most complex software project ever undertaken. It is also a portrait of David Cutler, NT's brilliant and, at times, brutally aggressive chief architect.Cutler surely ranks as one of the most impressive software engineers the field has ever produced. After leading the team that created the VMS operating system for Digital's VAX computer line--an accomplishment that most would regard as a lifetime achievement--he went on to conceive and lead the grueling multi-year project that ultimately produced Windows NT. Both admired and feared by his team, Cutler would let nothing stand in the way of realizing his design and often clashed with his programmers, senior Microsoft management, and even Gates himself.
I hadn't looked at this book since I originally read it in 1996, and I found myself casually skimming through it, eventually re-reading the entire thing. It's a critical part of Microsoft's history. Think about where Microsoft would be if the NT project, which began way back in 1988, had failed. Can you imagine running some variant of Windows 95 today?
It's also interesting to note that nobody is writing new operating systems any more. The world has devolved into UNIX and NT camps exclusively. Without NT, I think we'd all be running UNIX at this point, for better or worse. It certainly happened to Apple; their next-generation Copland OS never even got off the ground. And now they're using OS X which is based on Unix. There are some uncanny observations in the book that foreshadow this divide:
Besides, NT would still meet the goals closest to Cutler's heart: portability, reliability, and the ability to provide an alternative to Unix, the splintered high-end operating program.The last goal was crucial to Cutler. "Unix is like Cutler's lifelong foe," said one team member who'd worked with Cutler for nearly two decades. "It's like his Moriarty [Sherlock Holmes's nemesis]. He thinks Unix is a junk operating system designed by a committee of Ph.D.s. There's never been one mind behind the whole thing, and it shows, so he's always been out to get Unix. But this is the first time he's had the chance.
In many ways, the story of Windows NT is the story of Dave Cutler: he comes across as the Ted Nugent anti-hero of software architects. There are some very amusing anecdotes in the book about his gonzo management style:
In truth, nobody worried about Rashid's etiquette. Of all people, Cutler deserved indelicate treatment. Other Microsoft leaders viewed him as a bully. One senior executive usually responded to a Cutler complaint with the succint statement, "Fuck Dave." When asked why, the executive excused his boorishnes with the reply, "Cutler tells me to fuck off all the time."
Cutler keeps an incredibly low profile today, which is strange for an architect of his stature. You won't find many interviews or articles about him. In fact, he still works at Microsoft today, and he was a key reason the 64-bit version of Windows XP even exists in the face of lackluster Intel support for 64-bit x86 extensions.
There are some interesting themes in the book that emerged after a second reading:
The end of a project was always a difficult time for him. He always pushed to outdo himself, never lingering for long over his achievements and eschewing any examination of his motives and psychology. "My motivation is I like to do this stuff. I just like to do this stuff," he said. "I like to get [my code] done and see it work." Rather than monumental, his concept was Sisyphean. He dared not speculate about the benefit of his labors for society. Nor did he concern himself with his place in the history of technology. He only looked forward, abolishing the past as he went on. "This isn't the end," he said. "Ten years from now we'll be designing another system, and everyone will be sitting around bemoaning that it will have to be compatible with NT. That will happen."
I am not so sure. Unix is 30 years old and would unquestionably rule today's desktop if not for the existence of NT. Is it unreasonable to expect the NT kernel to last as long? In fact, I think it's possible we may not see another "from the ground up" OS developed in our lifetimes.
interesting post..
Don't want to go into a flame war or anything but surely the development of Linux would top this. Imagine a bunch of programmers communicating only through Usenet posts and FTP and coming up with that!
Allan Ang on August 30, 2005 10:04 AMInterestingly, it looks the NT codebase is still fairly portable, even though x86 is now the only platform for windows.
The xbox OS is a cut-down version of Win2k - the xbox was based on PC x86 pc hardware. And for the xbox360 OS they started from the orignal xbox codebase... even though its a radicaly different architecture. With things like .net and DirectX 10 now appearing on the 360 there must have been some merging with windows/vista codebase.
John Sinclair on January 10, 2007 4:26 AMAnother interesting fact I've read is x86 wasn't actually the original main target platform for windows NT. I forget which platform the new OS was originally planned for, but the it was only changed to x86 in the late stages of development - and Dave Cutler's foresight in keeping the main codebase clean of platform-specific stuff allowed the change to x86 without a major fuss.
John Sinclair on January 10, 2007 4:30 AMIt's also interesting to note that nobody is writing new operating systems any more.
Quite amazing how many people visit the www.osdev.org website every day then, I guess.
PS: your captcha is terribly broken.
Candy on January 17, 2007 11:54 AMQuite amazing how many people visit the www.osdev.org website every day then, I guess.
And we're seeing such WONDERFUL results from there arn't we?
PS: your captcha is terribly broken.
PPS: Your knowledge of the utility of this simple captcha is also horribly broken.
Daniel on June 26, 2007 1:14 PMI also enjoyed this book. In many ways, it's a paean to Cutler and his team. His Marine-like discipline and toughness of mind is a model for any project leader. The book reminds me of Microcosm, George Gilder's paean to Carver Mead, another genius in technology.
JeffK on August 15, 2007 7:50 AMI love that for the last few days many, many people have been bemoaning Jeff's captcha and not commenting on his article. Good article, by the way. It seems like two seperate entries though; one on discipline (http://www.codinghorror.com/blog/archives/000931.html) and the other on Dave Cutler.
Dave on August 15, 2007 8:06 AMThe original target for NT? Well, that would be the Prism RISC architecture, and NT would have been under the guise "Mica." When Ken Olson (crazy as a loon) killed Prism/Mica at DEC (because the world only wants a little VAX, a medium VAX, and a large VAX), Cutler went to MS and took a lot of the team and the ideas with him. NT on DEC Alpha was, belatedly, Mica on Prism.
For what it's worth, Cutler's original target choice for CPU was MIPS. He didn't care for i386 at all.
skeptomai on August 15, 2007 11:29 AM"I think it's possible we may not see another "from the ground up" OS developed in our lifetimes."
The internet 1.0, Web2.0, Google API etc. But I know what you mean, a real OS, not just an API or software development platform.
Chris on May 8, 2008 3:31 AMDaniel said:
And we're seeing such WONDERFUL results from there arn't we?
And as was pointed out in the article, it took about 10 years to get to a version of Windows NT (2000) that didn't completely suck. So give the new OS developers a chance. We wouldn't want to appear hypocritical, would we?
Lawrence D'Oliveiro on September 12, 2008 10:12 AMIt amazes me how everyone forgets NT started out as a co-development effort with IBM's OS2. As an early third party developer I would get two large boxes of floppies from MS to develop with one was for NT and the other was for OS2. As a driver developer they were basically the same just substitute GDI for GPI etc. MS eventually dropped out of OS2 and focused on NT which eventually beat out IBM since it was used on third party PC's. The IBM PS2 computers eventually lost out on cost. How much of IBM's OS2 remains within NT has always been the question.
Wil on September 28, 2008 12:47 PMI was on that team. The platform was designed to run on x86 but the platform that Dave Cutler preffered was MIPS. We all had primarily x86 machines and one MIPS. Then came the the Alpha. It was always assumed the primary platform for V1 (NT3.1) would be x86. The cool thing about the OS at the time for Microsoft was the fact the it was portable across platforms. Dave Cutle was definately a personality. There were no build breaks from lousy chackins when Dave was at the helm. If you did break the build Dave would show up in your office and scare the living %$#(@ out of you. That WAS the process.
Showstop on February 15, 2009 10:40 AMI just found your blog. Real nice article and I enjoyed it enough to go to Amazon and buy the book you discussed. I cant wait for that to be dropped off!
I don't understand why somebody hasn't started developing a third OS from the ground up. It makes no sense to me. Win NT has changed the landscape, but it is arguably the most frustrating OS in history. The problem I have with M$ technology is that it doesn't work when you need it to, plain and simple. Whereas with Unix, it has no choice but to work. Apple software just works. The GPS funtions without flinching on an iPhone, but on my Win Mobile 6.1 Touch phone it may work or it may not. I say all of this to say that I just wish somebody would come up and develop a Unix competitor that works just as well and solid!
Wilson Hines on February 6, 2010 9:30 PM@Wilson Hines
"Win NT has changed the landscape, but it is arguably the most frustrating OS in history"..." but on my Win Mobile 6.1 Touch phone it may work or it may not".
So what you says is, that because the GPS "functions" "don't work" (u prolly can't use them right, cause you're a penguin) the "Win NT" is the "most frustrating OS in history"
makes you the most important frustrated developer in history.
You must be right. Now go to apple fanboy websites and gaze at iPads.
adfds
Majid Mohadjer on August 5, 2011 7:29 AMThe comments to this entry are closed.
|
|
Traffic Stats |