I just finished reading a rather interesting book called
Showstopper! written by G. Pascal Zachary in 1994. The book chronicles the
development of Windows NT from its inception in the fall of 1988 until its
first release in the summer of 1993. It is exceptionally well written, focusing
more on the people involved and less on the actual technology being created. In
fact, you don't really have to be a technology enthusiast to enjoy the book.
Every page is filled with the heartaches and triumphs of the hundreds of
programmers, testers, builders, and program managers involved in the creation
of this brand new operating system.
People and personalities play a very strong role in this
book. The book's primary focus is on the uber-architect and team lead of NT,
David Cutler, who on page 2 already has a broken finger and a cracked toe
from taking out his frustrations on the walls of Building Two at the Microsoft
campus in Redmond. Throughout the book he is portrayed as a dark, brooding
drill sergeant who is feared by many and regarded as a hero by others. Cutler
came to Microsoft from Digital Equipment Corporation where he and his team
developed the VMS operating system that ran on DEC's Vax computers, released in
1977. At Microsoft, Cutler rules his team with an iron fist and he has a unique
vision for this new operating system: it will run on multiple hardware
platforms. Up until this time, an operating system was strongly tied to the
hardware it ran on. Even UNIX had so many flavours that any software written
for it had to be built with a specific version in mind. Though NT started out
with a promise of being able to run OS/2 programs (OS/2 was a joint operating
system venture between Microsoft and IBM), the commercial failure of OS/2 had
the team change gears so that NT would run older DOS and Windows programs
instead. The OS/2 debacle showed that customers weren't willing to leave their
old programs behind (OS/2 couldn't run programs written for DOS or Windows).
The original schedule for NT called for it to be released in
March of 1991. However, many things conspired to push this ship date back by
more than two years. The initial CPU targeted for the new OS was Intel's doomed
i860 RISC chip, which really didn't exist in any commercial form - the NT team
had to assemble their own hardware to fashion an i860 computer on which to run
the earliest versions of the OS. The team later had to switch gears to Intel's
mainstream x86 series and the new MIPS chips. OS/2 compatibility was dropped in
favour of DOS/Windows compatibility. The new file system (NTFS) was delayed by
the need to retain compatibility with older file systems. The size of the team
mushroomed over the life of the project, and there were several turf wars
between various teams, divisions, and program managers.
Over the life of the project, many personal relationships
were destroyed as team members spent countless hours at the Microsoft campus.
Spouses and children were relegated to second place in favour of the new
operating system that would define Microsoft's future. Stock options made millionaires
out of many on the team, though some left giving up hundreds of thousands in
vested stock just to retain their sanity. Throughout it all Cutler is there
watching over everything, making his demands and demanding from his team,
cursing and swearing, punching walls, sticking to his guns and making few
compromises. At the end of the book I found myself asking, "Why is it that
so many great leaders have to be such large assholes?" Honestly, does
greatness have to exact such a hefty price?
Though you may not be a fan of Microsoft or Windows NT, it
is largely irrelevant as the most interesting aspect of the book is the
multitude of personalities and their interactions with each other. And though
the book is over 10 years old, it still holds some fascinating insights into
the development of large software programs.