Edsger Wybe Dijkstra nació un 11 de mayo de 1930 y murió el 6 de agosto del 2002. Y aunque era físico teórico de profesión, su pasión fue el cómputo, por ejemplo, trabajó como programador en el Centro Matemático de Amsterdam, de 1952 a 1962.

Desde luego que fue profesor universitario e incluso tuvo la cátedra Schlumberger de Ciencias de la Computación de la Universidad de Texas, desde 1984 hasta su retiro, en 1999. Fue antes profesor de matemáticas en la Universidad Tecnológica de Eindhoven (1962-1984) e investigador distinguido en la Corporación Burroughs (1973-1984).

Las contribuciones de Dijkstra

La carrera de científico holandés fue muy influyente en el mundo de la computación, pues fue uno de los que plantearon los fundamentos de esta ciencia.

Dijkstra pensaba tanto en términos ingenieriles como en el tema de la perspectiva teórica del cómputo.

Sus mejores trabajos tienen que ver con la construcción de compiladores, sistemas operativos, sistemas distribuidos, diseño, desarrollo y verificación y metodología de los programas de cómputo, algoritmos gráficos e incluso la fundación filosófica de la programación de computadoras y la ciencia de la computación.

Probablemente mucho del trabajo de Dijkstra tiene que ver con el momento histórico que le tocó vivir, en donde la computación era como un «arte artesanal» más que una disciplina académica.

Dijkstra en la pizarra durante una conferencia en el ETH Zúrich en 1994. Fuente: Wikiwand

A fines de los años 1960s, las cosas cambiaron y Dijkstra fue uno de los primeros en proponer una disciplina en programación para mejorar la calidad de los programas que se escribían.

Como Dijkstra tenía una preparación en física y matemáticas, fue uno de los promotores de hacer la programación una disciplina científica. De hecho, fue él quien acuñó la frase «programación estructurada», la que fue muy influyente en toda la década de los años 1970s.

Fue Dijkstra el primero en publicar un artículo técnico sobre la programación concurrente, en 1965. Fue un pionero en muchas de las ideas del cómputo distribuido y es el autor de la solución de un problema de concurrencia muy famoso, en el cual usó sus ahora famosos «semáforos».

Poco antes de morir se le otorgó el Premio ACM al artículo más influyente, el cual trataba de auto-estabilización de la computación programada.

Este premio se renombró como «Premio Dijkstra» (en Computación Distribuida) porque a decir de la organización DISC (EATCS International Symposium on Distributed Computing), «ningún otro científico ha tenido tanta influencia en la investigación de los principios de este tema».

Dijkstra era un personaje realmente. Uno de sus artículos más mencionados es en realidad un párrafo, que se publicó en una carta de la CACM, titulado «La instrucción GOTO es considerada dañina«. Esto, a pesar de que al principio no se discutió demasiado, terminó por volverse casi un nuevo paradigma y los lenguajes modernos -aunque tienen en muchos casos la instrucción GOTO- no apelan a su uso pues hay un número de estructuras que pueden lidiar con esta idea.

Las frases de Dijkstra

Muchas de las opiniones del científico holandés son muy reconocidas. He aquí algunas de las más populares:

  • «Dos o más, use un for» (la regla típica para usar un ciclo «for» cuando se tiene que repetir una tarea).
  • «Es difícil culpar al MIT por no notar la existencia de un oscuro científico de cómputo de un pequeño pueblo holandés» (así era como se describía a sí mismo Dijkstra).
  • «En ausencia de la bibliografía, no ofrezco ninguna explicación o disculpa» (A Discipline of Programming (1976)).
  • «La pregunta de si una máquina puede pensar es tan relevante como la pregunta si los submarinos pueden nadar«.
  • Muchas de sus mejores frases vienen de este artículo: «FORTRAN es un desorden infantil», «PL/I es una enfermedad fatal», «Es prácticamente imposible enseñar programación correctamente a estudiantes que han sido expuestos al BASIC: como programadores potenciales están mentalmente mutilados sin esperanza de regeneración», «Programar en COBOL debería considerarse una ofensa criminal».

Dijkstra recibió muchos premios de cómputo, pero también se llevó el Premio Turing en 1972, cosiderado el Nobel del Cómputo.