Computing

Computing is the activity of carrying out systematic, step-by-step calculation and information processing — by people, by machines, or by both — according to explicit rules, and the broad field of practice and study built around doing that reliably, quickly, and at scale. The word covers more ground than "computers": it includes the mathematics of what can be calculated at all, the engineering of machines that do the calculating, the programs that direct them, and the everyday habit of turning a messy real-world problem into a procedure a machine can follow.

Computing began as a human job and a mathematical idea long before it became an electronic one. The word "computer" originally meant a person who did calculations, and teams of such human computers produced astronomical tables, ballistics tables, and census tallies for centuries. Ada Lovelace's 1843 notes on Charles Babbage's proposed Analytical Engine described a machine that could manipulate symbols according to rules, not just numbers. In 1936 Alan Turing's paper "On Computable Numbers" defined an abstract device — the Turing machine — and used it to show that some well-posed questions can never be answered by any mechanical procedure. Alonzo Church reached an equivalent conclusion with a different formalism around the same time, which is why the claim that these models capture everything "effectively calculable" is known as the Church-Turing thesis.

The decisive engineering step was the stored-program idea: instructions are held in the same kind of memory as the data they operate on, so changing the task means changing the contents of memory rather than rewiring the machine. The 1945 "First Draft of a Report on the EDVAC," credited to John von Neumann and drawing on the work of the ENIAC team of J. Presper Eckert and John Mauchly, laid out this organization, now called the von Neumann architecture. The Manchester Baby ran the first stored program in 1948, and from then on a single general-purpose machine could be a payroll system on Monday and a weather model on Tuesday. Everything since — from the Intel 4004 microprocessor of 1971 to a phone in a pocket — is a faster, smaller, cheaper elaboration of that same trade of generality for programmability.

A real-world problem
for example: total a month of sales receipts
Computational thinking
Abstraction
keep only amount and date, drop the paper
Algorithm
start at zero, add each amount, stop at the last receipt
Representation
amounts stored as numbers, receipts as a list
Program
the algorithm written in a language a machine can execute
Machine
hardware carries the steps out billions of times per second
A trustworthy result
checked for correctness, not merely produced quickly

What distinguishes computing from ordinary arithmetic is that the unit of work is a procedure, and the central skill is designing that procedure. Breaking a problem into precise steps, deciding which details to ignore (abstraction), choosing how to represent the remaining facts as symbols, and then checking that the procedure is correct are together called computational thinking, and they apply equally to sorting a list, routing a delivery fleet, or training a neural network. Different disciplines emphasize different parts: computer science studies what can be computed and how efficiently, computer engineering builds the machines, software engineering manages large programs, and information systems fits all of it to organizations. Every one of them rests on the same loop of receiving input, performing processing, producing output, and keeping results in storage.

Modern computing is less a single technology than a stack of layers, each hiding the one beneath it. Transistors form logic gates, gates form processors and memory, firmware and an operating system manage the hardware, programming languages and libraries sit on the operating system, and applications sit on top. Layering is what lets a web developer ignore voltage levels and lets a chip designer ignore spreadsheets. It also shapes today's frontier: machine-learning workloads are dominated by matrix arithmetic, which is why graphics processors and dedicated accelerators have become central to the field, and why cloud computing now rents that capacity by the hour instead of requiring every organization to own it.

A common misconception is that computing means the machine is "smart" or that a fast result is a correct one. A computer follows its instructions exactly, including mistaken ones, and the limits are real: Turing's 1936 result means no program can decide, for every possible program, whether it will ever stop, and many practical problems are solvable in principle yet take impossibly long as inputs grow. Speed is also not understanding — the same machine that multiplies millions of numbers per second will happily produce a confident wrong answer from a flawed rule or flawed data. Good computing therefore pairs automation with testing, verification, and a clear account of what the procedure assumes.

Read computing as the disciplined practice of turning a problem into an explicit procedure that a machine can carry out — powerful because the procedure can be repeated without fatigue, and limited by exactly how carefully the procedure was specified in the first place.

Take computing further

Ask the copilot about this term, or have our engineers assess it against your process.