Smaldone, siempre compartiendo su fascinación por EWD, ha traducido un discurso que dijera David Gries en un acto en honor de la memoria de Dijkstra poco después de su fallecimiento. Es interesante ver como lo veían (valga la rebuznancia) los que lo conocieron y trabajaron con él
C&P [...] Lo haré explicando una serie de fenómenos que de otra manera serían extraños por la frustrante –pero, como ahora sabemos, condenada– ocultación o negación de su aterradora extrañeza. Cierta cantidad de estos fenómenos han sido agrupados bajo el nombre de “Ingeniería de Software”. Así como la economía es conocida 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 meta, dado que la misma es en sí misma contradictoria.
A todos los que nos dedicamos al noble arte de la programación nos han dicho que nunca debemos utilizar la instrucción goto en nuestro código... pero... ¿podríais justificar este dogma a nivel teórico? Hace casi 40 años una carta del famoso científico de la computación Edsger Dijkstra ( es.wikipedia.org/wiki/Dijkstra ) lo justificaba con argumentos de la lógica matemática en una carta al Communications of the Association for Computing Machinery. Interesante lectura para cualquier programador. En inglés.
Charla de Dijkstra del 88 en la que aporta su visión sobre como se debería enseñar a programar en las universidades. Derroche de talento de este genio con aleccionadores argumentos y teorias. "Lidiar con una novedad radical requiere un método ortogonal.... debe acercarse a la novedad radical con la mente en blanco, rechazando conscientemente el intento de vincularla con lo que ya es familiar, debido a que lo familiar es desesperanzadamente inadecuado." Original en ingles www.cs.utexas.edu/users/EWD/ewd10xx/EWD1036.PDF
En esta página de la IEEE se recogen varios ejemplos de cómo ideas y artículos de científicos como Edsger W. Dijkstra y Alan Turing fueron rechazados por los revisores y las razones (o la falta de ellas) que estos dieron a sus autores. Está en inglés, una traducción somera puede leerse en www.caerolus.com/informatica/we-are-sorry-to-inform-you.html Vía Barrapunto.
Otro artículo de Dijkstra analizando las causas de los problemas que enfrentamos a la hora de aprender matemáticas (y, en general, de lididar con abstracciones). Para seguir con el debate iniciado en meneame.net/story/que-no-entendemos-matematicas
Una de las cuestiones que preocupaba mucho a Edsger Dijkstra era la didáctica de la matemática (y de la computación, como parte de esta). En este breve artículo, nos da lo que podría ser la "punta del ovillo" en búsqueda del por qué las matemáticas superiores (y, a veces, las no tan superiores) nos resultan tán difíciles de comprender y dominar.
Esta es la respuesta de Edsger Dijkstra a una empresa que le propone dictar cursos a profesionales informáticos. Aunque fue escrito a fines de los '70, no solamente no ha perdido actualidad, sino que la ha ganado con el paso del tiempo. Me vino a la mente a raíz de una discusión recientemente planteada en una noticia enviada a Menéame. (meneame.net/story/gran-oportunidad-cursos-avanzados-sw-libre-para-tecns).
Leo en el blog de Smaldone una buena recopilación de citas de E.W. Dijkstra, personaje siempre interesante y maestro en muchos aspectos de la ciencia de la computación.
El holandés Anno Dijkstra has instalado en el Paseo de Recoletos, una escultura publica de carácter realista que reproduce la imagen de un niño africano hambriento. Su trabajo se completaba con la aparición de una limusina negra que en el maletero llevaba fruta que era ofrecida gratuitamente a los transeuntes. Descripción de: www.contraindicaciones.net/2008/02/proposal_n_19anno_dijkstramadr.html
El razonamiento por analogía es formalmente muy usado en los sistemas legales/judiciales. En general lo usamos para intentar comprender o explicar algo que nos es nuevo o desconocemos. Es una forma de explicar el futuro en el lenguaje del pasado, usar nuestra historia común para interpretar lo desconocido. Este era el fondo del ensayo de Dijkstra que comenté en mi apunte anterior Redescubriendo al Dijkstra provocador 18 años después. Cuando no sabemos enfrentarnos a algo radicalmente nuevo solemos abusar del razonamiento por analogía, lo que a
El esfuerzo de utilizar las máquinas para emular el pensamiento humano siempre me ha parecido bastante estúpido. Preferiría usarlas para emular algo mejor. (Edsger Wybe Dijkstra, científico de la computación)
Según un estudio liderado por la doctora Katinka Dijkstra, la posición en la que nos encontremos a la hora de recordar ciertos acontecimientos de nuestra vida puede ayudarnos a recordarlos mejor. Teniendo una postura similar a la que teníamos en el momento que deseamos recordar, será más fácil recordarlo y lo haremos con mayor nitidez.
¿Por qué se utiliza la expresión "testear software" en vez de "probar software", si son equivalentes? La culpa, en parte, la tiene Dijkstra.
Algunas respuestas a ciertos listillos que pretendieron dar lecciones de informatica (quienes se creerían DIJKSTRA, CODD, TURING o SHANNON para decir estas cosas como Programacion estructurada, bases de datos relacionales, limites a la computación, si es que esta gente inventa cada paja mental.... Solo para profesionales del tema... el original en ingles: www.computer.org/portal/site/computer/menuitem.eb7d70008ce52e4b0ef1bd1x
A simple vista parece una trivialidad: ¿Qué más da si comenzamos a contar desde 0, desde 1 o desde cualquier número natural? Pero luego, cualquier persona que haya programado sin tener en cuenta estas cuestiones (y que haya renegado depurando sus programas teniendo que sumar o restar 1 por aquí y por allá para considerar "casos especiales" en el tratamiento de secuencias o arreglos), sabrá valorar este pequeño artículo de Edsger Dijkstra.
Si usted es informático y alguna vez se preguntó por qué el desarrollo de software difiere tanto de otras áreas del conocimiento y de la técnica (como la arquitectura, las distintas ingenierías, etc.), o por qué ya entrados en el siglo XXI todavía no podemos garantizar ciertas propiedades de los sistemas informáticos, sin duda debería leer este artículo de Edsger Dijkstra.