Edsger Wybe Dijkstra: 1930-2002
Order writes "Edsger Wybe Dijkstra, one of the founding fathers of computer science and the author of the famous "Go To Considered Harmful", has died on Aug. 6, 2002 after a long struggle with cancer."
← Back to Stories (view on slashdot.org)
(in case of the infamous /. effect)
Edsger Wybe Dijkstra: 1930-2002
Professor Edsger Wybe Dijkstra, a noted pioneer of the science and industry of computing, died after a long struggle with cancer on 6 August 2002 at his home in Nuenen, the Netherlands.
Dijkstra was born in 1930 in Rotterdam, The Netherlands, the son of a chemist father and a mathematician mother. He graduated from the Gymnasium Erasmianum in Rotterdam and obtained degrees in mathematics and theoretical physics from the University of Leyden and a Ph.D. in computing science from the University of Amsterdam. He worked as a programmer at the Mathematisch Centrum, Amsterdam, 1952-62; was professor of mathematics, Eindhoven University of Technology, 1962-1984; and was a Burroughs Corporation research fellow, 1973-1984. He held the Schlumberger Centennial Chair in Computing Sciences at the University of Texas at Austin, 1984-1999, and retired as Professor Emeritus in 1999.
Dijkstra is survived by his wife of over forty years, Maria (Ria) C. Dijkstra Debets, by three children, Marcus J., Femke E., and computer scientist Rutger M. Dijkstra, and by two grandchildren.
Dijkstra was the 1972 recipient of the ACM Turing Award, often viewed as the Nobel Prize for computing. He was a member of the Netherlands Royal Academy of Arts and Sciences, a member of the American Academy of Arts and Sciences, and a Distinguished Fellow of the British Computer Society. He received the 1974 AFIPS Harry Goode Award, the 1982 IEEE Computer Pioneer Award, and the 1989 ACM SIGCSE Award for Outstanding Contributions to Computer Science Education. Athens University of Economics awarded him an honorary doctorate in 2001. In 2002, the C&C Foundation of Japan recognized Dijkstra "for his pioneering contributions to the establishment of the scientific basis for computer software through creative research in basic software theory, algorithm theory, structured programming, and semaphores".
Dijkstra is renowned for the insight that mathematical logic is and must be the basis for sensible computer program construction and for his contributions to mathematical methodology. He is responsible for the idea of building operating systems as explicitly synchronized sequential processes, for the formal development of computer programs, and for the intellectual foundations for the disciplined control of nondeterminacy. He is well known for his amazingly efficient shortest path algorithm and for having designed and coded the first Algol 60 compiler. He was famously the leader in the abolition of the GOTO statement from programming.
Dijkstra was a prodigious writer. His entire collection of over thirteen hundred written works was digitally scanned and is accessible at http://www.cs.utexas.edu/users/EWD. He also corresponded regularly with hundreds of friends and colleagues over the years --not by email but by conventional post. He strenuously preferred the fountain pen to the computer in producing his scholarly output and letters.
Dijkstra was notorious for his wit, eloquence, and way with words, such as in his remark "The question of whether computers can think is like the question of whether submarines can swim"; his advice to a promising researcher, who asked how to select a topic for research: "Do only what only you can do"; and his remark in his Turing Award lecture "In their capacity as a tool, computers will be but a ripple on the surface of our culture. In their capacity as intellectual challenge, they are without precedent in the cultural history of mankind."
Dijkstra enriched the language of computing with many concepts and phrases, such as structured programming, separation of concerns, synchronization, deadly embrace, dining philosophers, weakest precondition, guarded command, the excluded miracle, and the famous "semaphores" for controlling computer processes. The Oxford English Dictionary cites his use of the words "vector" and "stack" in a computing context.
Dijkstra enjoyed playing Mozart for his friends on his Boesendorfer piano. He and his wife had a fondness for exploring state and national parks in their Volkswagen bus, dubbed the Touring Machine, in which he wrote many technical papers.
Throughout his scientific career, Dijkstra formulated and pursued the highest academic ideals of scientific rigour untainted by commercial, managerial, or political considerations. Simplicity, beauty, and eloquence were his hallmarks, and his uncompromising insistence on elegance in programming and mathematics was an inspiration to thousands. He judged his own work by the highest standards and set a continuing challenge to his many friends to do the same. For the rest, he willingly undertook the role of Socrates, that of a gadfly to society, repeatedly goading his native and his adoptive country by remarking on the mistakes inherent in fashionable ideas and the dangers of time-serving compromises. Like Socrates, his most significant legacy is to those who engaged with him in small group discussions or scientific correspondence about half-formulated ideas and emerging discoveries. Particularly privileged are those who attended his reading groups in Eindhoven and Austin, known as the "Tuesday Afternoon Clubs".
At Dijkstra's passage, let us recall Phaedo's parting remark about Socrates: "we may truly say that of all the men of his time whom we have known, he was the wisest and justest and best."
I remember when Tulsa U. brought in Dr. Dijkstra back in the spring of 1984. He spoke at length about software design principles, and how design was the lynchpin of good systems. He was there only for a day, and had insisted on taking time out to talk to anyone interested in hearing him. I'm very glad that TU invited the Computer Science students from ORU over to hear him.
The Computer Science profession has lost another giant.
A pity he's gone.
Some links from my article that slashdot rejected some hours ago: the University of Texas announcement has a list of his awards and discoveries. (He taught at UT.) A brief paper (in PDF, it's scanned from a handwritten paper for CACM if I recall) shows his brilliant, clear, and concise methods of thought and writing.
If you ever used an application that made use of shortest-path searching -- say, any real-time strategy game -- then you owe this man a debt of gratitude.
You cannot apply a technological solution to a sociological problem. (Edwards' Law)
Dike-Stra
I found the quotes here: http://www.cse.iitb.ac.in:8000/~rkj/dijkstraquotes .html I paste them here in full to counter the slashdot effect.
:-) -->
Some Quotes of Edsger Dijkstra
"Always design your programs as a member of a whole family of programs, including those that are likely to succeed it"
"Separate Concerns"
"A Programming Language is a tool that has profound influence on our thinking habits"
"The competent programmer is fully aware of the strictly limited size of his own skull; therefore he approaches the programming task in full humility, and among other things he avoids clever tricks like the plague" (from 1972 Turing Award Lecture)
"Progress is possible only if we train ourselves to think about programs without thinking of them as pieces of executable code"
"Program testing can best show the presence of errors but never their absence"
"I mean, if 10 years from now, when you are doing something quick and dirty, you suddenly visualize that I am looking over your shoulders and say to yourself, "Dijkstra would not have liked this", well that would be enough immortality for me"
And then my quote
Use Adsense for Charity
It's a shame that /. seems to think "Go To Considered Harmful" is Dijkstra's signature achievement. He was profoundly influential in developing the theory of operating systems. He was one of the first proponents of layered design. He also did pioneering work in mutual exclusion (IIRC, he invented semaphores) and deadlock. In short, he is responsible for a lot of the fundamental concepts that we use to build complex systems today.
Out of respect for the dead man, let us frame this instead in terms of structured programming; Perhaps call/cc. We could think of it as if our souls are continuations that God passes us at birth, and... no. I've lost you, haven't i. Let's start over
r .maintainCell( Vitalsigns.protein:1241412 )r .processInput( Vitalsigns.protein:954423 )( homonculus.protein:3423245 )
:) I do know, however, that do a google search for the man, and you won't get Goto Considered Harmful. You'll mostly, in fact, get pages discussing his Shortest Path Algorithm.
OK, here's a much better one: exception handling. Things like organ failure raise exceptions; death is just what happens when an exception isn't caught, and program flow drops back into the primordial brahman from whence all things come. Here is the stack trace for E. Dijkstra:
Process exited unexpectedly
Exception in thread "endocrine" life.cell.Exception.Cancer: "Heart not responding"
at life.entity.vertabrate.human.dijkstra.Edsger.Live
at life.entity.vertabrate.human.dijkstra.Edsger.Live
at life.entity.vertabrate.human.dijkstra.Edsger.main
See? Like Dijkstra said. No need for goto in an intelligently designed language.
To be serious for a second, though, we're all talking about Goto Considered Harmful because that's the one thing we've all read. This man did a bunch of other stuff. If i knew more about computer history i'd mention some of the stuff he did, but to be honest i don't really know what all he did
It may suffice to say this, before i go: In the Computers->History->Pioneers section of google.com's Web Directory section, exactly 33 people are listed (People like Tim Berners-Lee, Grace Hopper, and Alan Turing).
Dijkstra is one of them.
If that isn't 'net immortality, then i don't know what is.
Irritable, left-wing and possibly humorous bumper stickers and t-shirts
At the UTexas EWD archive.
Hmm... This might be nice, The problem is that Mr Dijkstra's name comes from the northern part of the netherlands. This 'state' or province as we call it has an own language, with different pronouncement. My go at it:
Normal Dutch:
D'ii'kstra: the ij is pronounced a bit strange, it is hard to explain......
Fries:(northern language/accent)
D'ee'kstroa : the ee is pronounced as in english the seperate e but longer.
Make a man a fire and he will be warm for a day, set a man on fire and he will be warm for the rest of his life
Although I understand your sentiment, not only did Ted Williams defend his country in two wars, or one war and one "police action", he also did a lot of work for the Jimmy Fund, a charity that supports the Dana Farber Cancer Institute (back then it was called the Children's Cancer Research Foundation). I wouldn't characterize that as someone "who for the most part didn't do a damn thing to really and truly improve our lives."
Facts about Ted Williams and the Jimmy Fund
It is practically impossible to teach good programming style to students that have had prior exposure to BASIC; as potential programmers they are mentally mutilated beyond hope of regeneration.
APL is a mistake, carried through to perfection. It is the language of the future for the programming techniques of the past: it creates a new generation of coding bums.
The use of COBOL cripples the mind; its teaching should, therefore, be regarded as a criminal offence.
When FORTRAN has been called an infantile disorder, PL/I, with its growth characteristics of a dangerous tumor, could turn out to be a fatal disease.
COBOL is for morons.
With respect to COBOL you can really do only one of two things: fight the disease or pretend that it does not exist.
The question of whether computers can think is like the question of whether submarines can swim.
Stupid job ads, weird spam, occasional insight at