LWN.net Logo

Advertisement

E-Commerce & credit card processing - the Open Source way!

Advertise here

Edsger W. Dijkstra

Let us pause a moment to remember Edsger W. Dijkstra, who passed away on August 7. Mr. Dijkstra was the source of much wisdom in Computer Science, and we are all in his debt. Much of what we now take for granted (i.e. the semaphores in the Linux kernel) is rooted in his work. He is one of our founding fathers.

For a number of years I have been familiar with the observation that the quality of programmers is a decreasing function of the density of go to statements in the programs they produce.

--Go To Statement Considered Harmful, CACM, March 1968.

Simplicity is prerequisite for reliability.

The use of anthropomorphic terminology when dealing with computing systems is a symptom of professional immaturity.

The use of COBOL cripples the mind; its teaching should, therefore, be regarded as a criminal offence.

--How do we tell truths that might hurt?, June 1975.

Today a usual technique is to make a program and then to test it. But: program testing can be a very effective way to show the presence of bugs, but it is hopelessly inadequate for showing their absence.

The competent programmer is fully aware of the strictly lmited 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.

-- The Humble Programmer

The Humble Programmer was Dijkstra's 1972 Turing Award lecture; it can be obtained as a difficult to read PDF file.

In the end, Dijkstra valued simplicity as the key to program reliability. One might hope that he would have found things to admire (along with things to criticize) in the free software world and its accomplishments.


(Log in to post comments)

Edsger W. Dijkstra -- he will be missed

Posted Aug 8, 2002 15:42 UTC (Thu) by sayler (subscriber, #3164) [Link]

I received my computer science degree from the University of Texas, where Dr. Dijkstra taught before retiring. I never took the undergraduate class he offered (I was kind of intimidated at the time), but the professor who taught my Software Engineering class had him come in to lecture one day.

This software engineering class was very pragmatic, emphasizing methodical design, implentation, and testing. As I recall, Dr. Dijkstra gave his lecture near the end of our semester, by which time we had been heavily involved in something resembling a team development evironment for a few months.. There was a very corporate feeling to our regimen of meetings and reports.

So one day we all go to the faculty lounge to hear the esteemed professor speak. He comes in the door of the lounge appearing to me most unlike the kind of man who could write so forcefully about programming, dressed in shorts and a tee-shirt with a distinctly old-grandfather look on his face.

In his very soft-spoken manner, he told us that he beleived that the main problem with programmers was a lack of rigor. People were so concerned with coding and testing that they never learned how to write something correctly the first time. He asked us to prove the correctness of the code for a binary search and spent the next half-hour proceeding glumly as we slowly worked through the process with him.

I got the impression we were a vaguely dissapointing group of students who he could tell were not convinced of the validity of his approach. It wasn't even a bitter dissapointment, though. I felt as though he was someone who had totally convinced himself that he knew how to make the world a better place, but that noone was listening.

He answered our questions about "gotos considered harmful" (it was his editor's idea to give it the cute title) with what I considered obvious patience. He talked about how he really only was able to keep up on the research that people referred to him these days. And then the lecture was over.

Our professor and Dr. Dijkstra were good friends, and I hung around after class talking with them about computer science and Dijksta's past. I ended up in his office after a while and we chatted about the current state of the industry as he saw it, why he really liked Texas, and so on. He was so intelligent in his conversation--asked so many probling questions--that by the time I was done I felt both touched and exhausted. He put on his cowboy hat and walked out of the office with me and headed off to his next appointment.

That was the last time I saw Esdgar Dijkstra--the only real time I ever talked to him. But I feel that the world has lost a quiet crusader, and I feel a tug in my heart thinking about this old dean of computer science with his cowboy hat.

Copyright © 2002, Eklektix, Inc.
Comments and public postings are copyrighted by their creators.
Linux is a registered trademark of Linus Torvalds