Margaret Hamilton, Lead Software Engineer for NASA’s Apollo 11 Mission
“There was no choice but to be pioneers.”
That’s what Margaret Hamilton has to say about her experience engineering software for NASA at MIT (Massachusetts Institute of Technology) in the 1960s. Back then, software engineering was a relatively obscure profession and regarded by many “as an art and as magic, not a science.” Margaret Hamilton is credited with coining the term “software engineering”–the implementation of programming methodologies used to make a project happen–during her work at MIT and, along with her team, wrote the code for Apollo 11’s on-board flight software.
Margaret Hamilton was born in 1936 in Paoli, Indiana and grew up under the intellectual influence of her family heroes: her father, Kenneth Heafield, a philosopher and poet; and her grandfather, a writer, head schoolmaster, and Quaker minister. She studied mathematics and philosophy at Earlham College, and after graduation married James Hamilton and taught high school mathematics for a time. While her husband attended law school, Hamilton started her career at MIT (Massachusetts Institute of Technology) by programming weather-predicting software.
In the early 1960s Hamilton learned about MIT’s NASA contract to develop the software for sending man to the moon. She knew it would be the opportunity of a lifetime, so she applied and got a job working on the software engineering team.
In her role as a software engineer for the NASA project, and eventually as the lead software engineer at MIT’s Instrumentation Lab, Hamilton coined the very term “software engineering,” as she explains:
“Software during the early days of this project was treated like a stepchild and not taken as seriously as other engineering disciplines, such as hardware engineering…I fought to bring the software legitimacy…and thus I began to use the term ‘software engineering’ to distinguish it from hardware and other kinds of engineering.”
As a young mother, Hamilton often brought her daughter Lauren to the lab on nights and weekends. One day Lauren accidentally crashed the MIT command module simulator by playing with the display-and-keyboard unit, called the DSKY. Hamilton realized that an astronaut could make the same mistake in flight. She encountered resistance in trying to put more error detection and recovery into the software as higher-ups told her: “Astronauts don’t make mistakes. They’re trained to be perfect.”
Fortunately, Hamilton’s recommendations for creating software that could respond to human error were eventually taken seriously. In 1969, during the Apollo 11 mission—the mission to land Neil Armstrong and Buzz Aldrin on the moon—Hamilton’s vision of effective software proved its worth.
Just minutes before Apollo 11 was set to land on the moon, the unexpected happened. Hamilton recalls those crucial moments:
“Due to an error in the checklist manual, the rendezvous radar switch was placed in the wrong position. This caused it to send erroneous signals to the computer. The result was that the computer was being asked to perform all of its normal functions for landing while receiving an extra load of spurious data which used up 15% of its time.
The computer (or rather the software in it) was smart enough to recognize that it was being asked to perform more tasks than it should be performing. It then sent out an alarm, which meant to the astronaut, I am overloaded with more tasks than I should be doing at this time and I am going to keep only the more important tasks; i.e. the ones needed for landing…
The software’s action, in this case, was to eliminate lower priority tasks and re-establish the more important ones…If the computer had not recognized this problem and taken recovery action, I doubt if Apollo 11 would have been the successful moon landing it was.”
Photo Credit: NASA
Among other accomplishments, including becoming the CEO of Hamilton Technologies (the company she started after Higher Order Software), Margaret Hamilton received NASA’s Exceptional Space Act Award in 2003 and, in 2016, President Obama awarded her the Presidential Medal of Honor.
Her advice to young people who want to succeed in STEM careers? “I believe it is…important to learn (or be around) things like music, art, philosophy, linguistics, and math including logic; any of which could help improve one’s being an excellent programmer/problem solver/thinker and to have a more global perspective on things….One should not be afraid to…stand alone or to be different; and not to be afraid to be wrong or to make and admit mistakes, for only those who dare to fail greatly can ever achieve greatly.”