Thursday, October 7, 2010

Software bugs

An interesting collection of the greatest software bugs.
 
10. Mariner 1 Venus probe loses its way: 1962
A probe launched from Cape Canaveral was set to go to Venus. After takeoff, the unmanned rocket carrying the probe went off course, and NASA had to blow up the rocket to avoid endangering lives on earth. NASA later attributed the error to a faulty line of FORTRAN code. The report stated, "Somehow a hyphen had been dropped from the guidance program loaded aboard the computer, allowing the flawed signals to command the rocket to veer left and nose down... Suffice it to say, the first U.S. attempt at interplanetary flight failed for want of a hyphen." The vehicle cost more than $80 million, prompting Arthur C.Clarke to refer to the mission as "the most expensive hyphen in history."
9. Radiation machine kills four: 1985 to 1987
Faulty software in a Therac-25 radiation-treatment machine made by Atomic Energy of Canada Limited (AECL) resulted in several cancer patients receiving lethal overdoses of radiation. Four patients died. When their families sued, all the cases were settled out of court. A later investigation by independent scientists Nancy Leveson and Clark Turner found that accidents occurred even after AECL thought it had fixed particular bugs. "A lesson to be learned from the Therac-25 story is that focusing on particular software bugs is not the way to make a safe system," they wrote in their report." The basic mistakes here involved poor software-engineering practices and building a machine that relies on the software for safe operation."
8. AT&T long distance service fails: 1990
Switching errors in AT&T's call-handling computers caused the company's long-distance network to go down for nine hours, the worst of several telephone outages in the history of the system. The meltdown affected thousands of services and was eventually traced to a single faulty line of code.
7. Patriot missile misses: 1991
The U.S. Patriot missile's battery successfully headed off many Iraqi Scuds during the Gulf War. But the system also failed to track several incoming Scud missiles, including one that killed 28 U.S. soldiers in a barracks in Dhahran, Saudi Arabia. The problem stemmed from a software error that put the tracking system off by 0.34 of a second. As Ivars Peterson states in Fatal Defect, the system was originally supposed to be operated for only 14 hours at a time. In the Dhahran attack, the missile battery had been on for 100 hours. This meant that the errors in the system's clock accumulated to the point that the tracking system no longer functioned. The military had in fact already found the problem but hadn't sent the fix in time to prevent the barracks explosion.
6. Pentium chip fails math test: 1994
The concept of bugs entered the mainstream when Professor Thomas Nicely at Lynchburg College in Virginia discovered that the Pentium chip gave incorrect answers to certain complex equations. In fact, the bug occurred rarely and affected only a tiny percentage of Intel's customers. The real problem was the nonchalant way Intel reacted. "Because we had been marketing the Pentium brand heavily, there was a bigger brand awareness," says Richard Dracott, Intel director of marketing. "We didn't realize how many people would know about it, and some people were outraged when we said it was no big deal." Intel eventually offered to replace the affected chips, which Dracott says cost the company $450 million. To prove that it had learned from its mistake, Intel then started publishing a list of known "errata," or bugs, for all of its chips.
5. Intuit's MacInTax leaks financial secrets: 1995
Intuit's tax software for Windows and Macintosh has suffered a series of bugs, including several that prompted the company to pledge to pay any resulting penalties and interest. The scariest bug was discovered in March 1995: the code included in a MacInTax debug file allowed UNIX users to log in to Intuit's master computer, where all MacInTax returns were stored. From there, the user could modify or delete returns. Intuit later ended up winning BugNet's annual bug-fix award in 1996 by responding to bugs faster than any other major vendor.
4. New Denver airport misses its opening: 1995
The Denver International Airport was intended to be a state-of-the-art airport, with a complex, computerized baggage-handling system and 5,300 miles of fiber-optic cabling. Unfortunately, bugs in the baggage system caused suitcases to be chewed up and drove automated baggage carts into walls. The airport eventually opened 16 months late, $3.2 billion over budget, and with a mainly manual baggage system.
3. Java opens security holes; browsers simply crash: 1996 to 1997
All right, this is not a single bug but a veritable bug collection. We include this entry because the sheer quantity of press coverage about bugs in Sun's Java and the two major browsers has had a profound affect on how the average consumer perceives the Internet. The conglomeration of headlines probably set back the e-commerce industry by five years. Java's problems surfaced in 1996, when research at the University of Washington and Princeton began to uncover a series of security holes in Java that could, theoretically, allow hackers to download personal information from someone's home PC. To date, no one has reported a real case of a hacker exploiting the flaw, but knowing that the possibility existed prompted several companies to instruct employees to disable Java in their browsers. Meanwhile, Netscape and Microsoft began battling in earnest in the much-publicized browser wars. That competition inspired both companies to accelerate the schedules for their 4.0 releases, and the result has been a swarm of bugs, ranging from JavaScript flaws in Netscape's Communicator to a reboot bug in Microsoft's Internet Explorer. Communicator is now in Version 4.04 for Windows 95 and Windows NT, six months after its first release. Internet Explorer 4.01, the first of presumably many bug-fix versions, arrived in December, two months after the initial release of IE 4.0.
2. Deregulation of California utilities has to wait: 1998
Two new electrical power agencies charged with deregulating the California power industry have postponed their plans by at least three months. The delay will let them debug the software that runs the new power grid. Consumers and businesses were supposed to be able to choose from some 200 power suppliers as of January 1, 1998, but time ran out for properly testing the communications system that links the two new agencies with the power companies. The project was postponed after a seven-day simulation of the new system revealed serious problems. The delay may cost as much as $90 million--much of which may eventually be footed by ratepayers, and which may cause some of the new power suppliers to go into debt or out of business before they even start.

1. The millennium bug: 2000
For a long time, programmers have saved memory space by leaving only two numeric fields for the year instead of four: 87 instead of 1987, for example. When clocks strike midnight on January 1, 2000, this programming shorthand will make millions of computers worldwide think it's 1900, if their software isn't fixed before then. The so-called year 2000 (Y2K) bug has given birth to a cottage industry of consultants and programming tools dedicated to making sure the modern world doesn't come to a screeching halt on the first day of the next century. Some say that the bug will cause airplanes to fall from the sky, ATMs to shut down, and Social Security checks to bounce. At the very least, the bug is a huge and expensive logistical problem, although most vital organizations now say they will have fixed the critical portions of their systems in time.
Finally, it all turned into a damp squid. There was no "calamities" reported as the clock ticked past midnight on the 31st of Dec, 1999


No comments:

Post a Comment

If you have some thoughts on this, I would like to read it.