Last week I had the opportunity to speak about “Spectacular Spectacles” at MCAD. I chose to look at software failure as an example of spectacle. Software often fails spectacularly, which corresponds well with the theme, but there is also an interesting argument to be made about how software fails. Software failures are often a result of the most mundane of mistakes.
One such spectacular failure is the explosion of the Ariane 5 Rocket.
The rocket was part of a family of rockets intended to carry a payload into orbit.
The specific payload that the Ariane 5 was supposed to launch was a three-ton satellite.
A $7 billion joint venture of the European Space Agency (ESA) and the Centre national d’études spatiales (CNES), the rocket took ten years to complete. It was intended to give Europe an edge in the competitive, private space industry.
On its maiden voyage, the unmanned rocket exploded just forty five seconds after lift-off from French Guiana.
The cause of the failure was a software error in the Inertial Reference System. Worse, the failure is a frequent mistake made in coding:
When programming languages store data, they store it as a particular type of data. Integers, alphanumeric strings, and Boolean variables are examples of data types.
And this leads us to the point of this post: software fails; it fails frequently and for easily understandable reasons. The inability to verify that software works as intended has been one of the foremost research topics in computer science since the mid 1960s. While there has been significant progress, it is still a challenge for the field.
For the public, it should be becoming a greater concern as modern, western society becomes more and more dependent upon computers and the software that drives them.
*More information on data types
Lions, J.L. et. al. (1996) ARIANE 5 Flight 501 Failure: Report by the Inquiry Board, Paris
Gleick (1996, Dec. 1) A Bug and a Crash, Sometimes a Bug is more than a Nuisance, New York Times