Enchanting by Numbers

Theory of Everything recently posted an addendum to last year’s Enchanting by Numbers. Both episodes are very worthwhile, and both include the same segment talking about how misunderstood Facebook algorithms are to most of its users.

Be sure to listen to the interview with Suw Charman-Anderson, founder of Ada Lovelace Day, which is today! That part starts at 14:30 in part 1.

Part 1


Download MP3

Part 2


Download MP3

Ada Lovelace created the first algorithm, and discovered the first computer bug.
Ada Lovelace created the first algorithm, and discovered the first computer bug. Source: Wikipedia

See also: Ada’s Algorithm, the author was also interviewed in the Ada Lovelace segment. And Betsy Morais’s New Yorker article.

Link

Margaret Hamilton

Margaret Hamilton oversaw the guidance software on the Apollo program. Thanks to sophisticated error-handling in that code, her engineering efforts prevented an abort of the Apollo 11 landing.

Three minutes before the Lunar lander reached the Moon’s surface, several computer alarms were triggered. The computer was overloaded with incoming data, because the rendezvous radar system (not necessary for landing) updated an involuntary counter in the computer, which stole cycles from the computer. Due to its robust architecture, the computer was able to keep running; the Apollo onboard flight software was developed using an asynchronous executive so that higher priority jobs (important for landing) could interrupt lower priority jobs.

Margaret Hamilton standing next to listings of the actual Apollo Guidance Computer (AGC) source code
[Margaret Hamilton](https://en.wikipedia.org/wiki/Margaret_Hamilton_%28scientist%29) standing next to listings of the actual Apollo Guidance Computer (AGC) source code

This was on a 2 MHz machine with 1 MB of RAM. Even the term software engineering was coined by Hamilton, who also helped develop “concepts of asynchronous software, priority scheduling, end-to-end testing, and human-in-the-loop decision capability.”

A safe mantra to keep in mind with software is “all software has bugs,” which so often means “don’t expect too much.” Margaret Hamilton was instrumental in creating processes to ensure that software can systematically accommodate surprises and continue functioning as expected.

See also: an appreciation of Margaret Hamilton by Three Fingered Fox.

Link