
L’informaticienne et mathématicienne américaine Margaret Hamilton s’est éteinte à l’âge de 90 ans. Directrice de la division génie logiciel au sein du MIT Instrumentation Laboratory dans les années 1960, elle a dirigé l’équipe chargée de concevoir les programmes embarqués du module de commande et du module lunaire du programme Apollo. Au-delà de ses réalisations pour la NASA, elle fait partie des figures qui ont formalisé la discipline même de l’ingénierie logicielle (software engineering), imposant la rigueur du code face aux composants matériels à une époque où le développement informatique restait perçu comme une tâche subalterne.
Son travail a joué un rôle déterminant le 20 juillet 1969, lors de la phase d’alunissage d’Apollo 11. Alors que le radar de rendez-vous saturait les processeurs de bord en envoyant des requêtes erronées, l’architecture asynchrone conçue par Margaret Hamilton a permis à l’ordinateur AGC (Apollo Guidance Computer) d’éviter un blocage complet. Son système de hiérarchisation des tâches a automatiquement éliminé les calculs secondaires pour concentrer toute la mémoire disponible sur les manœuvres de descente et le contrôle des moteurs, permettant à Neil Armstrong et Buzz Aldrin de poser l’aigle sur la Lune sans incident technique fatal.
Après l’épopée lunaire, Margaret Hamilton a poursuivi sa carrière dans le secteur privé en cofondant l’entreprise Higher Order Software au milieu des années 1970, avant de lancer Hamilton Technologies en 1986. Ses recherches se sont alors concentrées sur le langage Universal Systems Language (USL) et sur la prévention préventive des bugs dès la phase de spécification mathématique des projets, cherchant constamment à éradiquer les pannes avant même l’écriture des premières lignes d’instructions.
Reconnue tardivement par le grand public grâce à la célèbre photographie la montrant debout aux côtés de la pile imposante des listings papier du code d’Apollo, elle a reçu en 2016 la médaille présidentielle de la Liberté des mains de Barack Obama, la plus haute distinction civile aux États-Unis. Ses méthodes de gestion des priorités et de détection d’erreurs en temps réel restent intégrées dans les principes fondamentaux de l’informatique moderne, des lanceurs spatiaux jusqu’aux systèmes d’exploitation grand public.
