Ken Thompson
Ken Thompson is a prominent computer engineer best known for his groundbreaking work at Bell Laboratories, where he co-developed the Unix operating system with Dennis Ritchie in 1969. Born on February 4, 1943, in New Orleans, Louisiana, Thompson pursued his education in electrical engineering and computer science at the University of California, Berkeley. His early contributions to the field include developing the first purpose-built chess computer, Belle, and the UTF-8 character encoding scheme, which has become a standard for the World Wide Web.
Thompson's innovations also extended to programming languages, notably the creation of the B programming language, which influenced the later C programming language. His work on Unix not only revolutionized operating systems but also popularized the use of regular expressions in programming. Throughout his career, Thompson received numerous accolades, including the Turing Award and the National Medal of Technology, and he was inducted into the National Inventors Hall of Fame in 2019.
After retiring from Bell Labs in 2000, Thompson joined Google, where he helped develop the Go programming language. He remains a respected figure in computer science and engineering, recognized for his contributions that have significantly shaped the digital landscape.
Subject Terms
Ken Thompson
Cocreator of the Unix operating system
- Born: February 4, 1943
- Place of Birth: New Orleans, Louisiana
Primary Company/Organization: Bell Laboratories
Introduction
As a computer engineer with Bell Laboratories, Ken Thompson contributed a number of innovations to the industry, including the character-encoding set used by the World Wide Web, the first purpose-built chess computer, and the use of regular expressions in computer applications. However, his most influential achievement was his development of the Unix operating system with Dennis Ritchie.

Early Life
Kenneth Lane Thompson was born on February 4, 1943, in New Orleans, Louisiana, to Lewis Elwood Thompson and Anna Hazel Lane Thompson. His father was a fighter pilot in the US Navy, and the family moved every few years. He attended the University of California, Berkeley, studying under information theorist Elwyn Berlekamp, and earned both a bachelor of science degree (1965) and a master of science degree (1966) in electrical engineering and computer science. While at Berkeley, Thompson participated in a work-study program with General Dynamics, a government defense contractor. After graduate school, Thompson took a job with Bell Laboratories (Bell Labs), working on programming languages and operating systems.
Life's Work
Bell Labs had been formed in the 1920s by the merger of the research laboratories of Western Electric and AT&T, and it had become one of the world's most significant research laboratories. It had been especially instrumental in furthering the computer industry; the transistor was invented by a Bell Labs team in 1947, the 1950s had seen advances in computer networks, and just before Thompson's stint researchers at Bell Labs had invented the metal-oxide-semiconductor field-effect transistor. Thompson would contribute to Bell Labs' place in the history of computers by developing the Unix operating system in 1969, working with Dennis Ritchie.
Ritchie was a second-generation Bell Labs scientist, the son of Alistair Ritchie, who had pioneered switching circuit theory. While working on the C programming language, Ritchie collaborated with Thompson on several projects, beginning with the Multics operating system. Multics had begun as a collaborative effort between Bell Labs, General Electric (GE), and the Massachusetts Institute of Technology (MIT), intended to result in a commercial product for GE. Multics was a multiplexed operating system (hence the name) and was designed to be much more flexible and versatile than anything that had yet been developed. It was created for time-sharing systems, and GE had some thought of developing computing as a utility like telephony and electricity. (This thinking gives some indication of how abruptly the personal computer revolution began, since the first personal computers—which would make GE's idea completely unnecessary—were on the horizon, barely a decade away.)
Bell Labs pulled out of the Multics project, which continued with GE and later Honeywell, in 1969. Thompson and Ritchie moved on to other work, but they had had the chance to develop some ideas on operating systems, which led to their creation of Unix. Thompson wrote an early computer game on the Multics system: Space Travel (sometimes confused with Spacewar!, a better-known game that was released to arcades). Space Travel simulated travel through the solar system, and the development of Unix began when Thompson and Ritchie ported Space Travel from Multics to the PDP-7 computer. The code they wrote in the process became the basis for the Unix operating system, making Space Travel a sort of Hobbit to Unix's Lord of the Rings.
The influence of Multics on Unix is so obvious in some areas that it is sometimes overestimated. The naming of commands is similar and sometimes identical—Thompson and Ritchie naturally retained the names to which they were accustomed from the work they had been doing. The name Unix, first spelled Unics, was a play on Multics. However, Unix was more of a reaction against Multics and its design flaws than a continuation of the Multics work. Thompson later described Multics as overwrought and overdesigned; Unix was designed to be simple and small, powerful but without placing an unreasonable demand on computing resources. Retained were the shell and the hierarchical file system.
The year Unix was born was also the year ARPANET, the internet's forefather, was launched and the Apollo program landed a man on the Moon. Unix was not originally an official Bell Labs project—that is, one with actual funding. When Thompson wanted more resources in order to keep the project going, he and Ritchie interested Bell Labs in providing funding and computing resources by adding text-processing capabilities with a text-formatting program called roff. The successor to roff was troff, the first publishing software with full typesetting capability.
While working on Multics, Thompson also developed the Bon programming language, probably named for his wife, Bonnie. Bon was not developed very far, but it may have lent its initial to the B programming language Thompson designed in 1969, based in part on the Basic Combined Programming Language (BCPL) developed in 1966 and used in the Unix project. Ritchie did some work on B after Thompson developed it, and it had a great influence on Ritchie's later C computer language—bridging the gap between C and earlier languages such as Forth. B remained in use through the rest of the century, mainly on Honeywell mainframes. The first open source multiuser dungeon online role-playing game (MUD), AberMUD, was written in B in 1989, although later copies of it were ported to C and run on Unix.
In 1971, Thompson developed ed, a line editor for Unix, which was one of the first Unix end-user programs and became standard in Unix systems. It was based on Thompson's Multics implementation of qed, an earlier line editor, and preserved the innovation Thompson had introduced: the use of regular expressions, to which Thompson had been introduced in a mathematics paper. Regular expressions are patterns that specify sets of strings, such as the vertical bar used to represent the Boolean expression or: "dog|cat" matches all occurrences of "dog" or "cat." Regular expressions can also be used to match variant spellings (or common misspellings or typos). Thompson's qed implementation and ed were the first editors to use regular expressions, and the popularity of Unix spread them throughout the computing world. Successors of ed include ex and vi.
Unix was rewritten in C, which Ritchie had developed based on B, in 1972. Over the course of the 1970s, Unix became extremely popular in academia, and versions of Unix and Unix-like operating systems (such as Linux and BSD) were implemented by many of the start-ups of the era, such as Sun Microsystems' Solaris operating system.
In the 1970s and 1980s, Thompson and Joseph Condon built Belle, the first purpose-built chess computer. With custom-made software, it was the most powerful chess computer of its era, winning numerous chess computer championships and confiscated at one point by the US State Department to prevent it from entering the Soviet Union, which was considered a violation of restrictions on the transit of advanced technology to foreign nations. Thompson used Belle to research endgame tablebases, the computer databases of endgame position analysis that are used by computer chess engines to determine their plays.
Thompson also worked on Plan 9 from Bell Labs, a free distributed operating system developed as a Unix successor. Work began in the 1980s, and the first edition was released in 1992 to universities; a second version was released in 1995 for commercial purposes. The third version was released in 2000 under an open source license, followed by a version in 2002 under a free software license. Plan 9 was used at Bell Labs for operating systems research, and developed at Bell Labs and by MIT personnel, but was not widely adopted.
In 1992, Thompson and Rob Pike developed the UTF-8 character encoding scheme. It became the predominant encoding scheme on the World Wide Web, in use on more than half of its pages by the early 2010s.
Thompson retired from Bell Labs on December 1, 2000, to pursue flight instruction full time. The technology company Google tempted him back, and became an engineer there in 2006. At Google he developed the Go programming language with Pike and Robert Griesemer. Development began in 2007, and the language was in use by 2010. A language designed for extremely fast compiling, it is also fairly easy to learn, relying on clean syntax and a small number of basic language concepts.
Thompson was named to the National Academy of Engineering in 1980 for his Unix work. In 1983, he and Ritchie were jointly given the Turing Award for Unix and their development of operating systems theory; his acceptance speech, "Reflections on Trusting Trust," introduced the Thompson hack, a type of backdoor attack, and is a major work in the theory of computer security. Thompson and Ritchie were honored again for their work in Unix in 1990 with the Richard W. Hamming Medal from the Institute of Electrical and Electronics Engineers (IEEE); in 1997, when they were inducted as Fellows of the Computer History Museum; in 1999, when President Bill Clinton awarded them with the National Medal of Technology and the IEEE awarded Thompson with the first Tsutomu Kanai Award; and in 2011, when they were given the Japan Prize for Information and Communications.
In 2019, Thompson was inducted into the National Inventors Hall of Fame. He remained a distinguished engineer at Google into the 2020s.
Personal Life
Thompson and his wife, Bonnie, had two children together. In the computer industry and hacking community, Thompson was often known simply as ken (intentionally lowercasing his name). He cut Unix distribution tapes by hand and often included the note "Love, ken." While at Bell Labs, Thompson would sometimes work thirty hours straight without sleep.
Bibliography
Chandler, Alfred D. Jr. Inventing the Electronic Century: The Epic Story of the Consumer Electronics and Computer Science Industries. New York: Free Press, 2001. Print.
Cringely, Robert X. Accidental Empires: How the Boys of Silicon Valley Make Their Millions, Battle Foreign Competition, and Still Can't Get a Date. New York: HarperBusiness, 1996. Print.
Kenney, Martin. Understanding Silicon Valley: The Anatomy of an Entrepreneurial Region. Stanford: Stanford Business Books, 2000. Print.
"Ken Thompson." National Inventors Hall of Fame, 2024, www.invent.org/inductees/ken-thompson. Accessed 6 Mar. 2024.
Rao, Arun, and Piero Scarulfi. A History of Silicon Valley. San Francisco: Omniware, 2011. Print.
Seibel, Peter. Coders at Work: Reflections on the Craft of Programming. New York: Apress, 2009. Print.