Edsger W. Dijkstra
Edsger Wybe Dijkstra (DYKE-strónica; Dutch:[en inglés] ()escucha); 11 May 1930 – 6 August 2002) was a Dutch computer scientific, programmer, software engineer, systems scientific, and science essayist. Recibió el Premio Turing de 1972 por contribuciones fundamentales al desarrollo de idiomas de programación, y fue la Cátedra Centenaria de Ciencias de la Computación de Schlumberger en la Universidad de Texas en Austin entre 1984 y 2000.
Poco antes de su muerte en 2002, recibió el premio ACM PODC Influential Paper Award en informática distribuida por su trabajo sobre la autoestabilización de la computación de programas. Este premio anual pasó a llamarse Premio Dijkstra al año siguiente, en su honor.
Biografía
Primeros años
Edsger W. Dijkstra nació en Róterdam. Su padre era un químico que fue presidente de la Sociedad Química Holandesa; enseñó química en una escuela secundaria y más tarde fue su superintendente. Su madre era matemática, pero nunca tuvo un trabajo formal.
Dijkstra había considerado la carrera de derecho y esperaba representar a los Países Bajos en las Naciones Unidas. Sin embargo, después de graduarse de la escuela en 1948, a sus padres & # 39; sugerencia de que estudió matemáticas y física y luego física teórica en la Universidad de Leiden.
A principios de la década de 1950, las computadoras electrónicas eran una novedad. Dijkstra tropezó con su carrera por accidente y, a través de su supervisor, el profesor Johannes Haantjes
, conoció a Adriaan van Wijngaarden, director del Departamento de Cómputo del Centro Matemático de Ámsterdam, quien le ofreció trabajo a Dijkstra; se convirtió oficialmente en los Países Bajos' primer "programador" en marzo de 1952.Durante algún tiempo, Dijkstra siguió comprometido con la física, trabajando en ella en Leiden tres días a la semana. Sin embargo, con una exposición cada vez mayor a la informática, su enfoque comenzó a cambiar. Como recordó:
Después de haber programado durante unos tres años, tuve una discusión con A. van Wijngaarden, que era entonces mi jefe en el Centro Matemático de Ámsterdam, una discusión por la que seguiré agradeciéndole mientras viva. El punto era que se suponía que debía estudiar física teórica en la Universidad de Leiden simultáneamente, y como encontré las dos actividades más difíciles y más difíciles de combinar, tuve que decidir, ya sea para detener la programación y convertirme en un físico teórico real, respetable, o para llevar mi estudio de la física a una terminación formal sólo, con un mínimo de esfuerzo, y para convertirse en..., ¿sí qué? ¿Un programador? ¿Pero era una profesión respetable? Para después de todo, ¿qué era la programación? ¿Dónde estaba el cuerpo racional de conocimiento que podría apoyarlo como una disciplina intelectualmente respetable? Recuerdo muy vívidamente cómo envié a mis colegas de hardware, quienes, cuando se les preguntó por su competencia profesional, podían al menos señalar que sabían todo sobre tubos de vacío, amplificadores y el resto, mientras que sentí que, cuando me enfrentaba a esa pregunta, me quedaría con las manos vacías. Lleno de incomodidades llamé a la puerta de la oficina de Van Wijngaarden, preguntándole si podía "hablar con él por un momento"; cuando salí de su oficina varias horas más tarde, era otra persona. Porque después de haber escuchado mis problemas pacientemente, estuvo de acuerdo en que hasta ese momento no había mucha disciplina de programación, pero luego siguió explicando tranquilamente que las computadoras automáticas estaban aquí para quedarse, que estábamos justo al principio y no podía ser una de las personas llamadas a hacer de la programación una disciplina respetable en los años venideros? Este fue un punto de inflexión en mi vida y completé mi estudio de la física formalmente tan rápido como pude.
—Edsger Dijkstra, The Humble Programmer (EWD340), Communications of the ACM
Cuando Dijkstra se casó con Maria (Ria) C. Debets en 1957, como parte de los ritos matrimoniales, se le exigió que declarara su profesión. Dijo que era programador, lo cual era inaceptable para las autoridades, ya que no existía tal profesión en los Países Bajos.
En 1959, recibió su doctorado de la Universidad de Ámsterdam por una tesis titulada 'Comunicación con una computadora automática', dedicada a una descripción del lenguaje ensamblador diseñado para la primera computadora comercial desarrollada en los Países Bajos., la Electrológica X1. Su director de tesis fue Van Wijngaarden.
Centro Matemático, Ámsterdam
Desde 1952 hasta 1962, Dijkstra trabajó en el Mathematisch Centrum de Ámsterdam, donde trabajó en estrecha colaboración con Bram Jan Loopstra y Carel S. Scholten, quienes habían sido contratados para construir una computadora. Su modo de interacción fue disciplinado: primero decidirían sobre la interfaz entre el hardware y el software, escribiendo un manual de programación. Luego, los diseñadores de hardware tendrían que ser fieles a su parte del contrato, mientras que Dijkstra, el programador, escribiría el software para la máquina inexistente. Dos de las lecciones que aprendió de esta experiencia fueron la importancia de una documentación clara y que la depuración del programa se puede evitar en gran medida mediante un diseño cuidadoso. Dijkstra formuló y resolvió el problema del camino más corto para una demostración en la inauguración oficial de la computadora ARMAC en 1956. Debido a la ausencia de revistas dedicadas a la computación automática, no publicó el resultado hasta 1959.
En el Centro Matemático, Dijkstra y su colega Jaap Zonneveld
desarrollaron el primer compilador para el lenguaje de programación ALGOL 60 en agosto de 1960, más de un año antes de que otro grupo produjera un compilador.Universidad Tecnológica de Eindhoven
En 1962, Dijkstra se mudó a Eindhoven y luego a Nuenen, en el sur de los Países Bajos, donde se convirtió en profesor en el Departamento de Matemáticas de la Universidad Tecnológica de Eindhoven. La universidad no tenía un departamento de ciencias de la computación separado y la cultura del departamento de matemáticas no le convenía particularmente. Dijkstra trató de formar un grupo de informáticos que pudieran colaborar en la resolución de problemas. Este fue un modelo inusual de investigación para el Departamento de Matemáticas. A fines de la década de 1960, creó el sistema operativo THE (llamado así por la universidad, entonces conocida como Technische Hogeschool Eindhoven), que ha influido en los diseños de los sistemas operativos posteriores mediante el uso de memoria virtual paginada basada en software.
Corporación Burroughs
Dijkstra se incorporó a Burroughs Corporation, una empresa conocida entonces por producir ordenadores basados en una arquitectura de hardware innovadora, como investigador asociado en agosto de 1973. Sus funciones consistían en visitar algunos de los centros de investigación de la empresa varias veces al año. y llevando a cabo su propia investigación, que hizo en el centro de investigación más pequeño de Burroughs, a saber, su estudio en el segundo piso de su casa en Nuenen. De hecho, Dijkstra era el único investigador de Burroughs y trabajaba para él desde casa, viajando ocasionalmente a sus sucursales en los Estados Unidos. Como resultado, redujo su cita en la universidad a un día a la semana. Ese día, martes, pronto pasó a ser conocido como el día del famoso 'Tuesday Afternoon Club', un seminario durante el cual discutía con sus colegas artículos científicos, analizando todos los aspectos: notación, organización, presentación, lenguaje, contenido, etc. Poco después se trasladó en 1984 a la Universidad de Texas en Austin (EE.UU.), una nueva 'sucursal' del Tuesday Afternoon Club surgido en Austin, Texas.
Los años de Burroughs lo vieron en su momento más prolífico en la producción de artículos de investigación. Escribió cerca de 500 documentos de la serie EWD (descritos a continuación), la mayoría de ellos informes técnicos, para circulación privada dentro de un grupo selecto.
La Universidad de Texas en Austin
Dijkstra aceptó la Cátedra del Centenario de Schlumberger en el Departamento de Ciencias de la Computación de la Universidad de Texas en Austin en 1984.
Últimos años
Dijkstra trabajó en Austin hasta su jubilación en noviembre de 1999. Para conmemorar la ocasión y celebrar sus más de cuarenta años de contribuciones trascendentales a las ciencias informáticas, el Departamento de Ciencias Informáticas organizó un simposio, que tuvo lugar el día de su 70 cumpleaños en mayo de 2000.
Dijkstra y su esposa regresaron de Austin a su casa original en Nuenen (Países Bajos), donde descubrió que solo le quedaban unos meses de vida. Dijo que quería jubilarse en Austin, Texas, pero morir en los Países Bajos. Dijkstra murió el 6 de agosto de 2002 tras una larga lucha contra el cáncer. A él y su esposa Maria (Ria) Debets les sobrevivieron sus tres hijos: Marcus, Femke y el informático Rutger M. Dijkstra.
Legado
Entre sus contribuciones a la informática se encuentran un algoritmo de ruta más corta, conocido como algoritmo de Dijkstra; el algoritmo del patio de maniobras; el sistema de multiprogramación THE, un importante ejemplo temprano de estructuración de un sistema como un conjunto de capas; el algoritmo del banquero; y la construcción de semáforo para coordinar múltiples procesadores y programas. Otro concepto debido a Dijkstra en el campo de la computación distribuida es el de la autoestabilización, una forma alternativa de garantizar la confiabilidad del sistema. El algoritmo de Dijkstra se usa en SPF, Shortest Path First, que se usa en los protocolos de enrutamiento OSPF e IS-IS.
Personalidad y estilo de trabajo
Apenas puede culpar a M.I.T. por no tomar nota de un oscuro científico informático en un pequeño pueblo en Holanda.
—Dijkstra solía describirse con ingenio, en Nuenen a mediados de los años 60.
En el mundo de la informática, Dijkstra es bien conocido como un "personaje". En el prefacio de su libro A Discipline of Programming (1976) afirmó lo siguiente: "Por la ausencia de una bibliografía, no ofrezco explicación ni disculpa." De hecho, la mayoría de sus artículos y libros no tienen ninguna referencia. Este enfoque de las referencias fue deplorado por algunos investigadores. Pero Dijkstra eligió esta forma de trabajar para preservar su autosuficiencia.
Como profesor universitario durante gran parte de su vida, Dijkstra vio la enseñanza no solo como una actividad obligatoria, sino como un esfuerzo de investigación serio. Su enfoque de la enseñanza no era convencional. Su estilo de disertación ha sido descrito como idiosincrásico. Al dar una conferencia, las largas pausas entre oraciones a menudo se han atribuido al hecho de que el inglés no es el primer idioma de Dijkstra. Sin embargo, las pausas también le sirvieron como una forma de pensar sobre sus pies y se lo consideraba un pensador rápido y profundo mientras se dedicaba a dar una conferencia. Sus cursos para estudiantes en Austin tenían poco que ver con informática, pero se ocupaban de la presentación de pruebas matemáticas. Al comienzo de cada semestre, tomaba una foto de cada uno de los estudiantes, para memorizar sus nombres. Nunca siguió un libro de texto, con la posible excepción del suyo propio mientras estaba en preparación. Cuando daba una conferencia, escribía pruebas con tiza en una pizarra en lugar de usar papel de aluminio. Invitó a los estudiantes a sugerir ideas, que luego exploró, o se negó a explorar porque violaban algunos de sus principios. Asignaba problemas desafiantes de tarea y estudiaba a sus alumnos. soluciones a fondo. Realizó sus exámenes finales oralmente, durante una semana entera. Cada estudiante fue examinado en la oficina o en el hogar de Dijkstra, y el examen duró varias horas.
Dijkstra también fue muy original en su forma de evaluar la capacidad de las personas para un trabajo. Cuando Vladimir Lifschitz vino a Austin en 1990 para una entrevista de trabajo, Dijkstra le dio un rompecabezas. Vladimir lo resolvió y ha estado trabajando en Austin desde entonces.
No tenía ningún uso para los procesadores de texto, creyendo que uno debería poder escribir una carta o un artículo sin borradores, reescritura o cualquier edición significativa. Lo resolvería todo en su cabeza antes de poner la pluma en el papel, y una vez mencionó que cuando era estudiante de física resolvía los problemas de su tarea en su cabeza mientras caminaba por las calles de Leiden. La mayoría de las publicaciones de Dijkstra fueron escritas por él solo. Nunca tuvo secretaria y se ocupaba solo de toda su correspondencia. Cuando sus colegas prepararon un Festschrift para su sexagésimo cumpleaños, publicado por Springer-Verlag, se tomó la molestia de agradecer a cada uno de los 61 colaboradores por separado, en una carta escrita a mano.
A lo largo de la carrera de Dijkstra, su trabajo se caracterizó por la elegancia y la economía. Escritor prolífico (especialmente como ensayista), Dijkstra escribió más de 1.300 artículos, muchos escritos a mano en su escritura precisa. Eran ensayos y parábolas; cuentos de hadas y advertencias; explicación comprensiva y pretexto pedagógico. La mayoría eran sobre matemáticas e informática; otros eran informes de viaje que revelan más sobre su autor que sobre las personas y lugares visitados. Tenía la costumbre de copiar cada artículo y distribuirlo a un pequeño grupo de colegas que copiaban y enviaban los artículos a otro grupo limitado de científicos. Su relación amorosa con la sencillez llegó a temprana edad y bajo la guía de su madre. Una vez dijo que le había preguntado a su madre si la trigonometría era un tema difícil. Ella respondió que debía aprender todas las fórmulas y que, además, si necesitaba más de cinco líneas para probar algo, estaba en el camino equivocado.
Dijkstra era famoso por su ingenio, elocuencia, rudeza, brusquedad y, a menudo, crueldad con sus compañeros de profesión, y por su habilidad con las palabras, como en su comentario, "La cuestión de si las máquinas pueden pensar (...) es tan tan relevante como la cuestión de si los submarinos pueden nadar." Su consejo para un investigador prometedor, que preguntó cómo seleccionar un tema para la investigación, fueron las sabias palabras: "Haz solo lo que solo tú puedes hacer". Dijkstra también era conocido por sus críticas vocales y su ausencia de habilidades sociales cuando interactuaba con sus colegas. Como un visionario abierto y crítico, se opuso firmemente a la enseñanza de BASIC.
En muchos de sus ensayos más ingeniosos, Dijkstra describió una empresa ficticia de la que se desempeñó como presidente. La empresa se llamaba Mathematics, Inc., una empresa que imaginó haber comercializado la producción de teoremas matemáticos de la misma manera que las empresas de software habían comercializado la producción de programas informáticos. Inventó una serie de actividades y desafíos de Mathematics Inc. y los documentó en varios artículos de la serie EWD. La empresa imaginaria había producido una demostración de la hipótesis de Riemann, pero luego tuvo grandes dificultades para recaudar regalías de los matemáticos que habían demostrado resultados asumiendo la hipótesis de Riemann. La prueba en sí era un secreto comercial. Muchas de las pruebas de la empresa se enviaron rápidamente y luego gran parte del esfuerzo de la empresa tuvo que dedicarse al mantenimiento. Un esfuerzo más exitoso fue la prueba estándar de Pitágoras. Teorema, que sustituyó a las más de 100 demostraciones incompatibles existentes. Dijkstra describió a Mathematics Inc. como "el negocio más excitante y miserable jamás concebido". EWD 443 (1974) describe que su empresa ficticia tiene más del 75 por ciento de la cuota de mercado mundial.
Sobre la naturaleza de la informática y la programación informática
En The Humble Programmer (1972), Dijkstra escribió: "No debemos olvidar que no es asunto nuestro [los científicos informáticos'] hacer programas, es nuestro asunto para diseñar clases de cálculos que mostrarán un comportamiento deseado."
Dijkstra también se opuso a la inclusión de la ingeniería de software bajo el paraguas de la informática académica. Escribió que, "Así como la economía se conoce como "La ciencia miserable", la ingeniería de software debería ser conocida como "La disciplina condenada", condenada porque ni siquiera puede acercarse a su objetivo desde que su objetivo es autocontradictorio." Y "la ingeniería de software ha aceptado como su estatuto 'Cómo programar si no se puede.'"
Manuscritos EWD
Dijkstra era bien conocido por su hábito de componer cuidadosamente manuscritos con su estilográfica. Los manuscritos se denominan EWD, ya que Dijkstra los numeró con EWD, sus iniciales, como prefijo. Según el propio Dijkstra, los EWD comenzaron cuando se mudó del Centro Matemático de Ámsterdam a la Universidad Tecnológica de Eindhoven (entonces Technische Hogeschool Eindhoven). Después de ir a Eindhoven, Dijkstra experimentó un bloqueo de escritor durante más de un año. Distribuyó fotocopias de un nuevo EWD entre sus colegas. Muchos destinatarios fotocopiaron y enviaron sus copias, por lo que los EWD se extendieron por toda la comunidad informática internacional. Los temas fueron informática y matemáticas, e incluyeron informes de viajes, cartas y discursos. Estos breves artículos abarcan un período de 40 años. Casi todos los EWD que aparecieron después de 1972 estaban escritos a mano. Rara vez tienen más de 15 páginas y están numeradas consecutivamente. El último, el nº 1318, es del 14 de abril de 2002. Dentro de la informática se conocen como informes EWD, o simplemente EWD. Se han escaneado más de 1300 EWD, con un número cada vez mayor transcrito para facilitar la búsqueda, y están disponibles en línea en el archivo Dijkstra de la Universidad de Texas.
Vida y muerte personales
Dijkstra llevó un estilo de vida modesto, hasta el punto de ser espartano. La casa de él y su esposa en Nuenen era simple, pequeña y sin pretensiones. No tenía televisor, ni reproductor de video, ni teléfono móvil, y no iba al cine. Tocaba el piano y, mientras estaba en Austin, le gustaba ir a conciertos. Un oyente entusiasta de la música clásica, el compositor favorito de Dijkstra era Mozart.
Dijkstra murió el 6 de agosto de 2002. Según funcionarios de la Universidad de Texas, la causa de la muerte fue el cáncer.
Premios y distinciones
Entre los premios y distinciones de Dijkstra se encuentran:
- Miembro de la Real Academia de Artes y Ciencias de los Países Bajos (1971)
- Distinguished Fellow of the British Computer Society (1971)
- Premio A.M. Turing de la Asociación de Máquinas Computadoras (1972)
- Harry H. Goode Memorial Premio de IEEE Computer Society (1974).
- Miembro de la Academia Americana de Artes y Ciencias (1975)
- Doctor en Ciencias Honoris Causa de la Universidad de la Reina Belfast (1976)
- Computador Pioneer Charter Recipiente de la IEEE Computer Society (1982)
- ACM/SIGCSE Premio a contribuciones destacadas a la educación en ciencias de la informática (1989)
- Fellow of the Association for Computing Machinery (1994)
- Doctorado honorario de la Universidad de Economía de Atenas, Grecia (2001).
En 1969, la Sociedad Británica de Informática (BCS) recibió la aprobación de un premio y una beca, Miembro Distinguido de la Sociedad Británica de Informática (DFBCS), que se otorgará según el estatuto 7 de su estatuto real. En 1971 se hizo la primera elección, a Dijkstra.
En 1990, con motivo del 60.º cumpleaños de Dijkstra, el Departamento de Ciencias de la Computación (UTCS) de la Universidad de Texas en Austin organizó un seminario de dos días en su honor. Los oradores procedían de todos los Estados Unidos y Europa, y un grupo de informáticos contribuyeron con artículos de investigación que se editaron en un libro.
En 2002, la Fundación C&C de Japón reconoció a Dijkstra "por sus contribuciones pioneras al establecimiento de la base científica para el software de computadora a través de la investigación creativa en la teoría básica del software, la teoría de algoritmos, la programación estructurada y los semáforos. " Dijkstra estaba vivo para recibir la notificación del premio, pero su familia lo aceptó en una ceremonia de premiación después de su muerte.
Poco antes de su muerte en 2002, Dijkstra recibió el premio ACM PODC Influential-Paper Award en computación distribuida por su trabajo sobre la autoestabilización de la computación de programas. Este premio anual pasó a llamarse Premio Dijkstra (Premio Edger W. Dijkstra en Computación Distribuida) al año siguiente, en su honor.
El Premio Dijkstra por Logro Académico Sobresaliente en Informática (Universidad Loyola de Chicago, Departamento de Informática) lleva el nombre de Edsger W. Dijkstra. A partir de 2005, este premio reconoce el desempeño académico superior de un graduado de ciencias de la computación. La selección se basa en el GPA en todos los cursos principales y la elección por parte de la facultad del departamento.
El Departamento de Ciencias de la Computación (UTCS) de la Universidad de Texas en Austin acogió la conferencia inaugural en memoria de Edsger W. Dijkstra el 12 de octubre de 2010. Tony Hoare, profesor emérito de Oxford e investigador principal de Microsoft Research, fue el orador de el evento. Esta serie de conferencias fue posible gracias a una generosa subvención de Schlumberger para honrar la memoria de Dijkstra.
Publicaciones seleccionadas
- Libros
Contenido relacionado
PCX
Autocodificación Atlas
302 (movido temporalmente)