American computer scientist Margaret Hamilton (born 1936) was the lead software engineer for the U.S. space program during its triumphant years in the 1960s. Hamilton is credited with coining the term “software engineering,” and she personally wrote code that proved crucial during the moonlanding phase of the Apollo 11 mission.
At the time Margaret Hamilton joined the National Aeronautic and Space Administration (NASA) as a computer programmer, software was just beginning to come into use within the field of aeronautical navigation. As the leading programmer, she established an organized approach to the software-development project, and the concepts she and her team introduced to the field of navigational software have remained influential since the Apollo years.
Hamilton was born Margaret Heafield on August 17, 1936, in the small town of Paoli, Indiana; she was the oldest of three children born to Kenneth and Ruth Partington Heafield. After graduating from high school, she enrolled briefly at the University of Michigan but soon transferred to Earlham College in Indiana, graduating in 1958 with a major in mathematics and a minor in philosophy. As a student at Earlham she was named homecoming queen, and she began dating the student body president, James Cox Hamilton. The two were married in the late 1950s and would raise a daughter, Lauren, before the marriage ended in divorce.
While her husband finished his undergraduate degree, Hamilton taught high-school mathematics and French. In 1958, the pair moved east, to Boston. She considered applying to Brandeis University for a graduate program in math, but instead, after James was admitted to Harvard Law School, the couple decided that she would work while he finished his three-year program there. Then, according to the plan, it would be her turn to pursue graduate study. So the 24-year-old Hamilton applied for and received a job as a programmer at the Massachusetts Institute of Technology (MIT). She had taught herself programming, which was not unusual at the time as the field was in its infancy.
For a time, Hamilton worked at nearby Lincoln Labs in Lexington, Massachusetts, on a military application: the AN/FSQ-7 Combat Direction Central computer, which was part of the cold war–era SAGE/Missile Master system. Hamilton's programming efforts were part of a radar system used to detect objects that might possibly be planes sent to attack the United States. After one unmanned plane took off, Hamilton recalled, “people came in to tell me that the lunar landmark tables were in upside down and backwards…. And I believed, until it landed, and [I] heard on the news everything was okay, that I was in real trouble because I was involved with those algorithms.”
At Lincoln Labs, Hamilton paid close attention to her male superiors and tried to learn as much as she could. In 1963, she returned to MIT and worked briefly on a meteorology project before one of of her mentors, Dan Lickly, hired her to staff a new team for the Apollo space program, whose early computing operations were managed by MIT. Hamilton sometimes brought four-year-old Lauren to her office overlooking the Charles River in Cambridge, as she often worked overtime on nights and weekends. At Apollo, unlike at Lincoln Labs, she was the only woman, but as she recalled to Robert McMillan for Wired, “I was one of the guys,” and went with the group for after-work drinks at MIT's faculty club.
Programming as it is done today was quite new at the time; older computers were mainframes directly manipulated by their operators. “When I first got into it, nobody knew what it was that we were doing,” Hamilton recalled to McMillan in Wired. “It was like the Old West.” After she and her growing team finished a batch of code, it would be processed on a Honeywell mainframe computer that served as a simulator for the Apollo mission. The code was entered into an Apollo computer's memory by seamstresses referred to within the Apollo program as Little Old Ladies; they threaded copper wire through (for a 1) or around (for a zero) magnetic rings. Memory of this kind, noted McMillan, “was literally hardwired and very nearly indestructible.”
The pressure of being part of a team launching humans into space for the first time was intense, and Hamilton constantly worried about somehow causing a disaster that would propel her to notoriety on national television. As she worked on code for the Apollo 8 mission, the first to orbit the moon, her daughter Lauren was playing with the simulator and accidentally launched a program called P01, which was intended for use prior to launch. The system crashed, causing Hamilton to consider what would happen if one of the astronauts did the same during the spaceflight. Although she was assured that such a thing could never happen, in fact it did: astronaut Jim Lovel accidentally selected the P01 program during a test run. Hamilton and her team succeeded in uploading new navigational data to the spacecraft and preventing a disaster, but it was clear to her that for the Apollo 11 moon landing mission she had to redouble her efforts at error prevention.
Hamilton could not have known how right her instincts were. In programming for Apollo 11, she programmed an error-recognition routine that forced the computer to prioritize tasks if conflicting demands were made on its limited memory. As it happened, on the landmark day of July 20, 1969, as the Apollo 11 craft approached the lunar Sea of Tranquility, its onboard computer began generating error messages—it became overloaded when asked to process incoming data from an onboard radar system. At that point, Hamilton's routine kicked in and the lunar landing remained on track. “It got rid of the lesser priority jobs and kept the higher priority jobs, which included the landing functions,” she explained to Time magazine contributor Lily Rothman. Several observers have contended that, without Hamilton's contribution, mission commander Neil Armstrong's famous moonwalk might not have occurred that day.
Hamilton later recalled that she was more excited that her programs had worked as intended than she was about the actual moonwalk, and indeed the amount of work she had put in on the mission was extraordinary. An oftenreproduced 1969 photograph that ran in Time and elsewhere shows Hamilton beside a stack of the printed-out code created for the Apollo 11 mission; the stack was taller than she was. The code was not the work of Hamilton alone, of course; by this time, as a supervisor at the MIT Instrumentation Laboratory supervisory team, she headed a group of approximately 100 programmers, engineers, mathematicians, and technical writers. She was in charge of software development for both the Apollo 11 command module and its lunar landing machinery.
Hamilton continued to work for the Apollo program until NASA took it over from MIT. For many years, her pioneering role in the Apollo program received little recognition, but in 1986 she received the Augusta Ada Lovelace Award from the Association of Women in Computing, one of several awards she would receive. Her nominator for the NASA award recognized that such concepts as priority scheduling, end-to-end-testing, and priority displays had become influential in software design both inside and beyond the U.S. space program. In November of 2016 Hamilton was honored with the Presidential Medal of Freedom, the highest civilian award the nation can bestow.
The concept of software reliability has been central to Hamilton's career since her days with NASA. She cofounded the firm Higher Order Software, which took its name from a term she had used at NASA to describe the fail-safe systems on which she had worked. Then, in 1986, she founded Hamilton Technologies, Inc., located in offices in Cambridge, only a few blocks from MIT. The Hamilton Technologies website promotes the company's Universal Systems Language, which “is based on a preventive, development-before-the-fact philosophy that does not allow errors in, in the first place.” As of 2016, Hamilton, aged 80, was still the firm's chief executive officer.
Wayne, Tiffany K., American Women of Science since 1900, ABC-CLIO, 2010.
States News Service, August 17, 2016.
Apollo 11 Lunar Surface Journal online, https://www.hq.nasa.gov/alsj/ (September 3, 2003), “NASA Honors Apollo
Engineer.” Hamilton Technologies website, http://htius.com (August 30, 2016).
Medium online, https://medium.com/@verne/ (December 25, 2014), Jaime Rubio Hancock, interview with Hamilton.
New England Historical Society online, http://www.newenglandhistoricalsociety.com/ (August 30, 2016), “Margaret Hamilton, the Woman Who Put the Man on the Moon.”
Time, http://time.com/ (July 20, 2015), Lily Rothman, “Remembering the Apollo 11 Moon Landing with the Woman Who Made It Happen.”
Wired online, https://www.wired.com/ (October 2015), Robert McMillan, “Her Code Got Humans on the Moon—And Invented Software Itself.”❑