In 1961, not long after NASA received the imperative from President John F. Kennedy to land a man on the Moon within the decade, then-NASA administrator James Webb posed a question to Charles Stark “Doc” Draper, head of the Massachusetts Institute of Technology (MIT) Instrumentation Lab. Webb wanted to know if it was possible to create a guidance system that could lead a man to the Moon and return him safely to Earth.

The Primary Guidance, Navigation, and Control System of the Apollo Lunar Module. The display and keyboard (DSKY, pronounced “diskey”) interface used by the astronauts to input commands can be seen in the bottom center of the image.
Doc Draper had pioneered the field of inertial navigation— the use of instruments such as gyroscopes and accelerometers to provide guidance for a vehicle—and the Lab had developed the guidance systems for the Nation’s first ballistic missiles and even conducted work in the 1950s on an autonomous probe that could find its way to Mars and back.

Doc Draper’s answer was a definitive “Yes.”

Known today as Draper Laboratory, an independent, nonprofit institution based in Cambridge, Massachusetts, the MIT Instrumentation Laboratory became the first major contractor for the Apollo program. Working with other contractors, the lab developed the Apollo Primary Guidance, Navigation, and Control System (PGNCS, pronounced “pings”). Consisting of an inertial measurement unit, optical and other components, the system had at its heart the Apollo Guidance Computer. Designed and programmed by the Lab and largely built by Raytheon, the computer would be the brain for both the Apollo Command Module and the Lunar Module that would deliver the first astronauts to the Moon’s surface. To do this, it had to be faultless.

“It had to work and it had to work flawlessly. There was no possibility for repair,” says Darryl Sargent, vice president of programs for Draper.

And it did. Throughout the course of the Apollo program, the computer never experienced a failure. In addition to enabling the PGNCS system that in turn enabled the Moon landings, the computer also contributed to the rescue of Apollo 13 through the use of a program that helped push the damaged Command Module into a safe course back to Earth.

Meanwhile, at NASA’s Flight Research Center in California (now known as Dryden Flight Research Center), aeronautics engineers were asking questions about how computers could contribute to flight on Earth—questions that the Apollo Guidance Computer would help answer.


In 1994, the Boeing 777 became the second commercial airliner to fly using DFBW. For commercial aircraft, the replacement of heavy mechanical systems with DFBW controls provides greater fuel efficiency or the ability to carry more passengers or cargo.
At that point, mechanically controlled aircraft—in which the vehicle’s control surfaces are operated through cables and pushrods connecting the aerodynamic surfaces to the pilot’s control sticks and rudder pedals—were the norm in aviation. In 1970, a Dryden team visited NASA Headquarters proposing an advanced aircraft controlled by an analog fly-by-wire system with no mechanical backup.

The idea of flying an aircraft electronically was not a new one. In a fly-by-wire system, a computer collects sensor data from the pilot’s controls and sends those signals via wires to actuators that decode the signals and move the aircraft’s control surfaces accordingly. Dryden researchers had developed significant experience in electronic flight controls through the development of experimental aircraft; in fact, the Lunar Landing Training Vehicle NASA used to train the Apollo spacecraft commanders employed an analog fly-by-wire system with no mechanical backup—making it the first genuine fly-by-wire vehicle. But these systems all used analog computers, as opposed to digital ones. Electronic analog computers use variations in the physical properties of electricity to represent numbers; digital computers use binary code. Though slower for certain functions than their analog counterparts, digital computers can store large quantities of data and can be programmed with complex software.