C omputer pioneer Margaret Hamilton was critical to landing astronauts on the moon for the first time on 20 July 1969 and returning them safely a few days later. The young Massachusetts Institute of Technology (MIT) computer program and working mother led the team that created the onboard flight software for the Apollo missions, including Apollo 1
What got you into software engineering? There were no computer science degrees when you were starting out…
I got married in 1958, just after graduating in math with a minor in philosophy from Earlham College [in Indiana]. We both had assistantships to attend graduate school – me in abstract math and my husband in chemistry – but in the meantime I had taught high school for a year, we had my daughter, and my husband decided he wanted to go to law school at Harvard . I found a job to support our family at the nearby Massachusetts Institute of Technology (MIT). It was in the laboratory of Prof Edward Lorenz, the father of chaos theory, working on a system to predict weather. He was asking for math majors. To take care of our daughter, we hired a babysitter. Here I learned what a computer was and how to write software. Computer science and software engineering were not yet disciplines; instead, programmers learned on the job. Lorenz's software experimentation was contagious, and I caught the bug.
How did you end up joining the Apollo project in 1964?
I had moved to writing software for detecting enemy aircraft at MIT's Lincoln Laboratory. I was planning to resume graduate school when my husband saw a newspaper advert. The MIT Instrumentation Laboratory was looking for people to develop software to send man to the moon. The lab received the NASA contract to build the onboard flight software for the Apollo project, having already been selected to design the computer hardware. I was attracted by the sheer idea and the fact that it had never been done before. I was the first program to join and the first woman they hired. Male engineers were already working on the project, but they were hardware engineers and it wasn't their thing. I had it as my background. I think [the lab] just figured that I could handle the unknown.
You first worked on the software for the unmanned Apollo missions. The software for the spacecraft, including Apollo 11, was developed by the team. What did your job entail?
There were two onboard computers – one on the command module, Columbia, and one on the lunar module. , Eagle. Our task included developing the software to run on each and the systems software they shared. At the beginning, nobody thought software was that big a deal. But then they started to realize how much they were relying on. The group grew so there were approximately 100 software engineers on my team. Astronauts' lives were at stake. Our software needed to be ultra-reliable and needed to detect an error and recover from it at any time during the mission.