Margaret Hamilton not only led the Apollo Flight Software Development team to help get us on the moon, she helped establish Software Engineering as a legitimate engineering discipline. She was a pioneering computer scientist who led the MIT Instrumentation Laboratory’s Software Engineering Division, founded two software companies, published over 130 papers, successfully tackled a notoriously difficult programming assignment on the SAGE Air defense project, and was given the Presidential Medal of Freedom in 2016, among her many accomplishments.
(Photo: NASA, via Wikimedia Commons (public domain)
Margaret Hamilton died on September 30th 2026 in Cambridge, Massachusetts at the age of 90, reported by MIT, with the cause of death unknown. Hamilton is survived by her daughter, her son-in-law, two grandsons, and four great grandchildren. A memorial service will take place in the spring in Cambridge, MA.
- See also: Her software put men on the moon. Fifty years later, Margaret Hamilton got a glowing moonlit tribute – CNN 2019 Article
A pioneer of defensive programming
Much like how Error Correcting Code Memory (ECC) anticipates and corrects certain data errors before they compromise a computer’s operation, defensive programming anticipates unexpected conditions and provides safeguards to prevent software failures.
Margaret Hamilton helped pioneer this philosophy during the Apollo program, decades before such practices became commonplace in modern software engineering.
- Apollo 11 landing: The Apollo Guidance Computer was dealing with counter interrupt signals caused by incorrectly phased power supplied to the lander’s rendezvous radar (a design flaw), and those signals took some of the computer’s processing time/power, unbeknownst to anyone during the mission. Hamilton’s software is what stopped the AGC from attempting to swap the computer’s primary processing over to a radar system just three minutes before touchdown, preventing a mission abort.
. - Apollo 8 mission and the Lauren error: Margaret proposed a software patch which prevented the pre-launch program “P01” from being accidentally executed mid-flight, but this idea was rejected prior to the Apollo 8 mission. One day while she was working at the Instrumentation Lab, her daughter Lauren was playing around in the Command Module Simulator, and managed to launch the pre-launch program while the simulation was in mid-flight – which crashed the simulation, and then led to Margaret’s proposed idea. The same exact scenario happened during the actual Apollo 8 mission, and the on-flight navigation data disappeared after Jim Lovell accidentally activated the pre-launch during the flight. After this incident, her proposal was integrated into the program. She also had to be called-in along with her team to fix the issue.
. - Priority displays for the AGC: Rather than relying on astronauts to notice something going wrong, the software could proactively alert the crew to any emergencies.
. - Extensive simulation testing: many rigorous tests were done by her team to anticipate flight errors.
. - USE.IT (After Apollo): A software development tool which helped engineers create logically consistent, and complete software specifications earlier in development versus debugging.
. - Universal Systems Language: Hamilton developed USL, a formal systems-design language.
. - 001 Tool Suite: Created by Hamilton Technologies, Inc (Founded by Margaret Hamilton), it is an integrated systems engineering and software development environment.
“If the computer hadn’t recognized this problem and taken recovery action, I doubt if Apollo 11 would have been the successful moon landing it was,” – Margaret Hamilton writes to Datamation, a computer magazine, in 1971. She worked on the 6 lunar landing missions from 1969 – 1972.
Beyond Apollo
Hamilton also led onboard flight software work associated with Skylab, her companies applied high-reliability software methodologies to defense projects, and she contributed to the early design of the space shuttle, including the groundwork for the early digital fly-by-wire systems used by Aircraft.