The decade from 1930 to 1939 was an era without software as we know it today. But it was a very fruitful era in terms of both the invention of the underlying logical ideas behind software and also the design of physical computing devices.
Toward the end of this decade, it was obvious that a major war would soon occur. This created a sense of urgency that led to substantial funding for rapid calculation devices that could be used for military purposes, such as ballistics calculations, logistics, and cryptanalysis.
There were significant investments by all countries for analog computers for military purposes such as naval gun control, submarine torpedo aiming, and bombsights. While many such analog devices were built and tested in this decade, it is best to discuss them in the chapter discussing the 1940s when they were actually used for combat.
In 1930, Vannevar Bush developed a differential calculator, which was proof that calculating devices could handle a range of mathematical problems instead of a single narrow form of calculation. This was an analog device rather than a digital computer, so it is not in the line of direct descent to today’s digital computers.
In 1934, the German scientist Konrad Zuse put forth the idea that a computer or calculating engine would need a control unit, memory, and an arithmetic unit. Zuse was a pioneer of both computing architecture and programming languages. However, his work was not well known in the United States until after the end of World War II. He is a contender on the short list of having built the first computer. His most successful computers were built during the next decade.
In 1935, IBM hired three female employees, among the first for a technology company. The IBM chairman, Thomas J. Watson Sr., announced that IBM would offer equal pay and equal responsibilities, regardless of gender. IBM later did the same for ethnic minorities who were often discriminated against. In future decades, the computer and software industries would be more egalitarian than some of the older technical fields such as mechanical and electrical engineering. It is a matter of sociological interest that computers and software started out with a major company declaring equal rights and equal pay.
In 1936, Zuse started construction on a relay-based computer (similar to the work of the American George Stibitz) called the Z1. This machine was finished in 1938 but proved to be unreliable for mechanical reasons. However, it did feature programmability.
After an intermediate Z2 machine, later in 1941, Zuse finished a more sophisticated Z3 machine that was programmable, with the programs being entered via punched film. Zuse’s machines used binary numbers and are viewed as operating precursors of today’s computers. There is still some debate as to whether Zuse or Atanasoff and Berry deserve credit for building the first working
computer. In fact, both worked independently, and both deserve credit.
In 1936, the famous Alan Turing published a seminal paper titled “On Computable Numbers,” which is generally held to be a description of a working computer with an executable program. Turing’s work had both practical and theoretical concepts that would lead to impressive future inventions and to working computers used for code breaking.
A Turing machine is an abstract depiction of a working computer that sequentially processes instructions and performs mathematical and logical operations. Even today, a standard definition of a successful computer is that it be “Turing complete” or embodies all of the concepts put forth in Turing’s seminal paper.
Turing also developed and defined the concept of an algorithm, and he contributed important insights into problems that can be solved by a computer and problems that are insolvable. Turing’s contributions to the war effort at Bletchley Park will be discussed in the decade from 1940 to 1949.
In 1937, Claude Shannon, while a graduate student at MIT, wrote a thesis that proved that electrical relays could implement the concepts of Boolean symbolic logic. Shannon’s work led to the development of successful digital circuitry, which is needed for digital computers to operate.
A Russian investigator, Victor Shestakov from Moscow State University, developed a theory similar to Shannon’s as early as 1935. However, the Shestakov concepts were not published until 1941, so Shannon’s ideas have precedence.
Both Shannon and Shestakov recognized that symbolic logic, as put forth by the mathematician George Boole in his 1854 book, An Investigation on the Laws of Thought, could be dealt with by relays and electronic circuits that could handle logical decisions as well as carry out mathematical operations.
It is the combination of logical processing with mathematical processing that gives modern computers (and software) their enormous breadth of problem-solving capabilities. Computers and software can not only provide rapid mathematical calculations but also handle complex logical problems such as telephone routing.
In November 1937, a Bell Labs mathematician named George Stibitz, working at home on a kitchen table, built a prototype device that used two telephone relays and flashlight bulbs to represent the binary numbers 0 and 1. Stibitz also realized that this experimental device could be extended to handle rapid calculations involving both division and multiplication.
After some initial indifference, Bell executives decided to fund a larger working version of the prototype Stibitz relay machine. At a cost of about $20,000, this eventually became a machine in 1938 called Model 1.
The Model 1 computing machine had about 450 relays that initially could handle multiplication, division and, later, addition and subtraction. This machine used binary numbers to represent decimal values, which of course later became the main way that computers operate today. Stibitz would continue to make improvements that will be discussed in the next chapter.
One interesting aspect of the Stibitz machine was the use of a teletype keyboard for inputs and outputs. This meant that it was not necessary to have the computing device adjacent to the input mechanism. Within a few years, in 1940, Stibitz demonstrated remote input and output via telephone lines over a distance of more than 20 miles. This early demonstration of remote computing would
eventually expand into the internet as we know it today.
In 1938, William Hewlett and David Packard founded the Hewlett-Packard Company (widely known by the initials HP). This company started with a variety of electronic equipment such as oscilloscopes and audio oscillators. In later years, HP became a major vendor of notebook computers, printers, and custom software applications.
In 1939, John Vincent Atanasoff and Clifford Berry developed a prototype computer called ABC (named after the initials of the inventors). This machine is often claimed to be the first digital computer in the world, although there are rival claims and considerable debate and even litigation involving the origin of modern computers. The famous lawsuit between Honeywell and Sperry- Univac will be discussed in Chapters 5 and 6.
In 1939, work started on yet another computer at the IBM laboratory in Endicott, New York. This was called the Harvard Mark 1 computer. The official name of this device was the “automatic sequence controlled calculator.”
The Mark 1 was designed by the Harvard mathematician Howard Aikin and other colleagues such as Grace Hopper and several IBM engineers. The design of the Mark 1 was influenced by the earlier mechanical computing device designed by Charles Babbage in the 1870s but not completed during his lifetime.
Note
A working Babbage analytical engine was not built until 1991. Until the successful 1991 construction, there had been debate as to whether the analytical engine would work or not. But it did work and was in fact a Turing complete digital computer. After Babbage in the 1870s, the next Turing complete digital computer would not occur until the 1950s.
The Mark 1 was an electromechanical device that used relays, storage wheels, and rotary switches. It could be “programmed” with sequential instructions fed into the computer via a paper tape. Development of this computer was started in 1939 but not finished until 1944, so the main discussion will be in the next chapter.