b. 1943, New Orleans — Co-creator of Unix at Bell Labs; designer of B, UTF-8, and Go
Also known as: Thompson, Kenneth Lane Thompson
Ken Thompson is, with Dennis Ritchie, the co-creator of Unix. In the summer of 1969, while his family was on holiday, he wrote the first version of what would become Unix on a cast-off PDP-7 at Bell Labs. Much of the shape of modern computing — the hierarchical filesystem, the shell-plus-small-tools model, pipes, regular expressions in ed, the idea that everything is a file — traces to decisions he and Ritchie made in those early years.
Thompson wrote the B language as a stripped-down BCPL, which Ritchie then developed into C. He designed regular expressions as a programmer's tool, first for the qed editor and later ed and grep. His 1984 Turing Award lecture, "Reflections on Trusting Trust", remains one of the most-cited papers in security, showing how a compiler could smuggle a backdoor through itself invisibly.
Later at Google, Thompson co-designed UTF-8 (in an evening, with Rob Pike, on a diner placemat) and co-created the Go programming language. He is famously soft-spoken and precise: his code tends to be the smallest possible that can do the job correctly.
Video
Related people: Dennis Ritchie, Brian Kernighan, Rob Pike, Douglas McIlroy
Works cited in this book:
- The UNIX Time-Sharing System (1974) (with Dennis M. Ritchie)
- Password Security: A Case History (1979) (with Robert Morris)
- Reflections on Trusting Trust (1984)
Discussed in:
- Chapter 2: A History of Unix and Linux — 1969: The Birth of Unix