Accounts of the origins of the computer often focus on ENIAC and on British and American projects. Less well known, at least outside Germany, is Konrad Zuse, a Berlin civil engineer who, between the late 1930s and the early 1940s, built a series of programmable calculators almost single-handedly and with limited means. His Z3, completed in 1941, is considered the first working programmable, automatic computing machine.
An engineer tired of doing sums
Zuse worked as a structural engineer at Henschel, an aircraft company. His job required long structural calculations, always with the same structure: the same formulas applied to different numbers. He drew a simple conclusion: such repetitive work ought to be done by a machine.
He left his job to devote himself to the project and began building his first calculator in the living room of his parents' flat in Berlin, with help from friends and with funds largely from his family.
The Z1: mechanical and binary
The first model, later called the Z1, was completed in 1938. It was entirely mechanical: instead of decimal gears it used thin sliding metal plates representing two positions. Already in this prototype Zuse made three choices that would prove decisive:
- The binary system, instead of the decimal one used by almost all calculators of the time.
- Floating point, that is, representing numbers with a mantissa and an exponent, which makes it possible to handle very large and very small values with the same relative precision.
- Separating memory from the arithmetic unit, an organisation similar to the one Babbage had imagined, though Zuse always said he did not know Babbage's work at the time.
The Z1 worked poorly, because the mechanical parts jammed. But the architecture was right.
The Z3: relays
Zuse realised that the problem was the mechanism, not the design. After a test model, the Z2, which used telephone relays for the arithmetic unit, he built the Z3, completed in 1941 and made entirely of electromechanical relays.
Main features
| Feature | Z3 |
|---|---|
| Technology | Electromechanical relays, about 2,600 |
| Representation | Binary, floating point |
| Program | Read from punched film stock |
| Data input | Decimal keyboard, with automatic conversion |
| Output | Lamps displaying the result |
The program was recorded on used 35-millimetre film, punched according to a code. The machine read the instructions one at a time and performed addition, subtraction, multiplication, division and square roots. Conversion between decimal and binary was automatic, so the operator worked with familiar numbers.
An important clarification
The Z3 had no conditional branch instruction: the program ran in sequence, and loops could be created by joining the two ends of the film. For this reason it was not, in the form in which it was designed, a universal computer in the full sense. Many decades later, at the end of the 1990s, it was shown that in theory, with programming tricks, it could have simulated universal behaviour. It is an interesting result, but more theoretical than practical.
The war and destruction
Zuse worked in a difficult context. The German government showed limited interest in his projects, which it did not consider strategic. The original Z3 was destroyed in a bombing raid on Berlin in 1943. In the 1960s the company Zuse had founded built a replica, now kept at the Deutsches Museum in Munich.
The next model, the more powerful Z4, was under construction during the war and was moved out of Berlin in the final months of the conflict. It survived, and in 1950 it was installed at the Swiss Federal Institute of Technology in Zurich, where it remained in service for several years. It was one of the first computers in the world in use at a scientific institution.
Plankalkül
During and just after the war, when building machines was impossible, Zuse turned to theory. Between 1942 and 1945 he designed Plankalkül, "plan calculus", a high-level programming language with variables, data structures, assignments and conditions. It is considered one of the first high-level languages ever designed.
Plankalkül, however, was not published in full until 1972 and was not implemented at the time. It therefore did not influence the development of languages such as FORTRAN or ALGOL, which followed independent paths.
Zuse KG and industry
In 1949 Zuse founded a company, Zuse KG, which produced computers for industry and research in the following decades before being absorbed by other groups. His story shows another side of computing's pioneering era: isolation. Working without contact with British and American groups, Zuse independently arrived at very similar solutions, and in some cases earlier.
What this story tells us
Zuse's experience shows that choices of representation matter as much as technology. Binary and floating point, adopted from the Z1 onwards, are today the standard in every processor. Modern floating point follows the IEEE 754 standard, but the basic idea is the same one Zuse implemented with metal plates and relays.
In short
- Konrad Zuse built the Z1, mechanical and binary, in his parents' flat in Berlin, completing it in 1938.
- The Z3, completed in 1941, used relays, binary floating-point numbers and a program read from punched film.
- The original Z3 was destroyed in 1943; the Z4 survived and was used in Zurich from 1950.
- Zuse also designed Plankalkül, one of the first high-level languages, published only in 1972.