HISTORIAS TECNOLÓGICAS

Quién fue Dennis Ritchie, el creador de una tecnología que usás a diario y que influyó más que Steve Jobs

Cuando uno observa de cerca una computadora o un móvil y los programas que corren en esos dispositivos, verías su trabajo en todas partes adentro
TECNOLOGÍA - 12 de Marzo, 2023

Steve Jobs, el cofundador de Apple, y Dennis Ritchie, un científico informático, murieron con pocos días de diferencia. Jobs falleció el 5 de octubre de 2011, y Ricthie, el 9 de octubre.

Aunque millones de personas siguen interactuando con el legado de Jobs en sus celulares iPhones, tabletas iPads y computadoras Mac, la influencia de la obra de Ritchie está mucho más difundida y presente que la del cofundador de Apple.

Ritchie, quien cambió la tecnología moderna al escribir un lenguaje de programación de computadoras elegantemente simple, murió a los 70 años en su casa en Murray Hill, en el estado norteamericano de New Jersey, por un cáncer de próstata.

A medida que la noticia de su muerte se difundió por todo el mundo de la informática, los historiadores y entusiastas de las tecnologías de la información compararon al barbudo e introvertido Ritchie con el de Jobs.

Aunque el nombre de Ritchie no es algo familiar en absoluto como lo era y lo es Jobs, cuando observás de cerca una computadora o un móvil y los programas y aplicaciones que corren en esos dispositivos, verías su trabajo en todas partes adentro.

Ritchie no igualó el tsunami de elogios que se derramó por la web después de la muerte de Jobs, algo que fue muy conmovedor y justificado. Pero Ritchie tuvo un efecto mayor, y el público ni siquiera sabía y sabe quién fue.

Dennis Ricthie en su oficina en Bell Laboratories.

El creador de un lenguaje informático clave

Ritchie trabajó en Bell Laboratories durante cuatro décadas, desde su época como estudiante de doctorado en Harvard hasta su jubilación en 2007. Fue el inventor del lenguaje de programación conocido como C y coinventor del sistema operativo Unix, otra innovación que surgió de Bell Labs a fines de la década de 1960 y principios de la de 1970.

Cuando Ritchie acudió a Bell, el lenguaje de programación informática era arcano e impenetrable para muchos gurús informáticos de la época. Cuando era un joven científico, Ritchie se puso a trabajar en un lenguaje que era sofisticado pero simple. Algo así como un ave nocturna, a menudo iba a la oficina alrededor del mediodía y trabajaba hasta altas horas de la noche desde su casa.

C es un lenguaje conciso, elegante y engañosamente simple que permite a los programadores una flexibilidad casi ilimitada. C no carecía de fallas, era vulnerable a los virus, pero pronto se convirtió en el lenguaje de programación más popular.

Permitió a los programadores hacer en unos pocos meses trabajos que con otros lenguajes hubieran llevado un año o más. El lenguaje C fue la base de Unix, el sistema operativo que Ritchie ayudó a desarrollar con su colega de Bell, Kenneth Thompson.

Las computadoras personales basadas en Microsoft Windows y muchos productos de Apple se ejecutan en sus descendientes. Es el antepasado de la mayor parte de la infraestructura de nuestra sociedad conectada.

Ritchie y Thompson recibieron el Premio Turing de la Asociación de Maquinaria de Computación en 1983, un reconocimiento temprano de lo que sería una contribución perdurable a la tecnología.

De izquierda a derecha: Kenneth Thompson, Dennis Ritchie y Bill Clinton.

Los orígenes de un genio

Siguieron más honores. En 1998, el expresidente estadounidense Bill Clinton otorgó a los dos hombres la Medalla Nacional de Tecnología e Innovación "por su invención del sistema operativo Unix y el lenguaje de programación C, que juntos han llevado al enorme crecimiento de toda una industria, mejorando así el liderazgo estadounidense en el sector de la información".

Dennis MacAlistair Ritchie nació el 9 de septiembre de 1941 en Bronxville, en el estado norteamericano de New York, en el seno de una familia científica. Su padre, Alistair Ritchie, trabajaba en Bell y coescribió un libro sobre circuitos de conmutación.

Ritchie asistió a Harvard, donde obtuvo una licenciatura en física en 1963 y un doctorado en matemáticas aplicadas en 1968. "Mi experiencia universitaria me convenció de que no era lo suficientemente inteligente para ser físico y que las computadoras eran bastante buenas", escribió en una biografía para Bell Labs.

"Mi experiencia en la escuela de posgrado me convenció de que no era lo suficientemente inteligente como para ser un experto en teoría de algoritmos y también que me gustaban más los lenguajes procedimentales que los funcionales", agregó.

Ritchie coescribió el libro "El lenguaje de programación C", una obra que en informática se la equipara al famoso diccionario de inglés de Oxford. También tenía un lado más ligero. Reunió al dúo de magos Penn y Teller para hacerle una broma pesada a su jefe, el físico ganador del Premio Nobel Arno Penzias.

En el truco, grabado en video en 1989 y disponible en YouTube, los científicos convencieron a Penzias de que habían inventado una sofisticada tecnología de reconocimiento de voz. "Le tomó días recuperarse", dice la voz en off.

El rey de lo invisible

Prácticamente todo en la web usa esas dos cosas: C y Unix. Los navegadores están escritos en C. El kernel de Unix, en el que se ejecuta prácticamente todo Internet, está escrito en C.

Los servidores web están escritos en C, y si no lo están, están escritos en Java o C , que son derivados de C, o Python o Ruby, que se implementan en C. Y casi todo el hardware de red que ejecuta estos programas se escribió en C.

Es realmente difícil exagerar cuánto de la tecnología de la información moderna se basa en el trabajo que hizo Ritchie. Incluso Windows alguna vez se escribió en C, y Unix es la base tanto de Mac OS X, el sistema operativo de escritorio de Apple, como de iOS, que ejecuta el iPhone y la iPad.

Jobs era el rey de lo visible, y Ritchie es el rey de lo que es en gran parte invisible. La genialidad de Jobs es que construyó esos productos que a la gente le gusta usar porque tenía buen gusto y pudo construir cosas que las personas encuentran atractivas.

Ritchie construyó cosas que los tecnólogos pudieron usar para construir una infraestructura central que la gente no necesariamente ve mucho más, pero se usan todos los días.

Ritchie construyó C porque él y Thompson necesitaban una forma mejor de construir Unix. El núcleo Unix original estaba escrito en lenguaje ensamblador, pero pronto decidieron que necesitaban un lenguaje de "nivel superior", algo que les diera más control sobre todos los datos que abarcaban el sistema operativo.

Ritchie (de pie) y Thompson, en 1972.

Un dúo informático que hizo historia

Alrededor de 1970, intentaron construir una segunda versión con Fortran, pero esto no fue suficiente, y Ritchie propuso un nuevo lenguaje basado en una creación de Thompson conocida como B.

Dependiendo de la versión en la que creas, B recibió su nombre de la esposa de Thompson, Bonnie, o BCPL , un lenguaje desarrollado en Cambridge a mediados de la década del 60. En cualquier caso, B engendró a C.

B era un lenguaje interpretado, lo que significa que fue ejecutado por una pieza intermedia de software que se ejecutaba sobre una CPU, pero C era un lenguaje compilado. Se tradujo a código de máquina y luego se ejecutó directamente en la CPU.

Pero en aquellos días, C se consideraba un lenguaje de alto nivel. Le daría a Ritchie y Thompson la flexibilidad que necesitaban, pero al mismo tiempo sería rápido. Esa primera versión del lenguaje no era tan diferente de C como lo conocemos hoy, aunque era un poco más simple.

Ofrecía estructuras de datos completas y "tipos" para definir variables, y esto es lo que Richie y Thompson usaron para construir su nuevo núcleo Unix. Construyeron C para escribir un programa, y el programa que querían escribir era el núcleo Unix.

La broma corriente de Ritchie era que C tenía "el poder del lenguaje ensamblador y la conveniencia del… lenguaje ensamblador". En otras palabras, reconoció que C era una creación menos que hermosa que aún funcionaba muy cerca del hardware. Hoy se considera un lenguaje de bajo nivel, no alto.

Dennis Ritchie en su oficina de trabajo.

Un lenguaje informático como cimiento tecnológico 

Pero la broma de Ritchie no le hizo justicia al nuevo lenguaje. Al ofrecer verdaderas estructuras de datos, operaba a un nivel lo suficientemente alto. Cuando se escribe un programa grande, y eso es lo que era Unix, se tienen que administrar las interacciones entre todo tipo de componentes diferentes: todos los usuarios, el sistema de archivos, los discos, la ejecución del programa, etc.

Para administrar eso de manera efectiva, se necesita tener una buena representación de la información con la que se trabajan. Eso es lo que se llama estructuras de datos.

Escribir un núcleo sin una estructura de datos y que fuera tan consistente y elegante como Unix habría sido un desafío mucho más difícil. Ritchie y Thomspon necesitaban una forma de agrupar todos esos datos, y no tenían eso con Fortran.

En ese momento, era una forma inusual de escribir un sistema operativo, y esto fue lo que permitió a Ritchie y Thompson imaginar el traslado del sistema operativo a otras plataformas, lo que hicieron a finales de la década del 70. Eso abrió las compuertas para que Unix se ejecutara en todas partes. Todo fue posible gracias a C.

Al mismo tiempo, C forjó su propio camino en el mundo, pasando de Bell Labs a las universidades del mundo y a Microsoft, la empresa de software emergente de la década de 1980.

El desarrollo del lenguaje de programación C fue un gran paso adelante y fue el punto medio correcto. C logró exactamente el equilibrio correcto, para permitirle escribir a un alto nivel y ser mucho más productivo, pero cuando lo necesitaba, podía controlar exactamente lo que sucedía. Eso marcó la pauta en la forma en que se realizó la programación durante varias décadas.

Un manual clásico de la informática

Las estructuras de datos que Richie incorporó en C al final dieron origen al paradigma orientado a objetos que utilizan los lenguajes modernos como C y Java. La revolución comenzó en 1973, cuando Ritchie publicó su trabajo de investigación sobre el lenguaje, y cinco años más tarde, él y su colega Brian Kernighan publicaron el libro "C definitivo: El lenguaje de programación C".

Kernighan había escrito los primeros tutoriales para el idioma y, en algún momento, torció el brazo de Dennis para que escribiera un libro con él. Se trata de un manual de referencia y un modelo de claridad y legibilidad, un clásico de la informática.

El lenguaje se había extendido por los campus universitarios porque Bell Labs comenzó a regalar el código fuente de Unix. Entre tantas otras cosas, el sistema operativo dio lugar al movimiento moderno de código abierto.

Ritchie era una persona inusualmente reservada. Pero esto no explica del todo su bajo perfil. Jobs era una persona privada, pero su insistencia en la privacidad solo alimentó el culto a la personalidad que lo rodeaba. Ritchie vivió en una época muy diferente y trabajó en un entorno muy diferente al de alguien como Jobs. 

Pararse sobre hombros de gigantes es una metáfora que significa "usar el entendimiento adquirido por los principales pensadores que han venido antes para hacer un progreso intelectual".

Esta metáfora se hizo famosa gracias al famoso físico inglés Isaac Newton, quien en 1675 dijo: "Si he visto más lejos, es poniéndome sobre los hombros de gigantes". Lo mismo se puede decir sobre Ritchie: la tecnología de la información hoy está parada sobre los hombros de su creación.

Te puede interesar

Secciones