Today’s reading culture (especially the one of IT folks) is often focused on short documents (like this blog 🙂 ) that can be read in only a few minutes. Most other stuff is often considered as tl;dr
However there are some longer documents (formerly known as “books” 😉 ) that are outstanding and are worth investing the time it takes to read them.
When I talk with young software developers about the former times of software engineering they listen to my stories and are often surprised of how this topic evolved over time. I typically recommend them three books portraying real software projects in three different decades. I consider these books as “must-read” for everyone involved or interested in software engineering. Without further ado – here we go:
The 1970s: The Soul of a New Machine
Tracy Kidder’s documentary book won the Pulitzer Prize and paved the way for the other two books mentioned later in this blog. Don’t be confused by the term “machine” in the title. The book is still about software engineering. At that time software always came directly from the manufacturer of computers.
The book is about the computer manufacturer “Data General”, which in the late 1970s competed with “Digital Equipment Corporation” (DEC) to bring the first 32-bit computer to market. Data General created a new team with their best and experienced engineers to create this new generation of machines in a Greenfield project. But the book is not about this team. It’s about Tom West, a manager and engineer, who secretly created a team to build the new generation of machines not by creating a totally new one from scratch but by improving the “old” machines. His team’s work should kick in as a Plan B if the other team might fail or not deliver in time. Since all experienced engineers were in the main team, West needed to hire young and unexperienced engineers. The ones who worked on software and developed the microcode called themselves “micro kids” and the guys focusing on the hardware were the “hardy boys”. In the end, these young passionate guys made it and saved the company.
A reader quotes his perception of the book as a “feverish effort of a team of Data General researchers to create a new 32-bit superminicomputer. A compelling account of individual sacrifice and human ingenuity. Soul of a New Machine endures as the classic chronicle of the computer age and the masterminds behind its technological advances.”
The 1980s and Early 1990s: Showstopper!
This book reveals how the Windows NT operating system was created. The first version of Windows that deserved the title “operating system” was Windows NT 3.5. Former versions of Windows were merely add-ons to the old MS-DOS. To develop their first real operating system, Microsoft hired Dave Cutler from Digital Equipment Corporation (DEC) where he had been responsible for the VAX/VMS operating system.
Amazon’s statement on the book is:
“Driven by the legendary Dave Cutler, a picked band of software engineers sacrifices almost everything in their lives to build a new, stable, operating system. Showstopper gets deep inside the process of software development, the lives and motivations of coders and the pressure to succeed coupled with the drive for originality and perfection that can pull a diverse team together to create a program consisting of many hundreds of thousands of lines of code.”
The Early 2000s: Dreaming in Code
Mitch Kapor (founder of Lotus, chief engineer of Lotus 1-2-3) created the “Open Source Applications Foundation” (OSAF) in 2002. The main project of OSAF was “Chandler”, a personal information software that should make Microsoft’s Outlook obsolete. The book unveils three years of the Chandler project. Prestigious people like Apple’s legendary Andy Hertzfeld have been working on the project. But in the end Chandler did not have the success that its contributors aimed for. Nevertheless the book is not about failure, but focuses on the human beings in software development.
A quote that describes the book perfectly is:
“Dreaming in Code is a fascinating and sobering exploration of how the challenges of programming both inspire and undermine our human drive to create new tools. Beautifully written, it’s a book for anyone interested in the roots of creativity and innovation, for coders and non-coders alike.”