Margaret Hamilton, ingénieure et informaticienne, n’a jamais voulu inventer le concept moderne du logiciel et débarquer les hommes sur la lune. En 1960, les femmes ne sont pas franchement encouragées à rechercher ce type de job. Etudiante avec un diplôme de premier cycle en mathématiques, elle devait soutenir son mari pendant ses trois années à Harvard Law. Après, ce serait son tour pour obtenir un diplôme d’études supérieures en mathématiques. Drôle d’histoire. 

 

Puis Apollo est arrivé, et Hamilton est restée dans le laboratoire pour mener un exploit épique d’ingénierie qui aiderait à changer l’avenir de ce qui était humainement et numériquement possible. D’ailleurs, elle était mère et ramenait sa fille au laboratoire tous les soirs et les weekends. Pendant que Lauren, 4 ans, dormait à même le sol, sa mère configurait le module de commande. 

Non sans recevoir les critiques de celles et ceux qui la culpabilisaient de faire vivre cela à son enfant, Margaret Hamilton était une aberration, tant elle continuait à s’intégrer parmi « les gars », supportant les blagues de geeks.

Alors que la carrière de Hamilton commençait, le monde du logiciel était sur le point de faire un pas de géant, grâce au programme Apollo lancé par John F. Kennedy en 1961. Au MIT au Massachussetts Institute of Technology où travaillait Hamilton, elle et ses collègues inventaient des idées de base dans la programmation informatique comme ils ont écrit le code pour le premier ordinateur portable au monde. Elle est devenue experte en programmation de systèmes et a gagné des arguments techniques importants. « Quand je suis entrée dans le jeu, personne ne savait ce que nous faisions. C’était comme le Far West. Il n’y avait pas de cours la dessus. Ils ne l’avaient pas enseigné « , dit Hamilton.

C’était une décennie avant Microsoft et près de 50 ans avant que Marc Andreessen remarque que le logiciel est en train de «manger le monde». Le monde ne pensait pas du tout aux logiciels au début d’Apollo. Le document original exposant les exigences techniques de la mission Apollo ne mentionne même pas le mot «logiciel», écrit le professeur d’aéronautique du MIT, David Mindell, dans son livre Digital Apollo. « Le logiciel n’était pas inclus dans le calendrier, et il n’était pas inclus dans le budget. » Pas au début, de toute façon.

En 1965, Hamilton devient responsable du logiciel de vol à bord des ordinateurs Apollo. Une fois, après une soirée, elle se précipite vers le laboratoire d’informatique pour corriger un morceau de code dont elle s’était soudainement rendu compte qu’il était défectueux.

Pour Hamilton, programmer signifiait percer des trous dans des piles de cartes perforées, qui seraient traitées du jour au lendemain en lots sur un ordinateur central géant qui simulait le travail de l’atterrisseur Apollo. 

« Nous avons dû tout simuler avant « , se souvient Hamilton. Une fois que le code était solide, il était expédié vers une installation voisine de Raytheon où un groupe de femmes, couturières expertes connues sous le nom de «Little Old Ladies», filaient des fils de cuivre à travers des anneaux magnétiques.

(Et les femmes n’y étaient pas ? )


Les vols d’Apollo ont porté deux machines presque identiques : l’une utilisée dans le module lunaire – l’Aigle qui a atterri sur la lune – et l’autre pour le module de commande qui a transporté les astronautes vers et depuis la Terre. « Nous avons montré que cela pouvait être fait. Nous l’avons fait dans ce qui semble aujourd’hui une mémoire incroyablement petite et une vitesse de calcul très lente. »

Sans cela, Neil Armstrong n’aurait pas réussi à atteindre la lune. Et sans le logiciel écrit par Hamilton, Eyles, et l’équipe d’ingénieurs MIT, l’ordinateur aurait été un raté.

Cela est devenu clair le 20 juillet 1969, quelques minutes avant qu’Apollo 11 ne touche la mer de la tranquillité. En raison de ce que Don Eyles, ingénieur en logiciel d’Apollo, a qualifié d ‘ »erreur de documentation », l’ordinateur Apollo a commencé à cracher des messages d’erreur inquiétants au cours de cette phase critique de la mission. Mais voici où les arguments techniques remportés par Hamilton et d’autres ont sauvé la partie. Les messages d’erreur apparaissaient parce que l’ordinateur était submergé, chargé de faire une série de calculs inutiles alors qu’en fait, c’était le plus nécessaire pour atterrir le module sur la surface de la lune. De retour à Houston, les ingénieurs savaient qu’en raison du traitement asynchrone unique d’Apollo, l’ordinateur se concentrerait sur la tâche à accomplir: l’atterrissage de l’aigle sur la mer de tranquillité. « Quand le logiciel a réalisé qu’il n’avait pas assez de place pour faire toutes les fonctions qu’il était supposé faire, il est passé par son processus de détection d’erreur et s’est concentré sur le travail le plus prioritaire », dit Hamilton.

Un jour, Lauren jouait avec l’unité d’affichage et de clavier du simulateur de module de commande MIT, surnommée la DSKY (dis-key). Alors qu’elle jouait avec le clavier, un message d’erreur apparut.

Lauren s’était écrasée sur le simulateur en lançant d’une manière ou d’une autre un programme de pré-lancement appelé P01 alors que le simulateur était en plein vol. Il n’y avait aucune raison qu’un astronaute fasse cela, mais néanmoins, Hamilton voulait ajouter du code pour éviter le crash.

Cette idée a été rejetée par la NASA. «On nous avait souvent dit que les astronautes ne commettraient aucune erreur», dit-elle. «Ils ont été formés pour être parfaits». Hamilton a donc créé une note de programme – un ajout à la documentation du programme qui serait disponible pour les ingénieurs de la NASA et les astronautes: «Ne sélectionnez pas P01 pendant le vol». Hamilton voulait ajouter un code de vérification des erreurs au système Apollo pour éviter que cela ne gâche les systèmes. Mais cela semblait excessif à ses supérieurs. « Tout le monde a dit: » Cela n’arrivera jamais « , se souvient Hamilton.

Mais ça l’a fait.

Aux alentours de Noël 1968 – cinq jours après le vol historique d’Apollo 8, qui a amené les astronautes sur la lune pour la toute première orbite habitée – l’astronaute Jim Lovell a accidentellement choisi P01 pendant le vol.

Hamilton était dans la salle de conférence du deuxième étage du Laboratoire d’instrumentation quand l’appel est arrivé de Houston. Le lancement du programme P01 avait effacé toutes les données de navigation collectées par Lovell. C’était un problème. Sans ces données, l’ordinateur Apollo ne serait pas en mesure de trouver comment ramener les astronautes à la maison. Hamilton et les codeurs du MIT devaient trouver une solution; et il devait être parfait.

 

Après avoir passé neuf heures à scruter la liste des programmes de 8 pouces sur la table devant eux, ils avaient un plan. Houston téléchargerait de nouvelles données de navigation. Tout allait bien se passer. Grâce à Hamilton – et Lauren – les astronautes d’Apollo sont rentrés à la maison.

 

Capucine

© Women Side 2019 – Tous droits réservés

 

Laisser un commentaire