Margaret Hamilton and the Moon

Margaret Hamilton is a name that you won’t recognize.  It’s a shame as she was in charge of the programming teams that designed, and built, the software for the Lunar and Command Modules that got man to the moon.

A hard task for anyone but a WOMAN!  A youngish one at that – She was in her early 30s when Project Apollo was happening as well as a mother of a young daughter!  In the male dominated science of engineering ( this is before the term, and discipline of, Software Engineering was invented ) MIT & Draper Labs put their faith in a young woman to take command of such a critical part of the entire Apollo program.  One of the people responsible for the safe landing of the Apollo 11 Lunar Lander.

A lot of the ideas from that, in today’s terms, primitive computer are still with us today in different ways.  Controlling programs dependent on its priority.  Robustness of the operating system to carry on whatever problems may arise.  Reliability was one of the key aspects of the Apollo Guidance Computer (AGC).  It couldn’t afford to fail.  It didn’t.  It performed flawlessly even if upper management didn’t have as much faith in this new fangled invention.

Below is one of the best images from the entire of the Apollo program.  It always makes me smile.  It’s just so simple but it shows a lot.  A lot of hard work over years.  As a programmer I do understand the process.  The highs and lows of trying to get a system working.  It’s a lot of hard work from a small team with an amazingly tight deadline for what was required.  Unlike today, we can just go and get the relevant hardware almost “off the shelf”.  We don’t have to first design the hardware that this, groundbreaking, software was to run on.

Margaret Hamilton
Taken by the Draper Lab photographer in 1969. Here, Margaret [Hamilton] is shown standing beside listings of the software developed by the team she was in charge of, the LM and CM on-board flight software team.
Not only that, she seemed to be very hands on, like the below image.  Learning about the rest of the systems that “her” computer would have to interact with as well as making sure that the “man” was allowed to override the computer if needed.

She, and her team, are the people who saved the Apollo 11 mission.  With her software, the AGC could recover from problems, manage its own workload and recognize what programs weren’t needed at any stage.  These could then be “put on the back burner” until needed.  This recovered from the famous 1201/1202 errors that Apollo 11 encountered when the LM was on her final approach to landing on the moon.

The entirety of the AGC code is now available to view and understand on the web.  You can now understand how the 1201/1202 errors worked and how the software figured out, autonomously, how to carry on.  Not only that, there are some great comments in the code.  It’s nice to see that engineers & programmers have always done this.  I still do this today.  Sometimes for my own amusement, other times just to confuse the next programmer who has to enhance my code.

There are other women that are forgotten.  The women who actually “knitted” the programs so they could go to space.  I have mentioned these “Little Old Ladies” before but their contribution to getting to the moon cannot be overlooked.  Other women that are forgotten are NASA’s computers.  The women, mostly black, who worked tirelessly in confirming that calculations were correct.  These Hidden Women are now to be recognized in a film about their amazing contribution to this Herculean task.