fly me to the moon. Margaret Hamilton


On July 20, 1969, at 20:17:39 GMT, the Apollo 11 lunar module made the first manned landing on another celestial body in human history. An event of great significance, both in terms of science and ideologically, became possible thanks to the selfless work of hundreds of people – technicians, controllers, communications specialists. And, of course, programmers. You know the saying, “Behind every great man is a woman”? So, in the case of Neil Armstrong, Buzz Aldrin and Michael Collins, this is 100% true, although the woman was one in three. And her name is Margaret Hamilton, NASA Code Mistress.

Every story has a beginning, and this one began on August 17, 1936, in Peioli, Indiana, when a girl named Margaret was born to Kenneth and Ruth Hafield. It is known that the average Indiana devotes 40% of his life to growing corn and 10% goes to small things like sleep, food and hide from hurricanes (the other 50% of the time in Indiana is watching NASCAR races). Margaret did not like any of the above, so the girl decided to try her luck somewhere else. The first attempt to overcome the call of the Great Corn was unsuccessful – after studying mathematics for two years in Michigan, Margaret returned home with a bachelor’s degree in mathematics from Earlham College (apparently, in Richmond, the sounds of jazz were louder than the squeal of tires at NASCAR stadiums). There she met a young man named James Hamilton, who was lucky enough to be her husband. Here ends the story of Margaret Hafield and begins the story of Margaret Hamilton.

On the second attempt, Margaret managed to break out of Indiana (although not very far), and she begins to study abstract mathematics at Brandeis University in Boston. However, soon her husband entered Harvard, and then the couple also had a daughter, so Miss Hamilton had to look for some kind of income to provide for a young family. After working as a teacher for some time, she was able to get a job not just anywhere, but even at the famous MIT. Who knew that this, as it then seemed to her, temporary work, would pave the way to the moon?


And even Lego! The official set, by the way.

At MIT, she worked in the laboratory of Professor Edward Lorenz (the creator of chaos theory) and her work consisted in developing a system that predicted the weather. In fact, it was in that laboratory that she first saw a computer. On the one hand, she never dealt with computers. On the other hand, the computer of that time worked on the principle of an algorithm, and Margaret, as an experienced mathematician, was well acquainted with this. She set to work with enthusiasm, and spent two whole years in this position (from 1961 to 1963), and the result of her work was a program designed to track and predict weather phenomena (actually, chaos theory live), also known as the project ” Whirlwind (Project Whirlwind). However, a little later, the US Department of Defense laid its tenacious paw in uniform on the promising program, and converted it into the SAGE program (Semi-Automatic Ground Environment), designed to display a large amount of data from many radars and display them on the screen / screens in the command center to control a large area of ​​\u200b\u200bairspace (in other words, a program so that the bosses with the biggest stars can immediately see where the fun bombers with hammers and sickles are flying on the upholstery). Well, they also took away the lead programmer, because no one understands how it works better than the author of the code. After that, she had to work on some kind of satellite tracking program for the Air Force. Apparently, this quote refers to this period of her life:

In this company, it is customary to give beginners a program that no one can figure out, let alone launch. When I was a trainee, I was also given the same problem. It was a very tricky program, and moreover, the author of the code took pleasure in writing comments to the code exclusively in Greek and Latin. So, I was given this task, and, in fact, I made it work. She even printed the result in Greek and Latin. I was the first one to launch it.

Impressed by the girl’s success, the bosses with the biggest stars offered her a job at NASA. But Margaret had to move up the career ladder gradually. And there was so much work that I even had to take my daughter to work with me.

An interesting episode is connected with this – while working on Apollo 8, little Lauren accidentally launched the pre-launch program at a time when the device was already “in flight”, as a result of which the program crashed and erased all navigation data. The detected error was promptly ignored by the higher authorities, and, as a result, this error was made by the crew already during the actual flight.


Margaret and her daughter Lauren. In the photo, the girl is clearly over four years old.

In the summer of 1968, Margaret finally got the opportunity to work on a real masterpiece – the on-board control computer for Apollo 11. The on-board computer was a real technological miracle – with a fairly modest size (61 cm × 32 cm × 17 cm), it was capable of performing a fairly large number of operations – in theory. These operations had yet to be put into the form of a code, and it was this task that fell on the shoulders of Margaret. Since she had already established herself as a fairly experienced programmer (including with experience in the field of programs for spacecraft), she was immediately put in charge of the software development department. And there were two on-board computers – one on the command module “Columbia”, and the other on the lunar “Eagle”. The task of the department included the development of software that was supposed to work on each module by itself, as well as their common software. As it turned out later, the software turned out to be one of the most important components of the entire lunar program, so that initially a small department grew to 100 people. According to Margaret, the authorities (with and without big stars) did not doubt her competence, but some of the men from her team had certain problems with this, although it never came to outright disobedience. In addition, they all worked on one common cause, and there was no time for strife.


Board computer “Apollo”.

Let’s make a disclaimer right off the bat: Margaret Hamilton didn’t invent the term “software engineering”. Anthony A. Oettinger, professor of applied mathematics and linguistics at Harvard University and president of the Association for Computing Machinery, did so in his letter to the ACM membership, Communications of the ACM, 1966 issue, vol. 9, article (number) 8, page 546). Namely:

We must recognize ourselves […] members of the engineering profession, whether it be hardware or software engineering, professions without artificial and unnecessary distinctions, such as between “theoretical” and “practical” applications.

We must recognize ourselves […] as members of an engineering profession, be it hardware engineering or software engineering, a profession without artificial and irrelevant boundaries like that between ‘scientific’ and ‘business’ applications.

But what she invented is asynchronous processes, when high-priority processes can boorishly interrupt low-priority ones. This was partly due to the previously mentioned Apollo 8 incident, so Margaret chose to add some kind of foolproofing. And, of course, it came in handy.


Margaret in front of supposedly program code. The photo, of course, was staged, and this stack contained literally all the paper that was in Miss Hamilton’s office. But there is some truth in this – something among this mountain of waste paper was indeed the code for the Apollo.

What happened: On July 16, 1969, a launch vehicle was launched from Cape Canaveral with the modules of the Apollo 11 mission and three crew members: Neil Armstrong, Buzz Aldrin and Michael Collins (most interestingly, Armstrong lived in the neighboring state of Indiana – Ohio – and, apparently, also wanted to be away from Nascar and corn). However, a malfunction occurred during the flight – shortly before landing, emergency warnings appeared on the computer’s priority display. As it turned out later, the radar switch (which was needed already for the return flight) was in the wrong position. This resulted in the computer being asked to perform more operations than it was capable of handling. This is where the defense kicked in. In this particular case, the reaction of the software was to suspend the work of low-priority tasks and restart the most important ones. The result is known to everyone – the flight continued as normal, the Apollo landed, “A small step for one person” and further in the text. And all this became possible thanks to the efforts and talent of one person.


This is what the user interface of the board computer looked like. Userfriendly!

Margaret Hamilton is 81 today. She leads Hamilton Technologies. She has published more than 130 scientific papers, papers and reports on 60 projects and six major programs in which she has been involved. The merits of this remarkable woman in space exploration are undeniable, although she is always in the shadow of astronauts and spacecraft designers.

Similar Posts

Leave a Reply

Your email address will not be published. Required fields are marked *