¿Cuáles son las fallas épicas del software que resultan en grandes pérdidas y qué podemos aprender de ellas?

Hay una serie de fallas catastróficas debido a errores de software. Vea aquí Fallos épicos: 11 errores de software infames y aquí Una colección de fallos de software conocidos

Por ejemplo, Ariane 5 Explosion. Este apagado ocurrió 36.7 segundos después del lanzamiento, cuando la propia computadora del sistema de guía intentó convertir una pieza de datos, la velocidad lateral del cohete, de un formato de 64 bits a un formato de 16 bits. El número era demasiado grande y se produjo un error de desbordamiento. Cuando el sistema de guía se apagó, pasó el control a una unidad idéntica y redundante, que estaba allí para proporcionar respaldo en caso de tal falla. Pero la segunda unidad había fallado de la misma manera unos pocos milisegundos antes. ¿Y por qué no? Estaba ejecutando el mismo software. (- de una colección de fallas de software bien conocidas)

La explosión de Ariane 5 nos dice una gran lección. Se aprende mucho de esto, desde la ingeniería de software hasta la administración de software, etc. Como programador, desde la perspectiva de la codificación, al menos, debemos saber que el tipo de conversión (conversión de tipo) suele ser muy malo e ignorar los mensajes de advertencia del compilador también es muy malo.