Ken Thompson: el arquitecto silencioso que construyó los cimientos de la informática moderna

Ken Thompson | Visto en Ciberninjas

Biografía de Ken Thompson

## Ken Thompson: el arquitecto silencioso que construyó los cimientos de la informática moderna

**¿Quién es Ken Thompson?**

Kenneth Lane Thompson, conocido universalmente como Ken Thompson, nació el 4 de febrero de 1943 en Nueva Orleans, Luisiana. Es un científico de la computación estadounidense, pionero absoluto de la informática moderna y una de las figuras más influyentes —y a la vez más discretas— de la historia de la tecnología.

Thompson obtuvo su Bachelor of Science en 1965 y su máster en 1966, ambos en Ingeniería Eléctrica y Ciencias de la Computación por la Universidad de California, Berkeley. En 1966 se incorporó a los Laboratorios Bell (Bell Labs) en Murray Hill, Nueva Jersey, donde desarrollaría prácticamente toda su carrera durante más de tres décadas. Allí coincidió con Dennis Ritchie, con quien formaría una de las duplas más productivas y determinantes en la historia de la computación.

Su padre era militar de la Marina estadounidense, por lo que la familia se mudó con frecuencia durante su infancia. Esa itinerancia temprana quizá contribuyó a forjar un carácter reservado, pragmático y profundamente enfocado en resolver problemas concretos más que en buscar reconocimiento público.

Thompson ha recibido prácticamente todos los honores posibles en su campo: el Premio Turing en 1983 (compartido con Ritchie), la Medalla Nacional de Tecnología de Estados Unidos en 1998, el Premio Japón en 2011, el IEEE Richard W. Hamming Medal en 1990 y el Computer Pioneer Award en 1994, entre muchos otros.

## Lo que ha hecho y lo más relevante

La historia de Ken Thompson es, en gran medida, la historia de cómo se construyó el ecosistema sobre el que funciona prácticamente toda la informática actual.

### El nacimiento de Unix

A finales de los años sesenta, Bell Labs participaba junto al MIT y General Electric en el desarrollo de **Multics**, un ambicioso sistema operativo de tiempo compartido. Thompson trabajó en ese proyecto, pero lo abandonó frustrado por su creciente complejidad. En 1969, Bell Labs se retiró del proyecto Multics.

Lo que ocurrió después es legendario. Thompson encontró una computadora **PDP-7** infrautilizada en los laboratorios y, en apenas **un mes**, escribió la primera versión de un nuevo sistema operativo al que llamó **Unics** (posteriormente **Unix**), como un juego de palabras con “Multics” —un sistema multiusuario, frente a uno pensado para un solo usuario pero con una filosofía radicalmente distinta.

La motivación inicial fue sorprendentemente modesta. Thompson quería ejecutar un programa de simulación del sistema solar llamado **Space Travel** que había escrito para Multics, pero que ya no podía usar. Como él mismo reconoció, Unix nació como “una reacción contra los malos sistemas operativos de la época”.

Junto a Dennis Ritchie, Thompson desarrolló Unix con una filosofía que marcaría toda la computación posterior: **simplicidad, modularidad y portabilidad**. Unix fue el **primer sistema operativo portátil**, capaz de ejecutarse en máquinas de diferentes arquitecturas. Para lograrlo, Thompson creó el **lenguaje B**, precursor directo del **lenguaje C** de Ritchie, que a su vez permitió reescribir Unix en un lenguaje de alto nivel.

### El lenguaje B

Thompson diseñó el lenguaje **B** como una evolución del BCPL, tomando elementos que ya conocía del proyecto Multics. Aunque B fue un lenguaje limitado, fue el puente directo hacia C, el lenguaje que definiría la programación de sistemas durante las siguientes cinco décadas. El propio Thompson lo describió como una herramienta práctica para escribir Unix, no como un fin en sí mismo.

### Plan 9 e Inferno

Tras el éxito de Unix, Thompson continuó explorando nuevos paradigmas. En los años ochenta y noventa lideró el desarrollo de **Plan 9 from Bell Labs**, un sistema operativo diseñado desde cero para la computación distribuida, donde terminales, servidores de CPU y servidores de archivos podían compartir recursos de manera transparente.

Posteriormente, trabajó en **Inferno**, un sistema operativo derivado de Plan 9 diseñado para integrarse en dispositivos que van desde televisores interactivos hasta estaciones de trabajo, utilizando el lenguaje **Limbo** desarrollado por Bell Labs.

### Belle: el campeón de ajedrez

Más allá de los sistemas operativos, Thompson también exploró la computación lúdica. Junto a **Joe Condon**, construyó **Belle**, una máquina de ajedrez especializada que se convirtió en la **primera computadora en alcanzar el rango de Maestro Nacional** (más de 2.200 puntos de rating). Belle dominó el ajedrez computacional entre 1979 y 1983, ganando cinco veces el Campeonato Norteamericano de Ajedrez por Computadora, y fue donada al Smithsonian.

### UTF-8: la codificación que unió al mundo digital

En 1992, mientras trabajaba en Plan 9, Thompson diseñó **UTF-8**, la codificación que hoy permite representar todos los caracteres de prácticamente cualquier idioma del mundo en un formato compatible con sistemas que solo entendían ASCII. Lo hizo, según cuenta la historia, **en una sola noche**, junto a Rob Pike. Plan 9 fue el primer sistema operativo que utilizó Unicode/UTF-8 de forma exclusiva.

### Go: el lenguaje del siglo XXI

En 2006, tras jubilarse de Bell Labs, Thompson se incorporó a Google como “Distinguished Engineer”. Allí, junto a **Rob Pike** y **Robert Griesemer**, co-diseñó el lenguaje de programación **Go**, presentado públicamente en 2009. La motivación declarada del trío fue: “decidimos que odiábamos C++”, buscando un lenguaje moderno, simple y eficiente para el desarrollo de sistemas a gran escala.

### Reflexiones sobre la confianza: el legado en seguridad

En 1983, al recibir el Premio Turing, Thompson pronunció una conferencia titulada **”Reflections on Trusting Trust”**, considerada uno de los textos fundacionales de la seguridad informática moderna. En ella, demostró un ataque teórico en el que un compilador malicioso podía inyectar código dañino en todos los programas que compilara, **incluido el propio compilador**, propagando el backdoor generación tras generación sin dejar rastro en el código fuente. La conclusión fue demoledora: “No puedes confiar en un código que no hayas creado completamente tú mismo”.

## ¿Por qué su tecnología es importante para el futuro de la tecnología?

El trabajo de Ken Thompson no solo definió el presente; **determinó las coordenadas del futuro**.

**Unix y su filosofía son la base de la nube.** La arquitectura de sistemas operativos multiusuario, portables y modulares que Thompson introdujo con Unix es la misma que sustenta los centros de datos de Amazon, Google o Microsoft. Linux, descendiente directo de Unix, ejecuta la inmensa mayoría de los servidores de Internet, los supercomputadores más potentes del mundo y prácticamente todos los dispositivos Android. Sin la visión de Thompson, la computación en la nube tal como la conocemos sería impensable.

**UTF-8 es la infraestructura invisible de la globalización digital.** Cada vez que escribes un mensaje en español, árabe, chino o emoji en WhatsApp, Twitter o cualquier aplicación moderna, estás usando UTF-8. Esta codificación, nacida de la mente de Thompson en una noche, es el puente que permite que la comunicación digital funcione sin barreras idiomáticas. Es una de esas tecnologías que solo se notan cuando fallan, y que son absolutamente ubicuas.

**Go anticipó las necesidades del software moderno.** En un mundo de microservicios, contenedores y computación distribuida, Go ofrece exactamente lo que el desarrollo contemporáneo necesita: simplicidad, concurrencia nativa y compilación ultrarrápida. Docker, Kubernetes y una enorme cantidad de infraestructura crítica de Internet están escritos en Go. El lenguaje que Thompson co-diseñó a los 64 años se ha convertido en la herramienta preferida para construir los sistemas del presente y del futuro.

**”Reflections on Trusting Trust” sigue siendo una advertencia vigente.** En la era de los ataques a la cadena de suministro de software —como el caso SolarWinds—, el mensaje de Thompson resuena con una actualidad estremecedora. La seguridad informática no puede basarse únicamente en auditar el código fuente; hay que confiar en toda la cadena de herramientas que lo produce. Esta idea es hoy más relevante que nunca.

**Las expresiones regulares son el lenguaje universal de la búsqueda de texto.** Thompson introdujo las expresiones regulares en el editor QED y desarrolló el **algoritmo de Thompson**, que convierte una expresión regular en un autómata finito para búsqueda eficiente. Hoy, cada lenguaje de programación, cada editor de texto y cada herramienta de procesamiento de datos incorpora expresiones regulares. La función `grep` de Unix, cuyo nombre proviene de “**g**lobal **r**egular **e**xpression **p**rint”, es descendiente directa de ese trabajo.

## ¿Y para el presente?

El impacto de Ken Thompson está tan profundamente integrado en nuestra vida digital que resulta casi invisible. Es el equivalente informático del aire: omnipresente y esencial.

**Cada vez que usas un teléfono Android**, estás usando un sistema basado en el kernel Linux, descendiente directo de Unix. **Cada vez que envías un mensaje con caracteres que no son ingleses**, estás usando UTF-8. **Cada vez que una empresa despliega una aplicación en la nube**, es muy probable que esté usando herramientas escritas en Go o infraestructura inspirada en la arquitectura Unix.

Los servidores web que alimentan Internet, las bases de datos que almacenan la información del mundo, los routers que dirigen el tráfico de datos, los sistemas de control de satélites y centrales eléctricas… todos deben algo fundamental a las ideas que Thompson y sus colegas desarrollaron en los Laboratorios Bell hace más de cincuenta años.

Y no solo se trata de tecnología heredada. Thompson sigue siendo una figura activa en Google, donde su influencia se extiende al desarrollo de herramientas y lenguajes que están definiendo la próxima generación de infraestructura computacional.

## Inventos, programación y datos curiosos

**Contribuciones técnicas fundamentales:**

– **Unix** (1969): Sistema operativo que definió la arquitectura de la computación moderna.
– **Lenguaje B** (1969-1970): Precursor directo del lenguaje C.
– **Expresiones regulares**: Implementación del algoritmo de búsqueda por expresiones regulares, hoy ubicuo en informática.
– **UTF-8** (1992): Codificación de caracteres que unificó la representación digital de todos los idiomas.
– **Plan 9** (años 80-90): Sistema operativo distribuido, precursor de ideas modernas de computación en red.
– **Inferno** (años 90): Sistema operativo para dispositivos embebidos y distribuidos.
– **Belle** (1970s-1980s): Máquina de ajedrez campeona del mundo, primera en alcanzar nivel de Maestro.
– **Go** (2007-2009): Lenguaje de programación moderno, ampliamente usado en infraestructura cloud.

**Datos curiosos:**

– **El nombre de Unix**: Originalmente se llamó **Unics** (UNiplexed Information and Computing Service), un juego de palabras con **Multics** (MULTiplexed Information and Computing Service). El nombre evolucionó a “Unix” y fue un golpe de ingenio lingüístico que perduró.

– **El origen del `grep`**: La herramienta `grep` de Unix, omnipresente en la línea de comandos, fue creada por Thompson para buscar patrones en texto. Su nombre proviene de la instrucción del editor `ed`: `g/re/p` (global / regular expression / print).

– **Belle en Moscú**: La máquina de ajedrez Belle fue invitada a la Unión Soviética para una serie de demostraciones. Cuando los anfitriones preguntaron por qué no había llegado, Thompson explicó que había sido “retenida” —un episodio con connotaciones casi de Guerra Fría.

– **El `ed` y el humor hacker**: El editor `ed` de Unix generó una cultura de humor entre programadores. Cuando alguien ejecuta `ed` sin argumentos, el programa se queda esperando en silencio; muchos usuarios noveles pensaban que se había colgado. La solución era el comando `q` (quit). La expresión “**ed is the standard text editor**” se convirtió en un meme hacker clásico.

– **Una sola noche para UTF-8**: Rob Pike ha contado en múltiples ocasiones que Thompson diseñó los detalles de la codificación UTF-8 en el transcurso de una sola noche, en septiembre de 1992. Es, probablemente, la contribución técnica de mayor impacto global concebida en menos tiempo.

– **Premio Turing compartido**: Thompson y Ritchie recibieron el Premio Turing en 1983 “por su desarrollo de la teoría general de sistemas operativos y específicamente por la implementación del sistema operativo UNIX”. Un reconocimiento que consagró a Unix como uno de los hitos tecnológicos del siglo XX.

## Frases destacadas

> **”No puedes confiar en un código que no hayas creado completamente tú mismo.”**
> — Ken Thompson, “Reflections on Trusting Trust”, 1984

> **”Lo hice como una reacción contra los malos sistemas operativos de la época. Solo intentábamos conseguir algo mejor para hacer nuestro propio trabajo.”**
> — Ken Thompson, sobre el origen de Unix, 2011

> **”Me siento como si estuviera recibiendo este honor tanto por el momento y la serendipia como por el mérito técnico.”**
> — Ken Thompson, en su discurso del Premio Turing

> **”Los tres nos reunimos y decidimos que odiábamos C++.”**
> — Ken Thompson, sobre el origen del lenguaje Go

> **”Hay un viejo dicho: ‘baila con la que te trajo’, lo que significa que debería hablar de UNIX.”**
> — Ken Thompson, en su conferencia del Premio Turing

> **”Soy un programador. En mi formulario de impuestos, eso es lo que pongo como mi ocupación.”**
> — Ken Thompson, sobre su identidad profesional

## Un apartado adicional: el estilo de un hacker original

Ken Thompson encarna una cultura que él mismo ayudó a definir: la del **hacker** en su sentido más puro y original —no el que busca vulnerar sistemas ajenos, sino el que construye, explora y resuelve problemas con ingenio y elegancia. Su enfoque siempre fue pragmático: crear herramientas que funcionen, que sean simples y que resuelvan problemas reales.

A diferencia de muchos pioneros que buscan el reconocimiento público o la fama mediática, Thompson ha mantenido un perfil notablemente bajo. Sus entrevistas son escasas, sus apariciones públicas contadas, y su estilo de comunicación, directo y sin adornos. Sin embargo, su huella en la tecnología es tan profunda que resulta imposible sobreestimar su importancia.

Su legado se extiende más allá de los sistemas operativos o los lenguajes. Thompson estableció una **filosofía de diseño**: la simplicidad como valor supremo, la modularidad como estrategia, la portabilidad como objetivo. Estos principios no solo definieron Unix; definieron toda una manera de entender la ingeniería de software que sigue vigente hoy.

Y su conferencia “Reflections on Trusting Trust” añadió una dimensión ética y filosófica al debate tecnológico: la pregunta no es solo *qué* construimos, sino *en quién confiamos* y *cómo verificamos esa confianza*. En la era de la inteligencia artificial, la cadena de suministro de software y la seguridad informática global, esa pregunta es más urgente que nunca.

Ken Thompson no buscó ser una estrella. Pero su trabajo ilumina, hoy más que nunca, el camino de la tecnología moderna.

Vistas: 18

Descubre más desde CIBERED

Suscríbete y recibe las últimas entradas en tu correo electrónico.

Scroll al inicio