It is said that history is written by the victors. However, when one is considering events that occurred only a few decades in the past, it would not be unreasonable to expect these events to be fairly well documented, thereby allowing one to report:
“This person definitely invented this thing at this time.” Unfortunately, this is not always the case, as we shall see …
View Topics
John Vincent Atanasoff and the ABC
We now turn our attention to an American mathematician and physicist, John Vincent Atanasoff (1903-1995), who has the dubious honor of being known as the man who either did or did not construct the first truly electronic special-purpose digital computer. A lecturer at Iowa State College (now Iowa State University), Atanasoff was disgruntled with the cumbersome and time-consuming process of solving complex equations by hand. Working alongside one of his graduate students – the brilliant Clifford Berry (1918-1963) – Atanasoff commenced work on an electronic computer in early 1939, and had a prototype machine by the autumn of that year (this machine was called the
Atanasoff-Berry Computer, or ABC for short).
In the process of creating the device, Atanasoff and Berry evolved a number of ingenious and unique features. For example, one of the biggest problems for computer designers of the time was to be able to store numbers for use in the machine’s calculations. Atanasoff’s design utilized capacitors to store electrical charge that could represent numbers in the form of logic 0s and logic 1s. The capacitors were mounted in rotating bakelite cylinders, which had metal bands on their outer surface. These cylinders, each approximately 12 inches tall and 8 inches in diameter, could store thirty binary numbers, which could be read off the metal bands as the cylinders rotated.
Input data was presented to the machine in the form of punched cards, while intermediate results could be stored on other cards. Once again, Atanasoff’s solution to storing intermediate results was quite interesting – he used sparks to burn small spots onto the cards. The presence or absence of these spots could be automatically determined by the machine later, because the electrical resistance of a carbonized spot varied from that of the blank card.
Some references report that Atanasoff and Berry had a fully working model of their machine by 1942. However, while some observers agreed that the machine "was completed and did work,” others reported that it “was almost completed and would have worked,” while still others stated that it “was just a collection of parts that never worked.” So unless more definitive evidence comes to light, it’s a case of: “You pays your money and you takes your choice.” (See also the notes on The ENIAC Patents Court Case following the discussions on ENIAC below.)
Alan Turing, Tommy Flowers, and Colossus
Many of the people who designed the early computers were both geniuses and eccentrics of the first order, and the English mathematician Alan Turing (1912-1954) was first among equals. In 1937, while a graduate student, Turing wrote his ground-breaking paper
“On Computable Numbers with an Application to the Entscheidungsproblem.” (try saying that quickly). One of the premises of Turing’s paper was that some classes of mathematical problems do not lend themselves to algorithmic representations, and are therefore not amenable to solution by automatic computers. Since Turing did not have access to a real computer (not unreasonably as they didn’t exist at the time), he invented his own as an abstract “paper exercise.” This theoretical model, which became known as a
Turing Machine, was both simple and elegant, and subsequently inspired many “thought experiments.”
During World War II, Turing worked as a cryptographer, decoding codes and ciphers at one of the British government’s top-secret establishments located at Bletchley Park. During this time, Turing was a key player in the breaking of the Germans’ now-famous ENIGMA code. However, in addition to ENIGMA, the Germans had another cipher that was employed for their ultra-top-secret communications. This cipher, which was vastly more complicated that ENIGMA, was generated by a machine called a Geheimfernschreiber (secret telegraph), which the allies referred to as the “Fish.”
By a happy quirk of fate, the electronic engineer Tommy Flowers (1905-1998) had been working on a programmable machine to automate the switching of telephone calls. Based at the Post Office research laboratories in London, Flowers was convinced that vacuum tubes were the way to go, which went against conventional wisdom based on the fact that the tubes in radio sets failed so often. But Flowers realized that the primary failure mechanism was the stress associated with turning the tubes on and off, and he was convinced that they would work reliably over long periods if they were simply left powered up all of the time.
When the war broke out, Flowers was sent to Bletchley Park to help out. He quickly realized that the plans for the “computer” (it wasn’t called this at the time) being drafted by Turing and his colleagues called for a switching system very similar to the one he had already been working on at the Post Office. In January 1943, along with a number of other contributors, Flowers and Turing began to construct an electronic machine to decode the Geheimfernschreiber cipher. This machine, which they dubbed COLOSSUS, comprised around 1,800 vacuum tubes and was completed and working by December of the same year! (It deserves to be mentioned that, due to lack of funding – and based on his absolute confidence in his proposed solution – Tommy Flowers put around 1000 British pounds of his own money into the project. As a point of reference, a house costing 1,000 pounds in London at that time would be worth around 250,000 pounds ($500,000 American dollars) by the year 2,000, so this was a very considerable sum for anyone to invest.)
By any standards COLOSSUS was one of the world’s earliest working programmable electronic digital computers. But it was a special-purpose machine that was really suited only to a narrow range of tasks (for example, it was not capable of performing decimal multiplications). Having said this, although COLOSSUS was built as a special-purpose computer, it did prove flexible enough to be programmed to execute a variety of different routines. (In order to keep the vacuum tubes working, once COLOSSUS had been switched on, it was not switched off again until the end of the war.)
John Mauchly, Presper Eckert, and ENIAC
By the mid-1940s, the majority of computers were being built out of vacuum tubes rather than switches and relays. Although vacuum tubes were fragile, expensive, and used a lot of power, they were much faster than relays (and much quieter). If one were to ignore Atanasoff’s ABC machine and COLOSSUS, then the first true (working) general-purpose electronic computer was the
Electronic Numerical Integrator And Computer (ENIAC), which was constructed at the University of Pennsylvania between 1943 and 1946.
The brainchild of John William Mauchly (1907-1980) and J. Presper Eckert Jr. (1919-1995), ENIAC was a monster – it was 10 feet tall, occupied 1,000 square feet of floor-space, weighed in at approximately 30 tons, and used more than 70,000 resistors, 10,000 capacitors, 6,000 switches, and 18,000 vacuum tubes. The final machine required 150 kilowatts of power, which was enough to light a small town.
One of the greatest problems with computers built from vacuum tubes was reliability; 90% of ENIAC's down-time was attributed to locating and replacing burnt-out tubes. Records from 1952 show that approximately 19,000 vacuum tubes had to be replaced in that year alone, which averages out to about 50 tubes a day!
The ENIAC Patents Court Case
On 1 June 1971, U.S. District Judge Earl R. Larson started a trial to settle a dispute over what were generally referred to as
“The ENIAC Patents” between the Honeywell Company of Minneapolis and the Sperry Rand Corporation. (Years earlier, Sperry Rand and its subsidiary – Illinois Scientific Development, Incorporated – had purchased the ENIAC patent rights from Mauchly and Eckert.)
During the course of the trial, the Judge heard testimony from both Atanasoff and Mauchly. In his formal opinion, which was distributed on 19 October 1973, Judge Larson rendered a clear and unequivocal finding that Mauchly's basic ENIAC ideas were "Derived from Atanasoff, and the invention claimed in ENIAC was derived from Atanasoff." Furthermore, the judge stated that "Eckert and Mauchly did not themselves first invent the automatic electronic digital computer, but instead derived that subject matter from one Dr. John Vincent Atanasoff."
The bottom line was an official ruling that John Vincent Atanasoff and Clifford Berry had constructed the first electronic digital computer at Iowa State College between 1939 and 1942.
The Concept of Stored Program Computers
During the course of developing ENIAC, Mauchly and Eckert recognized a variety of improvements and new techniques, which they resolved to use in any subsequent machines. For example, one of the main problems with ENIAC was that it was hard-wired; that is, it did not have any internal memory as such, but needed to be physically programmed by means of switches and dials. Around the summer of 1943, Mauchly and Eckert discussed the concept of creating a stored-program computer, in which an internal read-write memory would be used to store both instructions and data. This technique would allow the program to branch to alternate instruction sequences based on the results of previous calculations, as opposed to blindly following a pre-determined sequence of instructions.
Eckert’s idea was to use mercury delay lines (about which he already knew a great deal) for the memory. These delay lines were constructed using a thin tube containing mercury sealed with quartz crystals at each end. Applying an electric current to a quartz crystal causes it to vibrate. Similarly, vibrating a quartz crystal causes it to generate an electric current. The principle behind the mercury delay line was to briefly apply a current to the crystal at one end of the tube, which generated a pulse that propagated through the mercury at a known speed. When the pulse reached the far end of the delay line, it caused the crystal at that end to generate a corresponding current.
By amplifying the output from the second crystal and feeding it back to the first crystal, a continuous loop could be established. Moreover, a number of individual pulses could be maintained in a single delay line, similar in concept to a column of people marching down a corridor in single file. In fact, 1000 bits could be stored in a delay line 5 feet long. Around the beginning of 1944, Eckert wrote an internal memo on the subject and, in August 1944, Mauchly and Eckert proposed the building of another machine called the Electronic Discrete Variable Automatic Computer (EDVAC). As we will see in the following topic, the dates associated with these activities are of some significance.
John Von Neumann and EDVAC
In June 1944, the Hungarian-American mathematician Johann (John) Von Neumann (1903-1957) first became aware of ENIAC. Von Neumann, who was a consultant on the Manhattan Project, immediately recognized the role that could be played by a computer like ENIAC in solving the vast arrays of complex equations involved in designing atomic weapons. A brilliant mathematician, Von Neumann crossed mathematics with subjects such as philosophy in ways that had never been previously conceived; for example, he was a pioneer of
Game Theory, which continues to find numerous and diverse applications to this day.
Von Neumann was tremendously excited by ENIAC and quickly became a consultant to both the ENIAC and EDVAC projects. In June 1945, he published a paper entitled “First Draft of a Report to the EDVAC,” in which he presented all of the basic elements of a stored-program computer:
(a) |
A memory containing both data and instructions and allowing both data and instruction memory locations to be read from, and written to, in any desired order. |
(b) |
A calculating unit capable of performing both arithmetic and logical operations on the data. |
(c) |
A control unit, which could interpret an instruction retrieved from the memory and select alternative courses of action based on the results of previous operations. |
| |
The key point made by the paper was that the computer could modify its own programs, in much the same way as was originally suggested by Babbage. The computer structure resulting from the criteria presented in this paper is popularly known as a
Von Neumann Machine, and virtually all digital computers from that time forward have been based on this architecture.
The “First Draft” was a brilliant summation of the concepts involved in stored-program computing; indeed, many believe it to be one of the most important documents in the history of computing. It is said that the paper was written in a way that possibly only von Neumann could have achieved at that time. However, although there is no doubt that von Neumann made major contributions to the EDVAC design, the result of the “First Draft” was that he received almost all of the credit for the concept of stored-program computing, while Mauchly and Eckert received almost none. But (as we discussed in the previous topic) Mauchly and Eckert discussed stored-program computers a year before von Neumann arrived on the scene, and Eckert wrote a memo on the subject six months before von Neumann had even heard about ENIAC.
It has to be said that there is no evidence that Von Neumann intended to take all of the credit (not the least that his paper was titled “First Draft ....”), but it also cannot be denied that he didn’t go out of his way to correct matters later.
Unfortunately, although the conceptual design for EDVAC was completed by 1946, several key members left the project to pursue their own careers, and the machine did not become fully operational until 1952. When it was finally completed, EDVAC contained approximately 4,000 vacuum tubes and 10,000 crystal diodes. A 1956 report shows that EDVAC's average error-free up-time was approximately 8 hours.
EDSAC, UNIVAC, and Bebop
In light of its late completion, some would dispute EDVAC's claim to fame as the first stored-program computer. A small experimental machine based on the EDVAC concept consisting of 32 words of memory and a 5-instruction instruction set was operating at Manchester University, England, by June 1948. Another machine called EDSAC (Electronic Delay Storage Automatic Calculator) performed its first calculation at Cambridge University, England, in May 1949. EDSAC contained 3,000 vacuum tubes and used mercury delay lines for memory. Programs were input using paper tape and output results were passed to a teleprinter. Additionally, EDSAC is credited as using one of the first assemblers (called
Initial Orders), which allowed it to be programmed symbolically instead of using machine code. Last but not least, what was intended to be the first commercially available computer, UNIVAC I (Universal Automatic Computer), was also based on the EDVAC design. Work started on UNIVAC I in 1948, and the first unit was delivered in 1951, which therefore predates EDVAC’s becoming fully operational. (Remember that Konrad Zuse sold his Z4 to a bank in Zurich, Switzerland, in 1950, which therefore made the Z4 the world’s first commercially available computer.)
Apropos of nothing at all, a jazz style known as Bebop became highly popular in the decade following World War II. Charlie Parker, Dizzy Gillespie and Thelonius Monk were especially associated with this form of music, which is known for its fast tempos and agitated rhythms. We may only speculate if it was but a coincidence that many of the most significant ideas and discoveries in the history of computing occurred alongside the flourishing Bebop.
Note: The material presented here was abstracted and condensed from
The History of Calculators, Computers, and Other Stuff document provided on the CD-ROM accompanying
our book
How Computers Do Math (ISBN: 0471732788).