Computing
Automate reasoning that is mechanical.
Everything for this step
- Field guide
- The sciences → 15 sections Mathematics → 9 sections Computer science → 6 sections Electronics and computer hardware → 19 sections
- Builds
- None yet.
- Reference sheets
- None.
- Sciences it rests on
- Computer science · Mathematics
- Track
- Electronics and computing, level 1 of 1 · next: Networks
Why this matters
A computer does not do anything a person with paper cannot do; it does it fast enough to change what is worth attempting. Structural calculation, navigation, statistics, simulation, record-keeping and cryptography all move from impractical to routine.
The shape of it
- Start mechanical and analogue. Slide rules, planimeters, mechanical calculators, differential analysers and nomograms are all buildable at tier 3 and solve real engineering problems. Do not skip them — they are useful for a long time before digital is available.
- Then relay logic, which needs no tubes and no semiconductors at all. Relays are slow but robust and entirely makeable with tier-4 skills, and they are enough for real computation.
- Then a stored-program machine with tubes. The key idea is that instructions and data live in the same memory, so the machine can be repurposed without rewiring.
- Memory is the hard part, and it always has been. Delay lines, cathode-ray storage tubes, and above all magnetic core memory — tiny ferrite rings threaded by hand — which is durable, non-volatile and genuinely makeable without semiconductors.
- Write the software down and keep it human-readable. Source code plus documentation on paper survives the machine it ran on. Binary on obsolete media does not.
- Choose durable, documented formats for everything you store. Plain text outlives every proprietary format ever created. A society that stores its records in undocumented formats has encrypted its own archive against itself.
- Apply it where the return is largest: structural and chemical calculation, agricultural and medical statistics, weather, and the settlement's records.
- Keep the hand methods alive. A generation that can only compute with a machine has moved a single point of failure into the middle of everything.
Doing it, step by step
The summary above says what has to happen. This says how, with the numbers that decide whether it works.
1 · Build the hand and mechanical aids first, and keep teaching them
Slide rules and log tables give about three significant figures, fast, with no power; nomograms solve a fixed formula by laying a straight edge across scales; planimeters measure areas on drawings; mechanical calculators add, subtract, multiply and divide with gears. All are buildable at tier 3 and solve real engineering problems.
Keep the hand methods alive. A generation that can only compute with a machine has moved a single point of failure into the middle of everything. Teach them in school alongside the machines.
2 · Check machine results by hand, on a sample
A machine does wrong arithmetic confidently, from a fault, a bad input or a program error. For every important calculation, work a sample by hand or by an independent method, and estimate the answer's size before trusting the output — see arithmetic for everyone.
Record in the archive which calculation was checked, how, and by whom.
3 · Build relay logic
Relays need no tubes and no semiconductors. Arranged in series and parallel they make AND, OR and NOT, and from those a binary adder, counters and memory. They switch in milliseconds — slow — but they are robust and makeable with tier-4 skills, and they are enough for real computation: Zuse's Z3 of 1941 used about 2,600 relays.
Relay contacts wear and bounce; clean and inspect contacts on a schedule, and design circuits to tolerate a few milliseconds of bounce.
4 · Build a stored-program machine and run it continuously
The key idea: instructions and data live in the same memory, so the machine can be repurposed without rewiring.
With tubes, the tubes are the reliability problem: ENIAC used over 17,000 tubes and about 150 kW. Tubes fail most often at switch-on, as filaments heat and cool — run the machine continuously rather than cycling it daily, run filaments slightly below their rated voltage to extend life, and stock spares and a fault log. Stable power first: building computation before the supply can be trusted is a named failure.
5 · Build magnetic core memory
Memory is the hard part, and it always has been. Magnetic core memory is tiny ferrite rings threaded by hand on a grid of wires; each ring stores one bit as its direction of magnetisation. A ring flips only when it receives current on both its row and column wire together — half the switching current on each — so any single bit can be selected.
It is durable and non-volatile: it keeps its contents with the power off. Test every plane with written patterns — all ones, all zeros, alternating — before use.
6 · Keep software and documentation on paper
Source code plus documentation on paper survives the machine it ran on; binary on obsolete media does not.
Print every program's source, with a version number, the date, what it does, how to run it and how to check its output. Keep printed copies in the archive in more than one place. Record the machine's instruction set and design on paper too, so a program can be understood — or re-run on a new machine — decades later.
7 · Store records in plain, documented formats
A society that stores its records in undocumented formats has encrypted its own archive against itself. Plain text outlives every proprietary format ever created.
- Plain text or simple, fully documented formats, with the character encoding written down.
- Copies on more than one kind of medium, in more than one place.
- A checksum for every file, recorded separately, so silent corruption is detected.
- Copy data onto fresh media on a schedule, before the old media fail.