The Age of Analog Publishing
Before desktop publishing, the world of technical and scientific documentation was a slow, expensive, and frustrating place. If a researcher at a place like Bell Labs—a hotbed of innovation in the 20th century—wanted to publish a paper with mathematical
equations or tables, the process was agonizing. Manuscripts were typed, handed to professional typesetters, and returned as galley proofs full of errors. For complex formulas, symbols were often pasted in by hand. A single typo in an equation could mean sending the entire thing back, creating a bottleneck that stifled the rapid sharing of ideas. This wasn't an industry on the verge of collapse, but it was a cumbersome, analog machine struggling to keep pace with the digital minds it was supposed to serve.
A Coder's Frustration at Bell Labs
Enter Brian Kernighan. Working at Bell Labs in the 1970s, he was surrounded by people changing the world, including Dennis Ritchie, the creator of the C programming language, and Ken Thompson, the architect of Unix. These engineers were producing groundbreaking work in software, but the tools to document their creations were stuck in the past. Kernighan recognized the absurdity: the most advanced thinkers in computing were reliant on a publishing workflow that was fundamentally inefficient. The problem wasn't just an inconvenience; it was a barrier to progress. Getting knowledge out of the building and into the hands of other programmers and engineers was the final, crucial step, and it was the most broken part of the process.
The Decision to Treat Text as Code
The pivotal "decision" Kernighan championed wasn't a single command, but a profound philosophical shift: treat documentation like software. Instead of relying on specialized, external typesetting systems, he and his colleagues at Bell Labs developed a suite of tools that ran on their Unix operating system. These were small, powerful programs designed to do one thing well. With Lorinda Cherry, Kernighan developed `eqn`, a preprocessor that allowed anyone to write complex mathematical formulas using simple, text-based commands. He also championed `troff` for typesetting and other tools like `tbl` for tables. The decision was to empower the creators themselves. By embedding simple markup within a plain text file, an engineer could now compose, format, and print a publication-quality document without ever leaving their terminal.
A Publishing Revolution Begins
The impact was immediate and immense. Suddenly, the scientists and programmers at Bell Labs could produce books, manuals, and papers at a fraction of the time and cost. The most famous example is the book Kernighan co-authored with Dennis Ritchie, "The C Programming Language." This seminal text, which became the bible for a generation of programmers, was written and typeset entirely using these tools. It proved that a small set of text-processing programs could rival the quality of traditional publishers. This approach democratized technical publishing. It put the power of the press directly into the hands of the experts, severing their dependence on the slow and costly typesetting industry. The philosophy behind it—plain text as a universal format, manipulated by small, interoperable tools—became a cornerstone of the Unix philosophy and a direct ancestor to modern markup languages like HTML and Markdown.













