ArticleslgStudy

computer science

Margaret Hamilton (software engineer)

Margaret Hamilton (software engineer) is a computer science topic covered in the lgStudy science library. This page brings together a partial reference excerpt, illustrations, worked examples, real-world applications and a short study plan, so you can understand Margaret Hamilton (software engineer) rather than just read about it. In short: Margaret Elaine Hamilton (née Heafield; born August 17, 1936) is an American computer scientist. She directed the Software Engineering Division at the MIT Instrumentation Laboratory, where she led the development of the on-board flight software for NASA's Apollo Guidance Computer for the Apollo program.

Margaret Hamilton (software engineer) — main illustration
Margaret Hamilton (software engineer) — illustration

Key takeaways

  • Margaret Hamilton (software engineer) belongs to computer science; place it in that map before memorising details.
  • Learn the definition first, then one example that makes the definition concrete.
  • Connect Margaret Hamilton (software engineer) to a quantity you can measure, compute or draw — that is where exam questions come from.
  • Reproduce the core statement of Margaret Hamilton (software engineer) from memory before moving on to harder problems.

Reference excerpt

Margaret Elaine Hamilton (née Heafield; born August 17, 1936) is an American computer scientist. She directed the Software Engineering Division at the MIT Instrumentation Laboratory, where she led the development of the on-board flight software for NASA's Apollo Guidance Computer for the Apollo program. She later founded two software companies, Higher Order Software in 1976 and Hamilton Technologies in 1986, both in Cambridge, Massachusetts. Hamilton has published more than 130 papers, proceedings, and reports, about sixty projects, and six major programs. She coined the term "software engineering", stating, "I began to use the term 'software engineering' to distinguish it from hardware and other kinds of engineering, yet treat each type of engineering as part of the overall systems engineering process." On November 22, 2016, Hamilton received the Presidential Medal of Freedom from President Barack Obama for her work leading to the development of on-board flight software for NASA's Apollo Moon missions.

Early life and education Margaret Elaine Heafield was born August 17, 1936, in Paoli, Indiana, to Kenneth Heafield and Ruth Esther Heafield (née Partington). The family later moved to Michigan, where Margaret graduated from Hancock High School in 1954. She studied mathematics at the University of Michigan in 1955 before transferring to Earlham College, where her mother had been a student. She earned a BA in mathematics with a minor in philosophy in 1958. She cites Florence Long, the head of the math department at Earlham, as helping with her desire to pursue abstract mathematics and become a mathematics professor. She says her poet father and headmaster grandfather inspired her to include a minor in philosophy in her studies.

Career In Boston, Hamilton initially intended to enroll in graduate study in abstract mathematics at Brandeis University. However, in mid-1959, Hamilton began working for Edward Norton Lorenz, in the meteorology department at Massachusetts Institute of Technology (MIT). She developed software for predicting weather, programming on the LGP-30 and the PDP-1 computers at Marvin Minsky's Project MAC. Her work contributed to Lorenz's future publications on chaos theory, as acknowledged by Lorenz himself. At the time, computer science and software engineering were not yet established disciplines; instead, programmers learned on the job with hands-on experience. She moved on to another project in the summer of 1961, and hired and trained Ellen Fetter as her replacement.

SAGE Project From 1961 to 1963, Hamilton worked on the Semi-Automatic Ground Environment (SAGE) Project at the MIT Lincoln Lab, where she was one of the programmers who wrote software for the prototype AN/FSQ-7 computer (the XD-1), used by the U.S. Air Force to search for possibly unfriendly aircraft. She also wrote software for a satellite tracking project at the Air Force Cambridge Research Laboratories. The SAGE Project was an extension of Project Whirlwind, started by MIT to create a computer system that could predict weather systems and track their movements using simulators. SAGE was soon developed for military use in anti-aircraft air defense. Hamilton said:

What they used to do when you came into this organization as a beginner, was to assign you this program which nobody was able to ever figure out or get to run. When I was the beginner they gave it to me as well. And what had happened was it was tricky programming, and the person who wrote it took delight in the fact that all of his comments were in Greek and Latin. So I was assigned this program and I actually got it to work. It even printed out its answers in Latin and Greek. I was the first one to get it to work. It was her efforts on this project that made her a candidate for the position at NASA as the lead developer for Apollo flight software.

MIT Instrumentation Laboratory and the Apollo Guidance Computer

Hamilton learned of the Apollo project in 1965 and wanted to get involved due to it being "very exciting" as a Moon program. She joined the MIT Instrumentation Laboratory, which developed the Apollo Guidance Computer for the Apollo lunar exploration program. Hamilton was not the first programmer hired for the Apollo project at MIT (despite ), because she joined several years after the project started in 1961. Hamilton was the first female programmer in the project, and later became Director of the Software Engineering Division. She was responsible for the team writing and testing all onboard in-flight software for the Apollo spacecraft's Command and Lunar Module and for the subsequent Skylab space station. Another part of her team designed and developed the systems software. This included error detection and recovery software such as restarts and the Display Interface Routines (also known as the Priority Displays), which Hamilton designed and developed. She worked to gain hands-on experience during a time when computer science courses were uncommon and software engineering courses did not exist.

Apollo 11 landing In one of the critical moments of the Apollo 11 mission, the Apollo Guidance Computer, together with the on-board flight software, averted an abort of the landing on the Moon. Three minutes before the lunar lander reached the Moon's surface, several computer alarms were triggered. According to software engineer Robert Wills, Buzz Aldrin entered the codes to request that the computer display altitude and other data on the computer's screen. The system was designed to support seven simultaneous programs running, but Aldrin's request was the eighth. This action was something he requested many times while working in the simulator. The result was a series of unexpected error codes during the live descent. The on-board flight software captured these alarms with the "never supposed to happen displays" interrupting the astronauts with priority alarm displays. Hamilton had prepared for just this situation years before:

… excerpt ends here. Continue reading the full article.

Illustrations

Margaret Hamilton (software engineer) illustration
Margaret Hamilton (software engineer): Hamilton in 1969, standing next to listings of the Apollo guidance software she and her MIT team produced[21][22]
Hamilton in 1969, standing next to listings of the Apollo guidance software she and her MIT team produced[21][22]
Margaret Hamilton (software engineer): Hamilton during her time as lead Apollo flight software designer[23]
Hamilton during her time as lead Apollo flight software designer[23]
Margaret Hamilton (software engineer): Official photo for NASA, 1989
Official photo for NASA, 1989
Margaret Hamilton (software engineer): Barack Obama awards the Presidential Medal of Freedom to Hamilton in 2016
Barack Obama awards the Presidential Medal of Freedom to Hamilton in 2016

Worked examples

Example 1 — a first encounter with Margaret Hamilton (software engineer)

Start with the simplest possible case. Write down what Margaret Hamilton (software engineer) claims or describes in one sentence, then invent the smallest concrete situation in which that sentence is true. In computer science, the smallest case is usually a single object, a single equation or a single measurement. Check that every symbol or term in your sentence has a meaning in that case.

Example 2 — changing one variable

Take the situation from Example 1 and change exactly one quantity: double it, halve it, or set it to zero. Predict what should happen to Margaret Hamilton (software engineer) before you calculate. Comparing your prediction with the result is the fastest way to find out whether you understand the idea or only the words.

Example 3 — an exam-style question

Typical questions about Margaret Hamilton (software engineer) ask you to (a) state it precisely, (b) apply it to given data, and (c) explain a limitation. Practise writing all three answers in under five minutes; the third part is what separates a full-mark answer from an average one.

Applications of Margaret Hamilton (software engineer)

In research
Margaret Hamilton (software engineer) appears in computer science research whenever the underlying quantities have to be modelled precisely. Papers usually cite it as a starting assumption and then explore where it breaks down.
In technology and industry
Engineering practice reuses Margaret Hamilton (software engineer) in design rules, simulations and safety margins. Knowing the idea lets you read a specification sheet and understand why the numbers look the way they do.
In the classroom
Margaret Hamilton (software engineer) is common in secondary-school and first-year university syllabi. It links to neighbouring topics 1936 births, 20th-century American women scientists, 21st-century American women, so understanding it makes those chapters shorter.
In everyday life
Look for Margaret Hamilton (software engineer) outside the textbook — in sport, cooking, traffic, electronics or the sky above you. An example you found yourself is remembered far longer than one you were given.
Ask Teacher Smith questions about this articleOpens your AI tutor with a question about “Margaret Hamilton (software engineer)” →

Affiliate

Preply — study more efficiently by working with a personal tutor. 50% off.

How to study Margaret Hamilton (software engineer) in 20 minutes

  1. Read the reference excerpt below once, without taking notes.
  2. Close the page and write down what Margaret Hamilton (software engineer) means in your own words.
  3. Compare your version with the excerpt and mark what you missed.
  4. Work through the three examples above with pen and paper.
  5. Explain Margaret Hamilton (software engineer) out loud to somebody else — or to Teacher Smith in the lgStudy chat.

Frequently asked questions

What is Margaret Hamilton (software engineer) in simple terms?

Margaret Elaine Hamilton (née Heafield; born August 17, 1936) is an American computer scientist. She directed the Software Engineering Division at the MIT Instrumentation Laboratory, where she led the development of the on-board flight software for NASA's Apollo Guidance Computer for the Apollo pro…

Why does Margaret Hamilton (software engineer) matter?

Because it connects several computer science ideas at once: it gives you a definition you can apply, a quantity you can calculate, and a way to check whether a result is plausible.

How should I study Margaret Hamilton (software engineer)?

Read the excerpt, restate it from memory, then work through the examples and applications listed on this page. The five-step study plan above takes about twenty minutes.

What does this page cover?

It gives you a compact reference excerpt plus original lgStudy explanations, examples, applications and study material on Margaret Hamilton (software engineer).

Tags

  • 1936 births
  • 20th-century American women scientists
  • 21st-century American women
  • American computer programmers
  • American computer scientists
  • American software engineers
  • American women academics
  • American women computer scientists
  • Apollo 11
  • Apollo program
  • Earlham College alumni
  • Living people

Keep exploring