History of Computing – Key Milestones, CS 101 – Study Notes
offline

Difficulty: Introductory | No prerequisites. This is foundational material suitable for anyone beginning a computer science programme.

This topic covers the major milestones in the development of computing, from Ada Lovelace's first algorithm in 1843 through to the establishment of computer science as a formal academic discipline in the 1950s and 1960s. It sits right at the start of most introductory CS courses, giving you the historical context for everything that follows: programming languages, hardware architecture, and software engineering. You do not need any prior technical knowledge, but having a general sense of 19th and 20th-century technological progress will help the timeline land more naturally. If you have already covered basic logic gates or Boolean algebra, you will start to see where those ideas grew out of the mechanical and electromechanical machines described here.


TL;DR

Computing evolved from purely mechanical calculating machines in the 19th century, through electromechanical devices in the early 20th century, to fully electronic computers in the 1940s. Along the way, key figures such as Ada Lovelace, Herman Hollerith, Torres Quevedo, and Howard Aiken each pushed the field forward. By the 1950s and 1960s, computer science had become a recognised academic discipline with its own university departments and degree programmes.


Key Terms

Analytical Engine

A general-purpose mechanical computing machine designed by Charles Babbage in the 1830s. It was never fully built, but its design included an arithmetic logic unit, control flow via conditional branching, and memory. Think of it as the conceptual ancestor of every modern computer.

Algorithm (in the Lovelace sense)

A step-by-step set of instructions written for execution on a machine. Ada Lovelace's 1843 procedure for computing Bernoulli numbers is regarded as the first published algorithm intended specifically for a computing device. In simple terms, this means she wrote the first "programme" before programmable computers existed.

Tabulator

An electromechanical machine invented by Herman Hollerith around 1885 that processed data stored on punched cards. It was originally built to speed up the US Census. In simple terms, it was the first machine built specifically to handle large volumes of statistical data, and Hollerith's company eventually became part of IBM.

Punched cards

Stiff paper cards with holes punched in specific positions to represent data or instructions. They served as both input and storage media for early computing machines from Hollerith's tabulator through to the Harvard Mark I and beyond. Think of each card as a single line of code or a single data record.

Floating-point arithmetic

A method of representing real numbers (numbers with decimal points) in a way that can handle very large and very small values. Torres Quevedo introduced this concept in his 1914 work. In simple terms, it is how computers store and calculate with numbers that are not whole integers.

Electromechanical Arithmometer

A prototype built by Leonardo Torres Quevedo, demonstrated in Paris in 1920, that proved an electromechanical analytical engine was feasible: instructions could be typed in and results printed automatically.

ASCC/Harvard Mark I

A large-scale electromechanical computer completed in 1944, built by IBM at Howard Aiken's request. It was based on Babbage's Analytical Engine concepts and used punched tape and a central processing unit. Some called it "Babbage's dream come true."

ENIAC

The Electronic Numerical Integrator and Computer. One of the first general-purpose electronic computers, built in the 1940s. It marked the point where "computer" shifted from meaning a person who computes to meaning a machine.

Atanasoff-Berry Computer (ABC)

An early electronic computer developed in the late 1930s and early 1940s by John Atanasoff and Clifford Berry. It was one of the first machines to use electronic switching elements rather than mechanical parts for computation.

Datalogy

A term proposed by Danish scientist Peter Naur as an alternative to "computer science," emphasising that the discipline is fundamentally about data and information handling rather than about computers themselves.


Core Content

Early Mechanical and Electromechanical Computing (1843 to 1920)

  • Ada Lovelace and the first algorithm (1843)

    • While translating a French article on Babbage's Analytical Engine, Lovelace added extensive notes of her own

    • One note contained an algorithm for computing Bernoulli numbers

    • This is considered the first published algorithm specifically designed for execution on a computing machine

    • Lovelace also foresaw that the Engine could go beyond pure number-crunching, anticipating general-purpose computation

  • Herman Hollerith and the tabulator (c. 1885)

    • Hollerith invented a tabulating machine that used punched cards to process statistical data

    • Originally developed to accelerate the US Census

    • His company eventually became part of IBM, one of the most significant companies in computing history

  • Percy Ludgate's analytical engine (1909)

    • Ludgate independently published the design for a mechanical analytical engine, the only other such design besides Babbage's

    • He was unaware of Babbage's earlier work, making this a case of independent invention

  • Leonardo Torres Quevedo and electromechanical computing (1914 to 1920)

    • In 1914, Torres Quevedo published Essays on Automatics, describing a theoretical electromechanical calculating machine controlled by a read-only programme

    • His work introduced the concept of floating-point arithmetic, a foundational technique still used in every modern computer

    • In 1920, he demonstrated the Electromechanical Arithmometer in Paris, proving that an electromechanical analytical engine was feasible

    • Instructions could be typed in and results printed automatically, a significant step toward practical programmable computation

The Electromechanical and Electronic Era (1937 to 1940s)

  • Howard Aiken and the Harvard Mark I (1937 to 1944)

    • One hundred years after Babbage's original design, Aiken convinced IBM to build a large-scale programmable calculating machine

    • The ASCC/Harvard Mark I used punched tape and a central processing unit, directly influenced by Babbage's Analytical Engine

    • When completed, some called it "Babbage's dream come true"

  • The shift to electronic computing (1940s)

    • Machines like the Atanasoff-Berry Computer (ABC) and ENIAC used electronic components rather than mechanical or electromechanical parts

    • These were dramatically faster and more powerful than their predecessors

    • During this period, the word "computer" shifted from referring to a human who performs calculations to referring to the machine itself

    • It became clear that electronic computers could be used for far more than numerical calculation, broadening the scope of the entire field

Computer Science as an Academic Discipline (1945 to 1962)

  • IBM Watson Scientific Computing Laboratory (1945)

    • IBM established this lab at Columbia University in New York City

    • It was IBM's first laboratory devoted to pure scientific research

    • The lab is the forerunner of IBM Research, which today operates research facilities worldwide

  • First academic courses and programmes

    • Columbia University offered one of the first academic-credit courses in computer science in 1946

    • The world's first computer science degree programme began at the University of Cambridge in 1953

    • The first computer science department in the United States was formed at Purdue University in 1962

  • The IBM-Columbia relationship

    • The close partnership between IBM and Columbia University was instrumental in establishing computer science as a new academic discipline

    • This collaboration helped bridge the gap between industrial computing and university research

Etymology and the Naming of Computer Science

  • The term "computer science" was first proposed in 1956

  • It appeared in print in a 1959 article in Communications of the ACM, written by Louis Fein

    • Fein argued for creating a graduate school of computer science, comparable to the Harvard Business School (founded 1921)

    • He justified the name by noting that, like management science, the field is applied and interdisciplinary while still having characteristics of a formal academic discipline

  • George Forsythe and others successfully campaigned for dedicated CS departments, starting with Purdue in 1962

  • Alternative names proposed:

    • "Computing science," preferred by some universities to emphasise that the field is broader than computers themselves

    • "Datalogy," suggested by Peter Naur (Denmark), to reflect that the discipline centres on data and information processing rather than on machines

  • A significant portion of computer science does not involve computers directly, which is why the name has always been debated


Common Misconceptions

  • Students often think Charles Babbage built the Analytical Engine. He did not. It was designed but never fully constructed. The first machine that realised Babbage's vision was the Harvard Mark I, completed roughly a century later.

  • Students sometimes credit Ada Lovelace with inventing programming. More precisely, she wrote the first published algorithm designed for a computing machine. The distinction matters: the concept of step-by-step instructions existed before her, but she was the first to write one tailored for a specific machine.

  • Many students assume "computer science" has always been the name of the field. The term was not proposed until 1956 and was debated from the start. Alternative names like "datalogy" and "computing science" reflect real disagreements about what the discipline is fundamentally about.

  • Students frequently think ENIAC was the first electronic computer. The Atanasoff-Berry Computer predates it, though the ABC was special-purpose rather than general-purpose.


Why It Matters / Exam Flags

⚠️ Know the key dates and figures: Lovelace (1843), Hollerith (c. 1885), Ludgate (1909), Torres Quevedo (1914, 1920), Aiken/Harvard Mark I (1937 to 1944), ENIAC (1940s), Cambridge degree (1953), Purdue department (1962).

⚠️ Be able to explain the significance of Lovelace's contribution: the first algorithm written specifically for a computing machine.

⚠️ Understand the transition from "computer" meaning a person to "computer" meaning a machine, and when that shift occurred (1940s).

⚠️ Know that floating-point arithmetic was introduced by Torres Quevedo in 1914, not during the electronic computing era.

⚠️ Be prepared to discuss why the name "computer science" is considered imprecise and what alternatives have been proposed (computing science, datalogy).


Quick Self-Test

  1. True or false: Ada Lovelace built the first computer. (False: she wrote the first published algorithm for a computing machine; the Analytical Engine was never built.)

  1. Fill in the blank: Herman Hollerith's tabulating machine used ______ to process statistical data. (Punched cards.)

  1. True or false: The term "computer science" was coined in the 1940s alongside the first electronic computers. (False: it was first proposed in 1956 and appeared in print in 1959.)

  1. Fill in the blank: The first computer science department in the United States was established at ______ in 1962. (Purdue University.)

  1. True or false: Torres Quevedo's 1914 work introduced the concept of floating-point arithmetic. (True.)


Practice Q&A

Q: What is Ada Lovelace's primary contribution to computing, and why is it significant?

A: She wrote an algorithm for computing Bernoulli numbers as part of her notes on Babbage's Analytical Engine in 1843. It is considered the first published algorithm specifically designed for execution on a computing machine.

Q: What was the Harvard Mark I, and how did it relate to Babbage's earlier work?

A: The ASCC/Harvard Mark I was a large-scale electromechanical programmable computer completed in 1944, built by IBM at Howard Aiken's request. It was directly based on Babbage's Analytical Engine concepts, using punched tape and a central processing unit. Some described it as "Babbage's dream come true."

Q: When and why did the word "computer" change meaning?

A: During the 1940s, with the arrival of electronic machines like the Atanasoff-Berry Computer and ENIAC. The term shifted from referring to a person who performs calculations to referring to the machine doing the computing.

Q: Name two alternative terms proposed for "computer science" and explain the reasoning behind one of them.

A: "Computing science" and "datalogy." Peter Naur proposed "datalogy" to emphasise that the discipline is fundamentally about data and information handling, not necessarily about computers as machines.

Q: What was the significance of Torres Quevedo's 1914 publication?

A: Torres Quevedo described a theoretical electromechanical calculating machine controlled by a read-only programme, and his work introduced the concept of floating-point arithmetic, a method of representing decimal numbers that remains fundamental to modern computing.


Connections to Other Topics

This material connects directly to Boolean algebra and logic gates: the theoretical underpinnings that made electronic computing possible in the 1940s grew from the same mathematical tradition that Babbage and Lovelace were working within. If your course covers digital logic, you will see how the mechanical switches of early machines evolved into the transistor-based logic of modern processors.

The history of punched cards and the Harvard Mark I leads into topics on computer architecture and instruction sets. Understanding that early machines separated instructions from data storage helps explain the von Neumann architecture, which is likely covered later in the course.

The naming debate (computer science vs. computing science vs. datalogy) connects to broader questions about what the discipline actually studies, which comes up again when you encounter topics like algorithms, data structures, and computational theory.


Related Terms / Search Tags

Ada Lovelace, Charles Babbage, Analytical Engine, Bernoulli numbers, first algorithm, first computer programme, Herman Hollerith, tabulator, punched cards, IBM origins, Percy Ludgate, Leonardo Torres Quevedo, Essays on Automatics, floating-point arithmetic, Electromechanical Arithmometer, Howard Aiken, Harvard Mark I, ASCC, Atanasoff-Berry Computer, ABC, ENIAC, electronic computer, history of computing, Watson Scientific Computing Laboratory, Columbia University CS, Cambridge University computer science degree, Purdue University CS department, Louis Fein, George Forsythe, Peter Naur, datalogy, computing science, computer science etymology, CS 101, history of computer science, origins of programming, mechanical computing, electromechanical computing