06. Numbers

What can and cannot be known about the history of software

The record is a survivorship sample of decisions that had a document attached, and this whole document is written from it.

For a separate operational view of time, ownership and team activity, see this Monitask guide.

what-can-be-known.src
sackman1968.csv n=12 ratio=28:1
# extreme against extreme

What survives from a decision

The manual, if somebody kept one. The standard, if there was one. The source, sometimes, and increasingly often now that preservation projects exist. A mailing list, patchily, where the discussion happened in public and somebody archived it.

That is a short list, and every entry in this document is written from it.

What was never written down

What the alternatives were. Why they were rejected. Who objected and on what grounds. What everybody in the room considered too obvious to state, which is usually the assumption that later turns out to have been the whole decision.

Those things existed in conversation and mostly nowhere else. No amount of archival work recovers them, because they were never in a form that could be archived.

The survivorship problem

The systems described in the literature are the ones that succeeded, or failed expensively enough to be investigated, or were built by people who wrote papers.

The ordinary majority — the business systems, the internal tools, the thousands of programs that worked adequately and were replaced — left almost nothing. Any general claim about how software was made in a period is a claim about the visible minority.

What oral history is worth

A great deal, and it is a specific kind of evidence. Recollection decades later is shaped by knowing how things turned out, by the narratives that formed since, and by the ordinary reconstruction memory performs.

It is also, frequently, the only account of intent that exists. This document uses it repeatedly and marks it wherever it does, which is the most that can be done: not discounting it, and not treating it as a document written at the time.

How folklore forms

A story that is memorable, explains something neatly, and has no traceable source. The origin of a card's dimensions in an earlier entry here is one. Several others in this field have the same shape: a satisfying causal chain, universally repeated, resting on nothing anybody can point at.

The tell is usually that the story is too tidy. Real decisions involve several small reasons pointing the same way, and folklore involves one large one.

2010s onwardsWhat is getting better

Source preservation at scale, archived discussion, oral history programmes recording participants while they are alive, and the ordinary fact that a great deal of current development happens in public with its argument attached.

A historian of the present period will have the opposite problem from one studying the nineteen-seventies: not a scarcity of record, but an unmanageable quantity of it, most of it noise.

The method this document used

Stated plainly at the end because it is the only thing here that transfers to the reader's own reading. Name the source and its year. Say what kind of source it is. Mark a recollection as a recollection. Give the popular version, then the document that contradicts it. And where the record does not settle something, say so and stop rather than choosing the better story.

None of that is difficult. It is simply slower than repeating what everybody knows, which is why what everybody knows is frequently wrong.

Reading a primary source is faster than it sounds

Most of the documents referred to in this work are short. A language report, a protocol specification, a conference paper of the period: these are typically a few dozen pages and written for people who had to implement them.

The barrier is not difficulty but the assumption that the summary is sufficient. In the majority of the entries here the summary was wrong in some specific way that the original settles in a paragraph.

What this document is for

Not nostalgia, and not the claim that older work was better. Several of the entries describe decisions that were correct then and are wrong now, and several describe designs that lost deservedly.

The use is predictive. A field that repeats its own arguments every fifteen years, under new names, is a field where reading the previous round tells you a great deal about the current one, including which objections were already answered and which were merely forgotten.

Survivesthe manualthe standardsometimes the sourceoccasionally a mailing listWas never written downwhat the alternatives werewhy they were rejectedwho objected, and to whatwhat everybody assumedand the thousand systems nobody wrote aboutthe record is a survivorship sample, and every entry in this document is written from it
FigureThe short list of what survives from a decision, and the longer list of what was never written down at all.

The limits of this document specifically

It is written in one language, from sources mostly in that language, about work done predominantly in a few countries. Substantial computing histories elsewhere are underrepresented here, not because they matter less but because the accessible record is what it is and the author reads what he reads.

It also selects for the legible: decisions with a document attached. The most consequential choices in software may well have been made in rooms nobody recorded, and this document would have no way of knowing.

What we cannot verify

Everything above is an argument about evidence rather than a claim about the world, and it rests on the experience of assembling the preceding forty-one entries. The preservation projects and oral history programmes named are public and their coverage can be examined. Whether the record misleads in the direction described here cannot itself be established from the record.

In short

  1. What survives is manuals, standards, sometimes source, and patchy archived discussion.
  2. What was never written down is the alternatives, the objections and the assumptions.
  3. The literature describes systems that succeeded or failed expensively.
  4. Recollection decades later is the only account of intent, and is shaped by the outcome.
  5. Folklore is too tidy; real decisions have several small reasons pointing one way.
  6. Name the source and its year, mark recollections, and stop where the record stops.

also in Numbers

Next.

further context

For a primary or institutional reference, see ACM Transactions on Software Engineering and Methodology.

Every claim here carries the source it came from.

The source and its year sit beside the sentence they support. A secondary account is marked as one, and where the record is unclear the entry says so rather than choosing the better story.