CMP -- United Business Media

Intelligent Enterprise

Better Insight for Business Decisions

UBM
Intelligent Enterprise - Better Insight for Business Decisions
Part of the TechWeb Network
Intelligent Enterprise
search Intelligent Enterprise





February 1, 2003

Edsger Dijkstra

A brief tribute to the logician who revolutionized programming

by Joe Celko

"In their capacity as a tool, computers will be but a ripple on the surface of our culture. In their capacity as an intellectual challenge, they are without precedent in the cultural history of mankind." — E. W. Dijkstra, Turing Award acceptance speech

Edsger Wybe Dijkstra died on Aug. 6, 2002 at his home in Nuenen, the Netherlands, after a battle with cancer. You can read his academic obituary at the ACM Web site (www.acm.org/announcements/dijkstraACMobit.html).

Dijkstra held the Schlumberger Centennial Chair in Computing Sciences at the University of Texas from 1984 until he retired as Professor Emeritus in 1999.

When I first moved to Austin, I considered driving over to the university to meet him, but I never did. Now the best I can do is send a sympathy card to his family. Damn.

Planet GO TO

Younger programmers won't remember how Dijkstra's letter "Go To Statement Considered Harmful" (reprinted in Ed Yourdon's Classics in Software Engineering) affected our community when it first appeared as a letter in the 1968 March issue of The Communications of the ACM.

Today's 20-something IT workforce lives, works, and functions in a world defined by that letter — which pretty much abolished GO TO statements from source code — but can't possibly conceive of what things were like before its publication any more than they could imagine a flat earth.

Before Dijkstra, we wrote programs that depended on a particular machine's hardware and made hit-and-miss attempts at finding the right algorithms for the bad specs we were given. It was handicraft with, at best, bad tools.

Dijkstra introduced the idea that programming could be built in an orderly fashion using mathematical logic. Programming thereafter evolved from handicraft, to technique, to engineering, and finally, to a science.

This idea of formal correctness led to the Structured Programming revolution of the 1970s, which moved from the academic into the operational world when Datamation magazine devoted an entire issue to the topic.

Oh yeah, along the way, he added a few basic concepts to computing such as synchronization, deadly embrace, guarded command, and structured programming and invented an algorithm for the shortest path in a graph.

I used his guarded command language as a Masters degree project for one of my students when I taught college in Los Angeles. The basic idea is that each command in a program has a guard set by a simple predicate: If the guard is open, then the command can be executed; if it's closed, the command can't be executed. If more than one command is open at the same time, then any of them can be executed. This concept throws out the idea of deterministic programming, which looks so fundamental in retrospect.

Perfect Penmanship

Dijkstra wrote more than 1,300 scholarly papers and essays, most of which are short and neatly handwritten. The University of Texas Computer Science Department has scanned and posted PDFs of many of his original writings.

You can also find links to the technical reports from the Mathematical Centre (now CWI: Centrum voor Wiskunde en Informatica), but these appear in their original Dutch. And, in spite of writing for a Dutch database magazine and speaking at conferences in the Netherlands, I personally don't speak the language ... well, maybe the names of a few beers.



Rate This Article

Comments:

Optional e-mail address:

On May 13, 2000, Dijkstra gave his farewell lecture during the symposium "In Pursuit of Simplicity" held in honor of his retirement. The title alone gives a quick taste of Dijkstra. What's so great about these archives is the way they read. They're so simple, clear, and eloquent that you can sit down and read one as if it were a short story.

I pulled a few short Dijkstra papers from the University of Texas Web site to read for pleasure over the weekend that I wrote this. I'd recommend you do the same.


Joe Celko [71062.1056@compuserve.com] is an independent consultant and the author of Joe Celko's SQL Programming (Morgan Kaufmann Publishers, 1999).









IE Weekly Newsletter
Subscribe to the newsletter
    Email Address