Wednesday, February 6, 2013

The ghost of Dijkstra comes calling.

My latest math hobby is looking at climate data to see if I can make heads or tails of it. There's a lot of data so I can't sort through it by hand. That means writing computer programs. I'm not getting paid for this, so this is just programming for fun.

 Programming for fun... is fun.

If you are a certain sort of person.

I am that certain sort.


Part of the fun is being your own boss. I'm the only one who gets to say when the job is done and the only one who says I have to scrap an idea and go back to the drawing board.

Or am I?

I got a new idea on how to present the data which will show trends in a way that cannot be cherry picked. If you are reading my math blog, you already know I am very adamantly against cherry-picking.

Once I got the idea, it seemed so simple and clear that programming it should happen in a flash, just as fast as I could say the sentence that explains the method.

Hmmm... not so much.

I had to stop in the middle of this "easy" programming task, because it turns out not to be quite so easy.

The ghost of Edsger Dijkstra haunted me.

Dijkstra, the handsome and professorial looking fellow in the picture above, was an important figure in the field of computer science in the early days. While there is a well-known algorithm that bears his name, his major contribution is to the teaching of the subject with an emphasis on rigor and careful planning before a program is written.

Dijkstra died at the age of 72 in 2002. When asked by an interviewer what he would like to be remembered for, he replied: "If some day, someone is writing a computer program and is thinking about how to do a quick and sloppy job, and for a moment that person considers 'What would Dijkstra make of this?', then decides to design the program carefully, that will be immortality enough for me."

Well, professor, as of 3:00 this afternoon you are immortal for yet another year. You're welcome.

No comments: