If one of your favorite books is not on this list, please leave a comment as I would love to have more books to add to my list :).
- iWoz: Computer Geek to Cult Icon: How I Invented the Personal Computer, Co-Founded Apple, and Had Fun Doing It. This is perhaps one of my most favorite books on a notable figure in the technology field. Though I’m not personally a hardware guy, it’s hard to find somebody to look up to more than Steve Wozniak. He is most definitely a Mozart of hardware design. I usually find the last part of the book (when it’s less technical) less interesting, but don’t let that deter you from a great book!
- Just for Fun: The Story of an Accidental Revolutionary. This is a book all about Linus Torvalds and the creation of Linux. I think it’s best when it’s being very technical. Then again, I’m a geek :). This book gives interesting insight into the motivations and life of Linus.
- The Second Coming of Steve Jobs. It’s amazing the difference a single person can make in the direction and drive of a large company. I personally think it is one of the reasons Apple is who they are. There is no doubt that Steve Jobs was a major influence and he probably single-handedly saved the company when he returned.
- Showstopper! The Breakneck Race to Create Windows NT and the Next Generation at Microsoft. Ah, the creation of Windows NT. Quite the milestone for Microsoft. This book gives good insights into the culture of the Windows division at the time and the many different conflicts that were happening that impacted the development of Windows NT. If you’re a “Microsoft Guy” (as in, you know of executives like Soma, Bob Muglia, and the like), you will find yourself recognizing many names within this book. At the heart of it is Dave Cutler. There are many times where you’ll either laugh or be incredibly scared at some of the behavior by Dave Cutler as he pushed his team to ship Windows NT.
- Microserfs. Let’s say one thing, this book is not based on a true story. However, it might as well be. It probably shouldn’t be on this list as it is a fictional book. Oh well! From what I’ve heard, it captures much of the feeling and culture of what it was like to work at Microsoft in the late 1980s and early 1990s. Even before working at Microsoft, I enjoyed this book very much. However, after working at Microsoft, I really like this book :). It’s fun to get some of the inside jokes after knowing Microsoft from the inside (like the main character working in Building 7 which doesn’t exist and is a part of Microsoft lore). If you’re familiar with the areas of Redmond and Bellevue that surround Microsoft’s main campus, you’ll smile several times during this book. The book isn’t entirely based at Microsoft as many of the characters move on to different things. Interestingly enough, I have a version of this book as a “Book on Tape” that is narrated by Matthew Perry.
- The Soul Of A New Machine. This book tells the story of the one-year development of a 32-bit minicomputer built by Data General engineers in the 1970s. It’s a crazy time shown in this book and a fun read. This book was a page-turner for me. I’m glad I don’t work on a team like this in real life though :). It was definitely quite the time to be involved in the computer industry.
- Coders at Work. A masterful set of interviews done with well-known subjects from all over the computer field. In this book, you will find interviews ranging from Guy Steel (father of Scheme/Lisp), to Donald Knuth, to Simon Peyton Jones (of Haskell fame), and many others. This book is very suited to sudden starts and stops so I found myself reading it before bed and when I had quick breaks during the day. Though I skipped around a bunch, I found myself with a compulsive need to read every single interview in the book (and it’s hard to find an interview in the book less than 40 pages long). A must read, especially for programmers.
- Fire in the Valley: The Making of The Personal Computer. This is most definitely not a narrative. It’s actually a borderline encyclopedia on the making of the personal computer. You don’t sit down and read this book through in one sitting (it’s massive to-boot). But it’s still fun to have this one on the shelf to go through from time to time to get a fairly complete breakdown on all the events (and their timelines) that led to the development of the personal computer (and how it evolved).
- Dreaming in Code: Two Dozen Programmers, Three Years, 4,732 Bugs, and One Quest for Transcendent Software. If you like The Soul Of A New Machine, you should like this book as well (and vice versa). This book is largely considered a “modern retelling” of Soul Of A New Machine by many people. Having read both books, I can’t exactly disagree with that sentiment. Provides much of the same context and insight into the computer field for a more modern age that Soul Of A New Machine did for the 1970s.
- Smalltalk-80: The Language and its Implementation. Alan Kay is one of my tech heroes as I have mentioned in the past. I love many of the concepts that come from Smalltalk-80. As a developer who writes object-oriented code from time to time, it’s a fascinating insight into the language whose inventor coined the term “object-oriented programming” in the first place.
- The Early History of Smalltalk (free PDF available). Yes, this is not a book. This is actually a paper written by Alan Kay. This means you can’t get any more accurate about all the events leading up to the birth of Smalltalk, considering it was written by the visionary behind Smalltalk. In this paper, Alan goes back all the way to his college days and talks about many of the cutting edge research being done in the computer field that gave the inspiration that ultimately led to the development of Smalltalk. I can’t express enough how much I believe this to be a must-read for any language fan/geek. Do it now, there is no excuse to download the PDF as you are reading this!
- Masterminds of Programming: Conversations with the Creators of Major Programming Languages. If you don’t know already, I’m a language geek. I’m fascinated by the design and implementation of programming languages. With that in mind, there should be no surprise on why I like this book so much. This book, as the title says, contains a bunch of interviews with many different implementers of major programming languages. If you’re a language geek like myself, this book is a Must Read.
- The Annotated Turing: A Guided Tour Through Alan Turing’s Historic Paper on Computability and the Turing Machine. Heard of Turing Machines? Perhaps you’re not a mathematician? If so, this is a fantastic read. In this book, Charles Petzold provides the background knowledge and context that is required to understand Alan Turing’s groundbreaking paper. Charles Petzold walks you through the paper practically sentence-for-sentence, breaking down what it means and the ramifications for each section. This book can border on “brain explosion” from time to time, but is well worth the effort to read it.
- Code: The Hidden Language of Computer Hardware and Software. I’m fascinated by how things work, and this book walks you all the way from logical gates (AND, OR, XOR, etc.) to how memory works all the way down to the logical gate level. It then builds on this to show the guts of how CPUs work. You’ll find yourself starting with basics like light bulbs and switches, and ending with the basics of computers. Another “gold-star” to Charles Petzold for this book. Get it!
- In Code: A Mathematical Journey. I’m not a mathematician. In fact, compared to other software developers I know, my math skills and knowledge is pretty poor. Yet I continue to find myself intrigued by topics like Cryptography. If that sounds like you, this book is a must-have. It chronicles the journey of a young woman through the land of mathematics and into the realm of cryptography. It is amazing what this young woman accomplishes at her age. This book tells the narrative in such a way that you get to understand how it works as well as she walks along her learning path. And we’re not talking about “Cryptography 101” either :).
- Revolution in the Valley. This is about how the Mac was made and is written by one of the main engineers of the Mac as well (Andy Hertzfeld). It is filled with fun stories behind the creation of the Mac and the personalities on the team.
- The Code Book: The Science of Secrecy from Ancient Egypt to Quantum Cryptography. I love classic cryptography, its history, and how it applies to our modern computers today. This is a fascinating and thoroughly enjoyable read through the history of cryptography.
The following ones are technically “must-watch” as they are videos, not books. But I find myself popping them in when I’m in one of those moods (and want some video playing in the background while I code).
- Pirates of Silicon Valley. This is a made-for-TV movie based on the book Fire In The Valley from above. It mostly focuses on the early days of Apple and Microsoft and the interaction between the two. Not 100% accurate, but still fun to watch.
- Triumph of the Nerds. An early (pre-Windows 95 launch) three-part documentary done by Robert X. Cringley. Has some interesting interviews with Steve Ballmer, Bill Gates, Larry Ellison, Steve Jobs, and more. Discusses some of the conflicts between IBM and Microsoft towards the end of that partnership as well as diving back into some of the early history of the Altair and Apple 2.
- Revolution OS. A documentary about the creation and initial rise of Linux. Has interviews with Bruce Perens, Linus Torvalds, Richard M. Stallman, Eric S. Raymond, and the like. Granted, it is a fairly weighted and one-sided presentation (the narrative over Bill Gates’ letter to hobbyists is especially laugh-inducing). But don’t let that get in the way of what is a good watch.
- Hackers — Wizards of the Electronic Age. It contains a bunch of legendary hackers, what else is there to say?
Here are some more that are on my own must-read-this-in-the-future list, I just haven’t gotten around to buying and reading them yet…
- Hard Drive: Bill Gates and the Making of the Microsoft Empire. It seems ridiculous that I was a Microsoft employee for nearly 10 years and don’t have a single book on Bill Gates (yet my bookshelf is stocked with books on Linus, Steve Jobs, Steve Wozniak, etc.). This one looks like a fairly good read too.
- Hackers: Heroes of the Computer Revolution. I think the title says it all. Sounds like a fun read!
- A Few Good Men from UNIVAC (History of Computing). Based on how much I enjoyed The Soul Of A New Machine and how much I like computer history, I definitely want give this one a read.
- Fumbling the Future: How Xerox Invented, then Ignored, the First Personal Computer. I’ve always had great respect and admiration for those that worked at Xerox PARC in its heyday. I think every geek should learn about the sheer amount of technologies that our modern computer world is built on that were all founded and built at Xerox PARC. An amazing story.
- Analog Days: The Invention and Impact of the Moog Synthesizer. It could be argued that the original Moog synthesizers are what really put synthesis on the map. Though I’m not much of a hardware geek myself, I have always been intrigued by the hardware side of things. This is definitely on my wish list.
And there you go, my opinions on what are some must-reads and must-watches for other geeks like me. Outside of computers, I’m not much of a history person. I’m not interested by ancient civilizations, the civil war (unless it involves the Oregon Ducks and Oregon State Beavers), or anything of the sort. But computer history? I love it and am incredibly fascinated by it.