In the Digital Age, we take technology for granted. We’re surrounded by it at home, at work, when we’re having fun. Television, smartphone, tablet, game console, PC, toaster, washing machine, oven, thermostat, dishwasher…. The list of things we use every day that are jam-packed with technology is endless. In the 60s, it was very different. Computing technology was still in its infancy and wasn’t something you saw on a regular basis. If you were super lucky, you had a television set and a car. Your appliances were functional but didn’t have digital bells and whistles. There was no such thing as smart tech, yet we managed to successfully put men in space and bring them safely back home. You have to admit, that’s pretty impressive. And, while it’s only one factor in the mission’s success, there’s no denying that technology – specifically the on-board computer – played a significant role.
The Apollo Guidance Computer, or AGC, was a ground-breaking piece of kit. Yes, by today’s standards it’s obsolete and beyond basic, but at the time, the AGC was way ahead of its time. With just 64Kb of memory, this computer played an integral part in getting those astronauts home safely. This baby weighed a substantial 70.1 pounds. It was, however, super small for its time, measuring just 24 x 12.5 x 6 inches. Yes, your iPhone is much, much smaller and is many times more powerful, but the AGC was cutting edge. Humans do astonishing things with the resources we have available, then look back years later and marvel that that generation accomplished so much with so little.
According to NASA, the team who designed the device at MIT opted for 16-bit word size as a carefully factored compromise based on navigational precision, range of input variables, and instruction word format. Basically, the use of shorter words allows for simpler circuits and faster speeds. The team got over the hurdle of shorter words resulting in less precision than longer ones by using multiple shorter words. The astronauts interacted with the computer core via a DSKY, pronounced “disky”, or a Display Keyboard interface. Using a lookup table that cross-referenced each word with specific numeric values, astronauts would input words or word pairs, most commonly in a noun + verb syntax configuration, like LOAD + ANGLE. To ensure the users really knew the system inside and out, and would be able to circumvent any imperfections, each member of the team had to undergo intensive training in the form of simulations and each person had to log a minimum of 10,000 keystrokes.
It took eight years to build the AGC, and the project reportedly changed scope significantly during that timeframe, particularly with regards to the anticipated memory needs. The original design specs required just 4000 words of fixed memory and 256 words of erasable. Eventually, after several jumps in size, the unit had 36,000 words of fixed storage and 2,000 words of erasable memory. That’s a pretty big leap. In total, that’s just 74.2 kilobytes. One key reason that the memory requirements were so substantially underestimated is, according to the NASA website, that NASA only provided the MIT team with a short brief without detailed specs regarding all the essential functions they wanted the system to perform.
The designers, engineers, and programmers who worked on the Apollo Guidance Computer were truly remarkable, creating ground-breaking equipment, advancing technology, and pushing the boundaries of what was readily available. Although it took them eight long years and they were working within strict weight and memory confines, that team brought to life a complex computer system and significantly advanced the space program.
If you’re a coder or you’re interested in learning about the roots of modern software engineering and computer programming, the original AGC source code is now freely available online.