Ullman’s book describes the lives of two people related to a large software development project in the early 80s. Ethan Levin is the programmer who is judged responsible for the bug. As it proves to be impossible to reproduce reliably his life seems to spiral down into dispair, loneliness, and depression.
Ullman is a master at describing the almost hypnotizing urge to “just fix this last problem before” when programming. The dysfunctional team and people in the novel are more dysfunctional than anyone I have ever met, but they are perfect carricatures (I hope!) of a software team gone really, really bad.
“I’m leaving!”, [Ethan] said.
“I mean now. Are you leaving now?”
“I’m leaving, I’m leaving,” he said again, but vacantly, automatically, because despite himself, his eyes had been drawn back to the screen, to the irregular pulse of the messages as they appeared: Warning. Warning.
“Hello? Are you there?”
“Yeah, yeah. I’m here,” he said, just as the compiler suddenly displayed the message “Fatal error.: MAXWINSIZE not defined,” and came to a stop.
“Shit!” Ethan Levin muttered under his breath.
“Ethan! You’re compiling! I know it!”
I really enjoyed this book. In fact, I often burst out laughing audibly as Ullman describes some of the absurdities of programming I know so well. The technology in the book is realistic and recognizable, and the bug, in the end, turns out to be something that very well could have evaded a team after a year of searching.
If you are involved in software development, you will enjoy recognizing the themes and character, at the same time as you will thank god they are carricatures.
If you are not involved in software development, this book may bring you some understanding of the addictive captivation of the computer and the source of the weirdness that seems to be so much a part of your programming friends’ personality.