22 de julio de 1962. Todo estaba listo para que la NASA lanzara la primera sonda del programa Mariner. Su objetivo era llevar a cabo el primer sobrevuelo no lunar de la historia, con una visita al planeta Venus. El lanzamiento se desarrolló sin incidentes, pero el cohete comenzó a responder de forma errática a los comandos enviados por los sistemas de guía, y el oficial de seguridad no tuvo más opción que ordenar su autodestrucción 294.5 segundos después. ¿Qué fue lo que sucedió? Alguien escribió mal un símbolo matemático en una transcripción, y terminó convertido en un bug de software.
Vamos a iniciar este artículo con una pequeña mala noticia: El lanzamiento del Telescopio Espacial James Webb ha sido demorado otra vez. Una junta de revisión analizó la situación actual del telescopio, y necesitará como mínimo tres años más de trabajo… al igual que una inyección de 800 millones de dólares en su presupuesto. ¿Qué nos confirma esto? Ir al espacio es difícil, y es caro. Ambos factores obligan a los expertos a ser conservadores, o de lo contrario, un simple error podría provocar pérdidas aún mayores. La NASA aprendió esto por las malas en varias oportunidades. Una de las primeras, fue Mariner 1:
El código escrito para interpretar tanto la distancia como el ángulo tenía un error: Faltaba una barra horizontal en la parte superior de un símbolo, un vinculum por así decirlo. El rol de la barra era tomar el valor promedio de la primera derivada que marca velocidad (el punto bajo la línea). Al «suavizar» el valor de la velocidad, cualquier fluctuación debería ser eliminada, pero con la ausencia de ese vinculum, el ordenador a bordo del cohete comenzó a recibir información errónea, y con cada intento de compensación se convirtió en un carnaval volador. El origen del error es evidente: No había entornos avanzados de programación ni detección automática de errores. La conversión de código escrito a mano o con máquina de escribir a tarjetas perforadas era lenta, tediosa, y costosa. Por suerte, la NASA encontró el error, aplicó las correcciones necesarias, y Mariner 2 logró lo que su hermano no pudo un mes más tarde.
Fuente:
https://www.neoteo.com/el-error-de-codigo-de-la-nasa-que-costo-150-millones-de-dolares/
Source: Electrónica-pic