Margaret Hamilton n’était pas censée révolutionner la programmation et permettre aux États-Unis de planter leur drapeau sur la Lune… mais c’est pourtant précisément ce que cette scientifique de génie a fait. Retour sur le destin hors du commun d’une femme l’étant tout autant.
Nous sommes en 1960 aux États-Unis. Margaret Hamilton a 24 ans et vient d’obtenir un poste de programmeuse au Massachusetts Institute of Technology. Avec ce travail, elle espère pouvoir financer les études de son mari à Harvard, qui lui renverra ensuite l’ascenseur pour qu’elle puisse décrocher un diplôme d’études supérieures en mathématiques. Au même moment, le programme spatial Apollo est mis sur les rails, et la nouvelle recrue va réaliser de véritables prouesses.
Le profil de Margaret Hamilton est plutôt atypique dans l’Amérique conservatrice des années 60, où le rôle de la femme se résume souvent à élever les enfants. Cette mère d’une fillette de quatre ans, prénommée Lauren, n’hésite pas à l’emmener avec elle dans les laboratoires du MIT lorsqu’elle travaille tard le soir et les week-ends. Ces interminables journées de travail vont lui permettre de créer les algorithmes nécessaires au fonctionnement du système embarqué du programme Apollo.
Margaret affectionne particulièrement l’esprit de camaraderie qui règne au sein de son équipe ainsi que les longues discussions enflammées autour d’un bon verre une fois la journée terminée. Dans les couloirs du célèbre institut de recherche, peu de gens se doutent de son importance, mais dans son laboratoire, elle joue un rôle central.
Malheureusement, à l’instar des nombreuses femmes travaillant dans le domaine de l’industrie et de la technologie, Hamilton est confrontée au sexisme ambiant de l’époque, et sa contribution aux projets importants auxquels elle participe n’est que peu mise en avant.

En 1961, le monde de l’informatique est sur le point de changer du tout au tout avec le programme Apollo lancé par John F. Kennedy, et il en va de même pour la carrière de Margaret Hamilton. La scientifique et ses collègues du MIT écrivent le code qui va permettre de créer un ordinateur embarqué révolutionnaire.
Hamilton devient une véritable experte en programmation, à une époque où cette discipline n’en est encore qu’à ses balbutiements. C’est elle qui va en établir les fondations, sur lesquelles reposent encore aujourd’hui de nombreux logiciels.
Au début des années 1960, le concept de programme informatique reste extrêmement flou et aucun budget spécifiquement alloué à son développement. Mais à mesure que le projet progresse, la NASA prend conscience qu’il jouera un rôle central dans la réussite des missions spatiales et lunaires. En 1965, Hamilton devient officiellement directrice du département génie logiciel du MIT Instrumentation Laboratory, chargé de concevoir le système embarqué du programme Apollo.
Cette période riche en avancées scientifiques et technologiques ne laisse que peu de répit à Hamilton. La pression qui pèse sur ses épaules est énorme, et il n’est pas rare qu’elle passe des nuits entières à plancher sur son code.

À la mi-1968, plus de 400 personnes travaillent sur le logiciel d’Apollo, car il représente le sésame qui permettra à l’Amérique de distancer l’URSS dans leur course à la Lune. Une réalisation qui contribuera à tracer les contours du monde numérique tel que nous le connaissons aujourd’hui.
La programmation de l’époque consiste à perforer des piles de cartes qui sont ensuite traitées par un ordinateur central géant baptisé Honeywell, chargé de simuler le fonctionnement de l’atterrisseur Apollo. Une fois le code éprouvé, il est transmis à un groupe de couturières expertes qui filent des fils de cuivre à travers des anneaux magnétiques (1 en code binaire), ou les contournent (0 en code binaire).
Bien avant l’invention de la mémoire vive et des lecteurs de disquettes, la mémoire du système embarqué du programme Apollo est littéralement câblée… et presque indestructible.
Les vols d’Apollo vont nécessiter l’utilisation de deux machines « portables » quasi identiques : la première sera intégrée au module lunaire, et la seconde au module de commande qui permet de transporter les astronautes depuis la Terre. Ces ordinateurs pesant chacun 70 kilos sont uniques en leur genre : ils sont notamment les premiers à utiliser des circuits intégrés plutôt que des transistors, et à intégrer une technologie de pilotage automatique, précurseur de celle employée aujourd’hui par nos avions de ligne.

Le système est capable de stocker plus de 12 000 instructions dans sa mémoire permanente (les fameuses cordes de cuivre patiemment filées par les couturières), et 1 024 dans sa mémoire temporaire et effaçable. Si cette technologie semble aujourd’hui bien archaïque, c’est bien elle et le logiciel codé par Hamilton et son équipe qui vont permettre à Neil Armstrong de poser le pied sur la Lune.
Nous sommes le 20 juillet 1969, seulement quelques minutes avant que le module Eagle d’Apollo 11 ne touche la mer de la Tranquillité. Durant cette phase critique de la mission, l’ordinateur Apollo commence à afficher des messages d’erreur particulièrement inquiétants. Cela est en réalité dû à des calculs inutiles à la réussite de l’alunissage qui submergent sa mémoire. Mais grâce au traitement asynchrone de la machine et au code patiemment développé par Hamilton et son équipe, le logiciel fait fi de ces erreurs et donne la priorité aux opérations indispensables à l’alunissage : la mission est couronnée de succès.
Quelques années plus tôt, sa fille avait accidentellement lancé un programme en jouant avec les touches du terminal alors que le simulateur était en plein vol. Persuadée que cela pourrait arriver à un astronaute, Hamilton avait proposé d’ajouter du code pour éviter le crash, une proposition rejetée par la NASA qui estimait que ses astronautes étaient parfaitement entraînés et ne commettraient pas d’erreurs.
Mais c’est précisément ce qui s’est produit fin 1968, seulement cinq jours après le vol historique d’Apollo 8 qui avait orbité pour la première fois la Lune. Lorsque l’astronaute Jim Lovell a accidentellement enclenché la commande P01 durant le vol, toutes les données de navigation collectées devant lui permettre de revenir sur Terre se sont effacées. Hamilton et son équipe ont redoublé d’efforts, et sont finalement parvenus à télécharger de nouvelles données de navigation depuis Houston.

Les travaux de Margaret Hamilton ont été non seulement indispensables à la conquête spatiale et à la réussite des missions Apollo, mais ont aussi contribué à façonner le monde numérique moderne en faisant progresser significativement le génie logiciel. Une contribution essentielle, mais aujourd’hui encore sous-estimée.
Pour aller plus loin, découvrez aussi ces 30 femmes qui ont révolutionné des milieux dominés par les hommes.
