Académique Documents
Professionnel Documents
Culture Documents
Mark your calendars! Sept. 9 is hereby declared Debugging Day. It's been associated
with removing bugs for more than 50 years now but is rarely formally celebrated. So let's
start the tradition this year.
It all began with a log entry from 1947 by Harvard University's Mark II technical team.
The now-classic entry features a moth taped to the page, time-stamped 15:45, with the
caption "Relay #70 Panel F (moth) in relay" and the proud boast, "First actual case of
bug being found."
K, the history of computer bugs didn't really begin on this date (see "Moth in the
machine" for the real story), but nevertheless, its anniversary seems a perfect time to
examine famous bugs and other ghosts in the machine.
Here is a highly selective -- and therefore incomplete -- collection of infamous software
bugs. Unlike the relatively benign tale of the moth in the relay, some bugs have wreaked
disaster, embarrassment and destruction on the world. Some have literally killed people.
Don't expect this collection to contain tales of the Ping of Death or other faults exploited
by hackers and malware -- such as the Spanair crash of 2008 or the possibly
apocryphal tale of the CIA sabotaging the Soviet gas pipeline. Nor will it include
deliberate decisions by programmers that came back to haunt them later, as with Y2K.
Instead, this story is about outright programming errors that caused key failures in their
own right.
Have I missed anything important? Consider this a call for nominations for the biggest
bugs of all time. These are my suggestions; if you have any honorable mentions, bring
'em on. The worst anyone can do is swat them.
Space bugs
Programming errors that derail high-profile space-exploration missions -- especially
bugs that cause spectacular explosions -- are frightening, expensive and career-killingly
embarrassing for those who let them slip through. They provide extremely vivid
reminders for all of us to check and recheck (and recheck and recheck and recheck)
every line of code.