Margaret Hamilton
She led the MIT Instrumentation Laboratory teams that wrote the on-board flight software for Apollo's Command and Lunar Modules, and she gave a new discipline its name: software engineering. When the Lunar Module's computer was overloaded in the minutes before the first Moon landing, her software did what it had been designed to do: put first things first.
In her words
The five alarms
The rendezvous radar was feeding the computer phantom work, and its electronics were stealing about 13% of the computer's time. When the Executive ran out of core sets (1202) or VAC areas (1201), it restarted, dropped what didn't matter and brought back what did: guidance, throttle, attitude and the crew's essential displays.
Timeline
The jokes in the code
When the Apollo 11 guidance code was posted to GitHub in 2016, readers found that the people who wrote it were having fun. A few favourites:
Three ideas that outlived Apollo
Priorities, not perfection
Hamilton's teams built on J. Halcombe Laning's priority-based Executive, so an overloaded computer could drop low-value work instead of falling over. Any system that sheds load to stay alive does the same thing.
Expect the human error
The P01 story taught her that "it would never happen" is not a design. Software should anticipate mistakes and recover from them, an approach she pushed for and later built a company around.
Software is engineering
She insisted building software be treated as a discipline as rigorous as hardware. She recalled the day one of the most respected hardware experts agreed with her in a meeting as a memorable one.