What are the biggest blunders in programming lore?
Mars Climate Orbiter
The Mars Climate Orbiter (MCO) was launched on December 11, 1998 atop a Delta I launch vehicle. In September 1999 it was to achieve an elliptical orbit around Mars, where it would skim through the upper atmosphere for several weeks to move into a low circular orbit. On September 23, 1999 the MCO was lost when it entered the Martian atmosphere in a lower than expected trajectory.
The Mars Climate Orbiter was destroyed by a navigational error which caused the spacecraft to miss its intended 140–150 km altitude above Mars during orbit insertion, instead entering the Martian atmosphere at about 57 km. 85 km was the minimum survivable altitude. The spacecraft would have been destroyed by atmospheric stresses and friction at this low altitude.
The small forces ΔV for use in orbit determination solutions were low by a factor of 4.45 because data was delivered in lb-sec instead of Newton-sec. One team of engineers working on the orbiter had used metric units while another team had used English units. They had failed to convert English measures of rocket thrust to Newton, a metric system measuring rocket force:1 pound force = 4.45 newtons.
The resulting loss = US$327.6 million
The USS Yorktown (DDG-48/CG-48) was a Ticonderoga-class cruiser in the United States Navy from 1984 to 2004. From 1996 the USS Yorktown was used as the test bed for the Navy’s Smart Ship program. The ship was equipped with a network of 27 dual 200 MHz Pentium Pro based machines running Windows NT 4.0 communicating over fiber-optical cable with a Pentium Pro based server. This network was responsible for running the integrated control center on the bridge, monitoring condition assessment, damage control, machinery control and fuel control, monitoring the engines and navigating the ship. This system was estimated to save $2.8 million per year by reducing the ships complement by 10%.
In September 21, 1997 while on maneuvers off the coast of Cape Charles, Virginia, a crew member entered a zero into the data field of a database, which caused a divide-by-zero exception in the ships Remote Data Base Manager which brought down all the machines on the network, causing the ships propulsion system to fail. As a result the USS Yorktown was dead in the water for just under three hours, and had to be towed back to Norfolk naval base.
The resulting loss = US$?
Mars Polar Lander
The Mars Polar Lander (MPL) was part of the Mars Surveyor ’98 program in combination with the MCO. Mars Polar Lander and the attached Deep Space 2 probes were launched on a Delta 7425. After an 11-month hyperbolic transfer cruise, the Mars Polar Lander reached Mars on 3 December 1999. The most likely cause of the failure of the mission was a software error that mistakenly identified the vibration caused by the deployment of the landers legs as being caused by the vehicle touching down on the Martian surface, resulting in the vehicle’s descent engines being cut off whilst it was still 40 meters above the surface, rather than on touchdown as planned.
The resulting loss = US$110 million
Milstar is a United States government satellite communications system that provides secure, jam resistant, worldwide communications to meet wartime requirements for United States military users. The first Milstar satellite was launched 7 February 1994 aboard a Titan IV expendable launch vehicle. The launch of the third satellite on 30 April 1999 failed to place the satellite in geosynchronous orbit. The Titan IV was equipped with a Centaur Upper Stage which carries its own guidance, navigation and control systems, which measure position and velocity throughout the flight. It determines the desired orientation of the vehicle in terms of pitch, roll and yaw axis vectors. It then issues commands to orient the vehicle in the proper attitude and position using the Reaction Control System.
The roll rate filter constant entered in the Inertial Measurement System was incorrect: The value should have been entered as –1.992476, but was entered as –0.1992476. The incorrect roll rate filter constant zeroed any roll rate data, resulting in the loss of roll axis control, which then caused loss of yaw and pitch control. The vehicle began experiencing instability about the roll axis during the first burn. That instability was greatly magnified during Centaur’s second main engine burn, coupling each time into yaw and pitch, and resulting in uncontrolled vehicle tumbling.
The Centaur attempted to compensate for those attitude errors by using its Reaction Control System, which ultimately depleted available propellant during the transfer orbit coast phase. The third engine burn terminated early due to the tumbling vehicle motion. As a result of the anomalous events, the Milstar satellite was placed in a low elliptical final orbit, as opposed to the intended geosynchronous orbit.
The resulting loss = US$800 million (satellite), and US$433 million (launcher).
The Patriot missile defense system used during the Gulf War was also rendered ineffective due to roundoff error . The system used an integer timing register which was incremented at intervals of 0.1 s. However, the integers were converted to decimal numbers by multiplying by the binary approximation of 0.1:
As a result, after 100 hours (3.6 × 106 ticks), an error of
had accumulated. This error caused the Patriot system to continuously recycle itself instead of properly targeting.
The resulting loss = US$?
Condeep (abbr. concrete deep water structure) refers to a make of gravity base structure for oil platforms developed and fabricated by Norwegian Contractors in Stavanger, Norway. A Condeep usually consists of a base of concrete oil storage tanks from which one, three or four concrete shafts rise.
The Sleipner A platform produces oil and gas in the North Sea and is supported on the seabed at a water depth of 82 m. It is a Condeep type platform with a concrete gravity base structure consisting of 24 cells and with a total base area of 16000 m2. Four cells are elongated to shafts supporting the platform deck. The first concrete base structure for Sleipner A sprang a leak and sank under a controlled ballasting operation during reparation for deck mating in Gandsfjorden outside Stavanger, Norway on 23 August 1991.
The post accident investigation traced the error to inaccurate finite element approximation of the linear elastic model of the tricell (using the popular finite element program NASTRAN). The shear stresses were underestimated by 47%, leading to insufficient design. In particular, certain concrete walls were not thick enough. More careful finite element analysis, made after the accident, predicted that failure would occur with this design at a depth of 62m, which matches well with the actual occurrence at 65m.
The resulting loss = US$700 million, a seismic event registering 3.0 on the Richter scale, and left nothing but a pile of debris at 220m of depth.
 Skeel, R., “Roundoff error and the Patriot missile”, SIAM News, 1992, Vol.25, pp.11.