Page 1 of 2
Was ENIAC the first practical computer? It is the sort of question that we really would like a definitive answer to but the truth is much more complicated than you might expect.
For example, you can argue about what exactly constitutes a computer. Is there any difference between the first calculator and the first computer? Do you actually have to build the beast or is just designing it enough for the honor? Should the credit go to the people who soldered the machine together, the people who designed it, or the managers of the team? As soon as you start to attempt to answer the question of who invented the first computer you start to realize the question itself has little meaning.
Some might attempt to credit J Presper Eckert and John William Mauchly as the fathers of the first electronic digital computer but for all the reasons give above I would prefer to give them the credit for setting up the first computer company - but why not judge for yourself.
Left - John William Mauchly (1907-1980)
Right - J Presper Eckert (1919-1995)
Some of the elements that led up to Eckert and Mauchly's work are described in other articles - Shannon's idea to base computers on binary arithmetic and later Von Neumann's invention of the stored program computer.
The Big Problem
In 1940 electronics was a very new, you could even say almost non- existent subject. It wasn't at all clear that the best way to build a computer was to use electronic technology as opposed to mechanical or electro-mechanical technology.
An electromechanical switch - reliable.
A vaccuum tube - unreliable and expensive
The dominant technologies of the time were mechanical/electro-mechanical and electronics was hi-tech but also hi-cost and hi-unreliable! Any engineer looking round for examples of what worked would see pure mechanical devices of high sophistication such as calculating machines, analog computers, and punch card sorting and tabulating machines.
Looking a little further afield the most advanced systems were the automatic telephone exchanges based on hundreds of relays and uni-selectors. It must have seemed a perfectly reasonable plan to build any computer using relays.
Indeed this is exactly what Howard Aiken did when he more or less implemented Babagge's analytical engine using around 1 Million components - mainly relays - to create the Harvard Mark I for IBM.
Relays may be reliable but they are very slow.
This is fine for the switching logic of a telephone exchange but not for a computer. The Harvard Mark I took 0.3 seconds for an addition - which in today's terms is equivalent to an IBM PC running at a clock speed of 0.000003Mhz!
Clearly something a little faster was needed.
The Challenge Of Tubes
The answer was fairly obviously, with hindsight at least, to use vacuum tubes. At the time these were used in small numbers as amplifiers and rectifiers in radio and audio equipment but it was easy to see how they could be used as switches - which worked 1000 times faster than the best relays.
The trouble is that it took at least one vacuum tube per logic gate and two for each unit of storage. This implied that you would need a lot of vacuum tubes to build even a smallish computer and vacuum tubes, like light bulbs, had a very short life span.
Vacuum tubes worked by heating a metal electrode to "boil off" electrons that could then be steered across the vacuum to another electrode. The problem was that the heating filament consumed lots of electrical power, generated lots of heat and burned out at regular intervals.
What confronted any pioneer planning to build an electronic computer was the prospect of each switch on giving only a few seconds of useful computing time before the first vacuum tube burned out and that's all it took to stop the entire computer working. There was also the engineering challenge of the huge amounts of power needed, the heat generated and fault finding such a huge circuit. All of this was new and no electronics on this sort of scale was in existence.
When most electronic engineers were familiar with circuits that contained three or four vacuum tubes at most, a computer would have a circuit that detailed tens of thousands of vacuum tubes! Even if you were convinced that vacuum tubes were a good idea it wasn't clear that building a digital computer was the correct way to go.
Most useful computation was at that time was performed by mechanical analog machines and vacuum tubes could be used to create a fast and accurate analog machine as well as a digital machine. Indeed an analog machine would have required far fewer vacuum tubes to perform the same sort of computation as a digital machine.
Overall a binary electronic computer based on vacuum tubes looked like a really high risk project.
The Second World War
The Second World War provided the impetus for the development of many technologies and computing is a prime example. Aiming a gun may seem to be a simple enough task - just point and fire - but if you actually want to stand a chance of hitting the target you need to be able to work out the angle that the gun barrel should be set to.
This is usually achieved using a set of "firing tables". These give the angle of the barrel needed to hit a target at a given height allowing for the prevailing wind and a range of other factors:
The calculation need to work out a single entry in the table isn't difficult and can be done by a manual calculation but working out a full set of tables by hand was taking the US Ballistics Research Laboratory three months using around 150 people and two mechanical analog machines. They were increasingly falling behind.
In an attempt to catch up they established a computing sub- station at the Moore School of Electrical Engineering University of Pennsylvania. Initially this was simply intended as a training school for human calculators but Herman Goldstine, the officer in charge, started to talk to Professor John Mauchly, a mathematician, about the possibility of using vacuum tubes to speed things up.
Mauchly had written a number of papers about using vacuum tubes for high speed computation but there was still the thought that an analog machine might be more practical. However the difficulties of maintaining accuracy in an analog machine made a digital machine, with all its problems more attractive.
Presper Eckert, an engineering colleague of Mauchly had some clever ideas about how such a huge collection of vacuum tubes could be made to work. Together, Mauchly as chief consultant, Eckert as chief engineer and Goldstine as supervisory liaison officer they started to build an electronic digital computer called - Electronic Numerical Integrator and Calculator or ENIAC - they also started the use of catchy contrived acronyms to name computers!
ENIAC (U. S. Army Photo)