ENIAC, short for Electronic Numerical Integrator and Computer, was unveiled to the public in February 1946 and quickly became the symbol of the new era of "electronic brains". It was huge, consumed a great deal of power and could perform calculations at a speed never seen before. But it was also very different from a modern computer, above all in the way it was programmed.
Why it was built
During the Second World War the United States Army needed firing tables: charts telling gunners how to aim a weapon according to distance, type of shell and conditions. Each table required the calculation of hundreds of trajectories, each one a differential equation to be solved step by step.
The work was done by teams of people, mostly women with mathematical training, who used mechanical calculators and a differential analyzer. It was not enough: demand grew faster than computing capacity.
The physicist John Mauchly proposed building an electronic machine. Together with the young engineer J. Presper Eckert, at the Moore School of Electrical Engineering in Philadelphia, he obtained a contract from the Army's Ballistic Research Laboratory in 1943. Construction lasted until the end of 1945.
The size of the giant
ENIAC filled a large room and consisted of a series of panels arranged in a horseshoe. It used about 18,000 vacuum tubes, weighed about 27 tonnes and drew power on the order of 150 kilowatts.
The choice of vacuum tubes was the key to its speed. Relays, used in electromechanical calculators, had to move physically; tubes switched electronically, thousands of times faster. The downside was reliability: with so many tubes, one failed frequently. Eckert designed the circuits so that the tubes worked well below their limits, to extend their life.
A decimal computer
Unlike Zuse's Z3, ENIAC worked in decimal. Each number was stored in an accumulator using rings of ten electronic circuits, one per digit. The machine had twenty accumulators, which served both to store numbers and to add them, plus dedicated units for multiplication, division and square roots.
Programming by hand
The most important thing to understand is that ENIAC, in its original form, did not store its program. There was no program to load: the sequence of operations was set up by physically connecting the units with cables and setting thousands of switches.
Preparing a new problem meant:
- analysing the calculation mathematically and breaking it down into elementary operations;
- drawing a detailed diagram of connections and settings for each unit;
- running the cables between the panels and adjusting the switches;
- checking that it worked and hunting for errors, both logical ones and those caused by failed tubes.
The job could take days or weeks, while the calculation itself lasted seconds or minutes. The ratio between preparation time and execution time was the exact opposite of what we know today.
The six programmers
The task of working out how to program ENIAC was given to six women chosen from among the Army's human computers: Kay McNulty, Betty Jennings, Betty Snyder, Marlyn Wescoff, Fran Bilas and Ruth Lichterman. They had no manuals, because none existed. They learned by studying the wiring diagrams and talking to the engineers, and they developed techniques for breaking down problems and tracking down errors.
For decades their contribution was almost ignored. In official photographs of the time they often appeared without names, as if they were models posing beside the machine. Only more recently has their role been recognised as that of genuine pioneers of programming.
The 1946 demonstration and later life
In February 1946 ENIAC was shown to the press with a series of demonstration calculations, including a trajectory computed faster than the time the shell would take to travel it. The news went around the world.
In 1947 the machine was moved to the Aberdeen Proving Ground in Maryland. In 1948 it was modified to run stored programs in a simplified form, using its function tables as instruction memory: from then on, changing programs became much faster. ENIAC remained in service until 1955.
The patent question
Eckert and Mauchly left the Moore School in 1946 and founded their own company, from which UNIVAC was born. The ENIAC patent, granted in the 1960s, was declared invalid by a federal court in 1973, in the case between Honeywell and Sperry Rand. Among the reasons was the fact that Mauchly had learned of the work of John Atanasoff, who with Clifford Berry had built a special-purpose electronic calculator for solving systems of linear equations.
What ENIAC represents
ENIAC proved that large-scale electronic computation was possible and useful. At the same time, the difficulty of programming it pushed its own designers to look for a better architecture, in which the program was kept in memory like the data. That idea, already discussed while ENIAC was being built, would define computers from then on.
In short
- ENIAC was built to calculate firing tables and was unveiled to the public in February 1946.
- It used about 18,000 vacuum tubes, worked in decimal and weighed about 27 tonnes.
- In its original form it was programmed with cables and switches, with no stored program.
- Six programmers learned to program it without manuals; their role was recognised only much later.