More than ever, our society depends on the reliable - if not always correct - functioning of computers. Computers amplify not only our genius but our flaws, sometimes to intolerable extremes. Author Ivars Peterson traces the lurching history of software development and describes how misconceptions and mistakes have become an inextricable part of computer programs and systems. He creates fascinating and colorful profiles of the people who hunt down these elusive computer bugs and struggle to make an inherently fallible system less treacherous. He also offers dozens of detailed examples of how computer failures occur - some amusing, some annoying, others terrifying, even fatal. Each computer failure is a reminder that we all pay a price for sloppy thinking in software development, for making the rush to market a more important consideration than safety and reliability. No software can ever be guaranteed 100 percent bug-free, but if we analyze our past mistakes and rethink our approach to computers, we can defuse some ticking time bombs and create a more trustworthy next generation of computers.
Bugs in code that caused disasters. But spent very little time on interesting bugs. Never got in depth, doesn't retell any tales (was hoping for something a little more like Cuckoo's Egg), don’t get to know any 'characters.' Spent a lot of time on whether you can prove software works 100% correctly (you can't).
The stories of many famous software bugs and bug-prone systems: the Therac-25 radiation machine that killed patients, the crash-prone Airbus, the Patriot missile battery that missed Iraqi SCUDs because of an insufficiently accurate internal clock. Computer safety expert Nancy Leveson is quoted many times; I took her class in 1998 (and told her of the most bizarre bug I had introduced up to then) and recommend her book Safeware over this one. One small correction: Velvel is not a childhood nickname of William Kahan, but simply the Yiddish variant of his name.
Ivars Peterson quickly guides us through what was painstaking drudgery to discover the tiny errors costing lives, lots of money and confidence in trusted systems. We see how bright and hard-working people make deadly mistakes. He takes us to the door of the consortium, of which he is a member, that for years has struggled with the sticky problem of debugging code before the bugs bring down a system. Entertaining and frightening because it is true. Take it from the expert.