The Apollo Guidance Computer
At times of stress and sorrow I tend to look back and attempt put things in perspective. I can't find anything that would put what has happened last week in any perspective.
As I was thinking about what happened, about US and world history, among the many random thoughts an historic article about an important piece of computing history came somehow into my mind: One Giant Leap: The Apollo Guidance Computer.
Here are some interesting tidbits about this wonderful software: "The system ran an executive that handled (typically) about 40 concurrent processes and allowed interrupts from various system sensors as well as astronaut input. It was capable of failing gracefully, which it did during the lunar descent as a radar subsystem began sending too much data to it. It was also robust enough to handle a lightning strike while Apollo 12 was on the launch pad just prior to liftoff."
Please remember: when this development was happening the term "Software Engineering" hasn't even been coined yet and people barely started to figure out what would it take to write error-free software. So how big was this program? 72kB in the ROM, used a 4kB RAM for stack and data and the CPU ran at an amazing 2.048 MHz. And it took about 5 years to write.