Computers before ENIAC

The foundation of modern computing is the designs of Charles Babbage. While neither machine was built (the ‘Difference Engine’ was built in the 1990s), Augusta Ada King, Countess of Lovelace, better known as Ada Lovelace, was able to write a computer program to run on the machine.

Babbage’s analytical engine

Babbage’s analytical engine was a proposed digital mechanical general-purpose computer designed by English mathematician and computer pioneer Charles Babbage. It was first described in 1837 as the successor to Babbage’s difference engine, which was a design as a simpler mechanical calculator. The analytical engine incorporated an arithmetic logic unit, control flow in the form of conditional branching and loops, and integrated memory, making it the first design for a general-purpose computer that could be described in modern terms as Turing-complete.  Neither of Babbage’s designs were built at the time.

Note:  Mechanical calculating machines became increasingly sophisticated and common in the 20th century.  

The trigger for modern computers seems to have been the development of telephone relays and then vacuum valves in the 1930s. This led to:

Zuse Apparatebau (Zuse Apparatus Construction)

Konrad Ernst Otto Zuse was a German civil engineer, pioneering computer scientist who invented the world’s first programmable computer.

In 1938, he finished the Z1 which contained some 30,000 metal parts and never worked well due to insufficient mechanical precision. In September 1940 Zuse presented the Z2, covering several rooms in the parental flat, to experts of the Deutsche Versuchsanstalt für Luftfahrt (DVL; German Research Institute for Aviation).  The Z2 was a revised version of the Z1 using telephone relays.

In 1940, Zuse built the S1 and S2 computing machines, which were special purpose devices which computed aerodynamic corrections to the wings of radio-controlled flying bombs. The S2 featured an integrated analog-to-digital converter under program control, making it the first process-controlled computer.

In 1941, he improved on the basic Z2 machine, and built the Z3. The Z3 was a binary 22-bit floating-point calculator featuring programmability with loops but without conditional jumps, with memory and a calculation unit based on telephone relays. Despite the absence of conditional jumps, the Z3 was a Turing complete computer[1].

It was not until 1949 that Zuse was able to resume work on the Z4. He would show the computer to the mathematician Eduard Stiefel of the ETH Zurich. The two men settled a deal to lend the Z4 to the ETH. The Z4 was finished and delivered to the ETH Zurich in July 1950, where it proved very reliable. At that time, it was the only working digital computer in Central Europe.

Atanasoff–Berry computer (ABC)

Conceived in 1937, the Atanasoff–Berry computer (ABC) was built by Iowa State College mathematics and physics professor John Vincent Atanasoff with the help of graduate student Clifford Berry. It was designed to solve systems of linear equations and was successfully tested in 1942. This was the first automatic electronic digital computer, but was limited by the technology of the day, it was neither programmable, nor Turing-complete. Conventionally, the ABC would be considered the first electronic ALU (arithmetic logic unit) – which is integrated into every modern processor’s design. The final version was ready in 1942, using binary arithmetic, regenerative memory, parallel processing, logic circuits, separation of memory and computing functions etc.

In 1940, Dr. John Mauchly asked Dr. Atanasoff to present him the ABC machine. The latter agreed, but this was a subtle request, as Dr. Mauchly used many basic ideas of Dr. Atanasoff in the future design of the ENIAC, together with Dr. Presper Eckert.

Operational in 1946, ENIAC was initially considered the world’s 1st electronic digital computer. Many years later, some charges of piracy were brought against Dr. Mauchly. In 1973 a trial verdict concluded that ENIAC computer was “derived” from the ideas of Dr. Atanasoff. See – https://jva.cs.iastate.edu/courtcase.php  

When Judge Larson distributed the formal opinion on 19 October 1973, it was 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.”

The Harvard Mark I (pictured),

 The Harvard Mark I, or IBM Automatic Sequence Controlled Calculator (ASCC), was one of the earliest general-purpose electromechanical computers used in the war effort during the last part of World War II.

Howard Aiken was shown a demonstration set that Charles Babbage’s son had given to Harvard University 70 years earlier, which led him to study Babbage and to add references to the Analytical Engine to his proposal; the resulting machine “brought Babbage’s principles of the Analytical Engine almost to full realization, while adding important new features.”

The original concept was presented to IBM by Howard Aiken in November 1937. After a feasibility study by IBM engineers, the company chairman Thomas Watson Sr. personally approved the project and its funding in February 1939. The ASCC was developed and built by IBM at their Endicott plant and shipped to Harvard in February 1944. It began computations for the US Navy Bureau of Ships in May and was officially presented to the university on August 7, 1944. Programming was by punch tape this example shows how ‘bugs’ were corrected by patching the tap.

One of the first programs to run on the Mark I was initiated on 29 March 1944 by John von Neumann. At that time, von Neumann was working on the Manhattan Project, and needed to determine whether implosion was a viable choice to detonate the atomic bomb that would be used a year later. The Mark I also computed and printed mathematical tables, which had been the initial goal of British inventor Charles Babbage for his “analytical engine” in 1837.

A quick list of all early computers from History of computing hardware § Early digital computer characteristics.

Babbage Difference engine           Design 1820s (Not built until the 1990s)
Babbage Analytical Engine            Design 1830s Not built
Torres’ Analytical Machine            1920
Zuse Z1 (Germany)                          1939    
Bombe (Poland, UK, US)                 1939 (Polish), March 1940 (British), May 1943 (US) – Used to decode Enigma, discussed in A Brief History of Agile.
Zuse Z2 (Germany)                          1940    
Zuse Z3 (Germany)                          May 1941
Atanasoff–Berry Computer (US)   1942  
Colossus Mark 1 (UK)                     December 1943 – Used to decode the Lorenze Cypher at Bletchley Park UK, discussed in A Brief History of Agile.
Harvard Mark I – IBM ASCC (US)   May 1944
Colossus Mark 2 (UK)                      1 June 1944
Zuse Z4 (Germany)                          March 1945 (or 1948)
ENIAC (US)                                       December 1945 – see ENIAC and the Origins of Computers.

For more on the history of Agile and Computing see:
https://mosaicprojects.com.au/PMKI-ZSY-010.php#Agile


[1] Turing completeness is the ability for a computational model or a system of instructions (computer system, programming language, etc.) that is theoretically capable of being used for any algorithm, regardless of complexity, to find a solution.

One response to “Computers before ENIAC

  1. Pingback: ENIAC and the Origins of Computers | Mosaicproject's Blog

Leave a comment