Skip to main content
🐛 Tech Bugs

Le bug qui a détruit Mariner 1 : un tiret manquant à 18 millions de dollars

En 1962, une fusée de la NASA a été détruite 293 secondes après son lancement à cause d'un simple caractère manquant dans le code.

Le bug le plus coûteux de l'histoire spatiale

Le 22 juillet 1962, la NASA lance Mariner 1, la première sonde spatiale américaine destinée à survoler Vénus. Moins de 5 minutes après le décollage, les contrôleurs au sol sont forcés de détruire la fusée Atlas-Agena qui transportait la sonde.

La cause ? Un tiret manquant dans le code de guidage.

Que s'est-il passé exactement ?

Le système de guidage de la fusée reposait sur un programme écrit en Fortran. Dans ce code, une formule mathématique cruciale contenait une erreur :

DO 5 K = 1. 3

Au lieu de :

DO 5 K = 1, 3

Vous voyez la différence ? Un point au lieu d'une virgule. En Fortran, cette erreur transforme une boucle en une simple affectation de variable.

Les conséquences en cascade

  1. Le système de guidage a dysfonctionné dès que la fusée a perdu le contact radio avec la station au sol
  2. La trajectoire est devenue erratique et menaçait des zones habitées
  3. L'officier de sécurité a dû activer le système d'autodestruction après 293 secondes de vol

"Le bug le plus coûteux de l'histoire" — c'est ainsi que la presse a qualifié cet incident

Ce que nous enseigne Mariner 1

1. Les petits détails comptent énormément

Un seul caractère mal placé a détruit une mission spatiale entière. Dans le développement logiciel, la rigueur syntaxique n'est pas optionnelle.

2. L'importance des tests

À l'époque, les tests de code étaient rudimentaires. Aujourd'hui, nous avons les tests unitaires, les tests d'intégration et les revues de code — des outils qui auraient pu prévenir cette catastrophe.

3. Les systèmes de secours sont vitaux

Heureusement, le système d'autodestruction a fonctionné. Sans lui, la fusée aurait pu causer des dégâts bien plus graves.

Le coût réel

  • 18,5 millions de dollars de 1962
  • Équivalent à environ 185 millions de dollars aujourd'hui
  • Sans compter les retards de plusieurs mois sur le programme Mariner

La revanche : Mariner 2

Un mois plus tard, le 27 août 1962, Mariner 2 a été lancée avec succès et est devenue la première sonde à effectuer un survol réussi d'une autre planète.


Ce bug nous rappelle une vérité fondamentale du développement : les erreurs les plus simples peuvent avoir les conséquences les plus catastrophiques.