The history of computing is longer than the history of computing hardware and modern computing technology and includes the history of methods intended for pen and paper or for chalk and slate, with or without the aid of tables.
Concrete devices
Digital computing is intimately tied to the representation of numbers.[1] But long before abstractions like the number arose, there were mathematical concepts to serve the purposes of civilization. These concepts are implicit in concrete practices such as:
The 3-4-5 right triangle was a device for assuring a right angle, using ropes with 12 evenly spaced knots, for example.[4][failed verification]
Numbers
Eventually, the concept of numbers became concrete and familiar enough for counting to arise, at times with sing-song mnemonics to teach sequences to others. All known human languages, except the Piraha language, have words for at least the numerals "one" and "two", and even some animals like the blackbird can distinguish a surprising number of items.[5]
Advances in the numeral system and mathematical notation eventually led to the discovery of mathematical operations such as addition, subtraction, multiplication, division, squaring, square root, and so forth. Eventually, the operations were formalized, and concepts about the operations became understood well enough to be stated formally, and even proven. See, for example, Euclid's algorithm for finding the greatest common divisor of two numbers.
By the High Middle Ages, the positionalHindu–Arabic numeral system had reached Europe, which allowed for the systematic computation of numbers. During this period, the representation of a calculation on paper allowed the calculation of mathematical expressions, and the tabulation of mathematical functions such as the square root and the common logarithm (for use in multiplication and division), and the trigonometric functions. By the time of Isaac Newton's research, paper or vellum was an important computing resource, and even in our present time, researchers like Enrico Fermi would cover random scraps of paper with calculation, to satisfy their curiosity about an equation.[6] Even into the period of programmable calculators, Richard Feynman would unhesitatingly compute any steps that overflowed the memory of the calculators, by hand, just to learn the answer; by 1976 Feynman had purchased an HP-25 calculator with a 49 program-step capacity; if a differential equation required more than 49 steps to solve, he could just continue his computation by hand.[7]
Mathematical statements need not be abstract only; when a statement can be illustrated with actual numbers, the numbers can be communicated and a community can arise. This allows the repeatable, verifiable statements which are the hallmark of mathematics and science. These kinds of statements have existed for thousands of years, and across multiple civilizations, as shown below:
The earliest known tool for use in computation is the Sumerianabacus, and it was thought to have been invented in Babylon c. 2700–2300 BC. Its original style of usage was by lines drawn in sand with pebbles.[citation needed]
The Antikythera mechanism is believed to be the earliest known geared computing device. It was designed to calculate astronomical positions. It was discovered in 1901 in the Antikythera wreck off the Greek island of Antikythera, between Kythera and Crete, and has been dated to circa 100 BC.[8]
During the Middle Ages, several European philosophers made attempts to produce analog computer devices. Influenced by the Arabs and Scholasticism, Majorcan philosopher Ramon Llull (1232–1315) devoted a great part of his life to defining and designing several logical machines that, by combining simple and undeniable philosophical truths, could produce all possible knowledge. These machines were never actually built, as they were more of a thought experiment to produce new knowledge in systematic ways; although they could make simple logical operations, they still needed a human being for the interpretation of results. Moreover, they lacked a versatile architecture, each machine serving only very concrete purposes. Despite this, Llull's work had a strong influence on Gottfried Leibniz (early 18th century), who developed his ideas further and built several calculating tools using them.
The apex of this early era of mechanical computing can be seen in the Difference Engine and its successor the Analytical Engine both by Charles Babbage. Babbage never completed constructing either engine, but in 2002 Doron Swade and a group of other engineers at the Science Museum in London completed Babbage's Difference Engine using only materials that would have been available in the 1840s.[12] By following Babbage's detailed design they were able to build a functioning engine, allowing historians to say, with some confidence, that if Babbage had been able to complete his Difference Engine it would have worked.[13] The additionally advanced Analytical Engine combined concepts from his previous work and that of others to create a device that, if constructed as designed, would have possessed many properties of a modern electronic computer, such as an internal "scratch memory" equivalent to RAM, multiple forms of output including a bell, a graph-plotter, and simple printer, and a programmable input-output "hard" memory of punch cards which it could modify as well as read. The key advancement that Babbage's devices possessed beyond those created before him was that each component of the device was independent of the rest of the machine, much like the components of a modern electronic computer. This was a fundamental shift in thought; previous computational devices served only a single purpose but had to be at best disassembled and reconfigured to solve a new problem. Babbage's devices could be reprogrammed to solve new problems by the entry of new data and act upon previous calculations within the same series of instructions. Ada Lovelace took this concept one step further, by creating a program for the Analytical Engine to calculate Bernoulli numbers, a complex calculation requiring a recursive algorithm. This is considered to be the first example of a true computer program, a series of instructions that act upon data not known in full until the program is run.
Following Babbage, although unaware of his earlier work, Percy Ludgate[14][15] in 1909 published the 2nd of the only two designs for mechanical analytical engines in history.[16] Two other inventors, Leonardo Torres Quevedo[17] and Vannevar Bush,[18] also did follow-on research based on Babbage's work. In his Essays on Automatics (1914) Torres presented the design of an electromechanical calculating machine and introduced the idea of Floating-point arithmetic.[19][20] In 1920, to celebrate the 100th anniversary of the invention of the arithmometer, Torres presented in Paris the Electromechanical Arithmometer, an arithmetic unit connected to a remote typewriter, on which commands could be typed and the results printed automatically.[21][22] Bush's paper Instrumental Analysis (1936) discussed using existing IBM punch card machines to implement Babbage's design. In the same year, he started the Rapid Arithmetical Machine project to investigate the problems of constructing an electronic digital computer.
Several examples of analog computation survived into recent times. A planimeter is a device that does integrals, using distance as the analog quantity. Until the 1980s, HVAC systems used air both as the analog quantity and the controlling element. Unlike modern digital computers, analog computers are not very flexible and need to be reconfigured (i.e., reprogrammed) manually to switch them from working on one problem to another. Analog computers had an advantage over early digital computers in that they could be used to solve complex problems using behavioral analogues while the earliest attempts at digital computers were quite limited.
Since computers were rare in this era, the solutions were often hard-coded into paper forms such as nomograms,[23] which could then produce analog solutions to these problems, such as the distribution of pressures and temperatures in a heating system.
The "brain" [computer] may one day come down to our level [of the common people] and help with our income-tax and book-keeping calculations. But this is speculation and there is no sign of it so far.
— British newspaper The Star in a June 1949 news article about the EDSAC computer, long before the era of the personal computers.[24]
In an 1886 letter, Charles Sanders Peirce described how logical operations could be carried out by electrical switching circuits.[25] During 1880-81 he showed that NOR gates alone (or NAND gates alone) can be used to reproduce the functions of all the other logic gates, but this work on it was unpublished until 1933.[26] The first published proof was by Henry M. Sheffer in 1913, so the NAND logical operation is sometimes called Sheffer stroke; the logical NOR is sometimes called Peirce's arrow.[27] Consequently, these gates are sometimes called universal logic gates.[28]
The first digital electronic computer was developed in the period April 1936 - June 1939, in the IBM Patent Department, Endicott, New York by Arthur Halsey Dickinson.[35][36][37] In this computer IBM introduced, a calculating device with a keyboard, processor and electronic output (display). The competitor to IBM was the digital electronic computer NCR3566, developed in NCR, Dayton, Ohio by Joseph Desch and Robert Mumma in the period April 1939 - August 1939.[38][39] The IBM and NCR machines were decimal, executing addition and subtraction in binary position code.
In December 1939 John Atanasoff and Clifford Berry completed their experimental model to prove the concept of the Atanasoff–Berry computer (ABC) which began development in 1937.[40] This experimental model is binary, executed addition and subtraction in octal binary code and is the first binary digital electronic computing device. The Atanasoff–Berry computer was intended to solve systems of linear equations, though it was not programmable. The computer was never truly completed due to Atanasoff's departure from Iowa State University in 1942 to work for the United States Navy.[41][42] Many people credit ABC with many of the ideas used in later developments during the age of early electronic computing. [43]
The Z3 computer, built by German inventor Konrad Zuse in 1941, was the first programmable, fully automatic computing machine, but it was not electronic.
During World War II, ballistics computing was done by women, who were hired as "computers." The term computer remained one that referred to mostly women (now seen as "operator") until 1945, after which it took on the modern definition of machinery it presently holds.[44]
The ENIAC (Electronic Numerical Integrator And Computer) was the first electronic general-purpose computer, announced to the public in 1946. It was Turing-complete,[45] digital, and capable of being reprogrammed to solve a full range of computing problems. Women implemented the programming for machines like the ENIAC, and men created the hardware.[44]
The silicon-gate MOS integrated circuit was developed by Federico Faggin at Fairchild Semiconductor in 1968.[68] This led to the development of the first single-chip microprocessor, the Intel 4004.[69] The Intel 4004 was developed as a single-chip microprocessor from 1969 to 1970, led by Intel's Federico Faggin, Marcian Hoff, and Stanley Mazor, and Busicom's Masatoshi Shima.[70] The chip was mainly designed and realized by Faggin, with his silicon-gate MOS technology.[69] The microprocessor led to the microcomputer revolution, with the development of the microcomputer, which would later be called the personal computer (PC).
Most early microprocessors, such as the Intel 8008 and Intel 8080, were 8-bit. Texas Instruments released the first fully 16-bit microprocessor, the TMS9900 processor, in June 1976.[71] They used the microprocessor in the TI-99/4 and TI-99/4A computers.
The 1980s brought about significant advances with microprocessors that greatly impacted the fields of engineering and other sciences. The Motorola 68000 microprocessor had a processing speed that was far superior to the other microprocessors being used at the time. Because of this, having a newer, faster microprocessor allowed for the newer microcomputers that came along after to be more efficient in the amount of computing they were able to do. This was evident in the 1983 release of the Apple Lisa. The Lisa was one of the first personal computers with a graphical user interface (GUI) that was sold commercially. It ran on the Motorola 68000 CPU and used both dual floppy disk drives and a 5 MB hard drive for storage. The machine also had 1MB of RAM used for running software from disk without rereading the disk persistently.[72] After the failure of the Lisa in terms of sales, Apple released its first Macintosh computer, still running on the Motorola 68000 microprocessor, but with only 128KB of RAM, one floppy drive, and no hard drive to lower the price.
In the late 1980s and early 1990s, computers became more useful for personal and work purposes, such as word processing.[73] In 1989, Apple released the Macintosh Portable, it weighed 7.3 kg (16 lb) and was extremely expensive, costing US$7,300. At launch, it was one of the most powerful laptops available, but due to the price and weight, it was not met with great success and was discontinued only two years later. That same year Intel introduced the Touchstone Delta supercomputer, which had 512 microprocessors. This technological advancement was very significant, as it was used as a model for some of the fastest multi-processor systems in the world. It was even used as a prototype for Caltech researchers, who used the model for projects like real-time processing of satellite images and simulating molecular models for various fields of research.
Supercomputers
In terms of supercomputing, the first widely acknowledged supercomputer was the Control Data Corporation (CDC) 6600[74] built in 1964 by Seymour Cray. Its maximum speed was 40 MHz or 3 million floating point operations per second (FLOPS). The CDC 6600 was replaced by the CDC 7600 in 1969;[75] although its normal clock speed was not faster than the 6600, the 7600 was still faster due to its peak clock speed, which was approximately 30 times faster than that of the 6600. Although CDC was a leader in supercomputers, their relationship with Seymour Cray (which had already been deteriorating) completely collapsed. In 1972, Cray left CDC and began his own company, Cray Research Inc.[76] With support from investors in Wall Street, an industry fueled by the Cold War, and without the restrictions he had within CDC, he created the Cray-1 supercomputer. With a clock speed of 80 MHz or 136 megaFLOPS, Cray developed a name for himself in the computing world. By 1982, Cray Research produced the Cray X-MP equipped with multiprocessing and in 1985 released the Cray-2, which continued with the trend of multiprocessing and clocked at 1.9 gigaFLOPS. Cray Research developed the Cray Y-MP in 1988, however afterward struggled to continue to produce supercomputers. This was largely because the Cold War had ended, and the demand for cutting-edge computing by colleges and the government declined drastically and the demand for microprocessing units increased.
In 1998, David Bader developed the first Linux supercomputer using commodity parts.[77] While at the University of New Mexico, Bader sought to build a supercomputer running Linux using consumer off-the-shelf parts and a high-speed low-latency interconnection network. The prototype utilized an Alta Technologies "AltaCluster" of eight dual, 333 MHz, Intel Pentium II computers running a modified Linux kernel. Bader ported a significant amount of software to provide Linux support for necessary components as well as code from members of the National Computational Science Alliance (NCSA) to ensure interoperability, as none of it had been run on Linux previously.[78] Using the successful prototype design, he led the development of "RoadRunner," the first Linux supercomputer for open use by the national science and engineering community via the National Science Foundation's National Technology Grid. RoadRunner was put into production use in April 1999. At the time of its deployment, it was considered one of the 100 fastest supercomputers in the world.[78][79] Though Linux-based clusters using consumer-grade parts, such as Beowulf, existed before the development of Bader's prototype and RoadRunner, they lacked the scalability, bandwidth, and parallel computing capabilities to be considered "true" supercomputers.[78]
Today, supercomputers are still used by the governments of the world and educational institutions for computations such as simulations of natural disasters, genetic variant searches within a population relating to disease, and more. As of April 2023[update], the fastest supercomputer is Frontier.
Navigation and astronomy
Starting with known special cases, the calculation of logarithms and trigonometric functions can be performed by looking up numbers in a mathematical table, and interpolating between known cases. For small enough differences, this linear operation was accurate enough for use in navigation and astronomy in the Age of Exploration. The uses of interpolation have thrived in the past 500 years: by the twentieth century Leslie Comrie and W.J. Eckert systematized the use of interpolation in tables of numbers for punch card calculation.
Women are often underrepresented in STEM fields when compared to their male counterparts.[84] In the modern era before the 1960s, computing was widely seen as "women's work" since it was associated with the operation of tabulating machines and other mechanical office work.[85][86] The accuracy of this association varied from place to place. In America, Margaret Hamilton recalled an environment dominated by men,[87] while Elsie Shutt recalled surprise at seeing even half of the computer operators at Raytheon were men.[88] Machine operators in Britain were mostly women into the early 1970s.[89] As these perceptions changed and computing became a high-status career, the field became more dominated by men.[90][91][92] Professor Janet Abbate, in her book Recoding Gender, writes:
Yet women were a significant presence in the early decades of computing. They made up the majority of the first computer programmers during World War II; they held positions of responsibility and influence in the early computer industry; and they were employed in numbers that, while a small minority of the total, compared favorably with women's representation in many other areas of science and engineering. Some female programmers of the 1950s and 1960s would have scoffed at the notion that programming would ever be considered a masculine occupation, yet these women’s experiences and contributions were forgotten all too quickly.[93]
Some notable examples of women in the history of computing are:
Ada Lovelace: wrote the addendum to Babbage's Analytical Machine. Detailing, in poetic style, the first computer algorithm; a description of exactly how The Analytical Machine should have worked based on its design.
Hedy Lamarr: invented a "frequency hopping" technology that the Navy used during World War II to control torpedoes via radio signals. This same technology is also used today in creating Bluetooth and Wi-Fi signals.
Margaret Hamilton: the director of the Software Engineering Division at MIT, which developed on-board flight software for the Apollo's Missions to Space.
^L. Torres Quevedo (1914). "Ensayos sobre Automática – Su definicion. Extension teórica de sus aplicaciones". Revista de la Academia de Ciencias Exacta, Revista 12: 391–418.
^Peirce, C. S. (manuscript winter of 1880–81), "A Boolian Algebra with One Constant", published 1933 in Collected Papers v. 4, paragraphs 12–20. Reprinted 1989 in Writings of Charles S. Peirce v. 4, pp. 218–212. See Roberts, Don D. (2009), The Existential Graphs of Charles S. Peirce, p. 131.
^* Turing, Alan M. (1936), "On Computable Numbers, with an Application to the Entscheidungsproblem", Proceedings of the London Mathematical Society, 2, vol. 42 (published 1937), pp. 230–265, doi:10.1112/plms/s2-42.1.230, S2CID73712 (and Turing, Alan M. (1938), "On Computable Numbers, with an Application to the Entscheidungsproblem. A correction", Proceedings of the London Mathematical Society, 2, vol. 43, no. 6 (published 1937), pp. 544–546, doi:10.1112/plms/s2-43.6.544)
^Desch, J.R., "Calculating Machine", U.S. patent 2,595,045, filed March 20, 1940, granted Apr. 29, 1952,
^"Interview with Robert E. Mumma" (Interview). Interviewed by William Aspray. Dayton, OH, Charles Babbage Institute, Center for the History of Information Processing. 19 April 1984.
^Larson E., "Findings of Fact, Conclusions of Law and Order for Judgement", US District Court, District of Minnesota, Fourth Division, 19 Oct. 1973, ushistory.org/more/eniac/index.htm, ushistory.org/more/eniac/intro.htm
^"interview with John V. Atanasoff"(PDF) (Interview). Interviewed by Tropp H.S. Computer Oral History Collection, 1969-1973, 1979, Smithsonian National Museum of American History, Lemelson Center for the Study of Invention and Innovation. May 11, 1972. Archived from the original(PDF) on January 29, 2022. Retrieved January 9, 2022.
^Hicks 2017, pp. 215–216: "The Civil Service's computing workforce continued to bifurcate along both gendered and class lines, even though among machine operators in industry and government there were still more than 6.5 times as many women as men in 1971."
^Hicks 2017, pp. 1–9: "In the 1940s, computer operation and programming was viewed as women's work—but by the 1960s, as computing gained prominence and influence, men displaced the thousands of women who had been pioneers in a feminized field of endeavor, and the field acquired a distinctly masculine image ... Soon, women became synonymous with office machine operators and their work became tied to typewriters, desktop accounting machines, and room-sized punched card equipment installations ... Their alignment with machine work in offices persisted through waves of equipment upgrades and eventually through the changeover from electromechanical to electronic systems."
^Ensmenger 2012, p. 239: "Over the 1960s, developments in the computing professions were creating new barriers to female participation. An activity originally intended to be performed by low-status, clerical—and more often than not, female—computer programming was gradually and deliberately transformed into a high-status, scientific, and masculine discipline .... In 1965, for example, the Association for Computing Machinery imposed a four-year degree requirement for membership that, in an era when there were almost twice as many male as there were female college undergraduates, excluded significantly more women than men ... Similarly, certification programs or licensing requirements erected barriers to entry that disproportionately affected women."
Bromley, Allan G. (1990). "Difference and Analytical Engines". In Aspray, William (ed.). Computing Before Computers(PDF). Ames: Iowa State University Press. pp. 59–98. ISBN978-0-8138-0047-9. Archived(PDF) from the original on 2022-10-09.
Further reading
Yeo, ShinJoung. (2023) Behind the Search Box: Google and the Global Internet Industry (U of Illinois Press, 2023) ISBN 10:0252087127 online
Bitsavers, an effort to capture, salvage, and archive historical computer software and manuals from minicomputers and mainframes of the 1950s, 60s, 70s, and 80s