Today In History logo TIH
Portrait of Edsger W. Dijkstra
Portrait of Edsger W. Dijkstra

Character Spotlight

Talk to Edsger Dijkstra

Edsger W. Dijkstra March 20, 2026

Edsger Dijkstra wrote a paper in 1968 titled “Go To Statement Considered Harmful.” It was a letter to the editor, barely a page long, and it started one of the longest and most heated arguments in the history of computer science. Programmers who used goto — which was, at the time, virtually every programmer alive — took it as an attack on their competence. Dijkstra meant it as an attack on their thinking.

The argument was structural. Programs with goto statements create spaghetti code — logic that jumps from place to place, impossible to read, impossible to verify, impossible to maintain. Dijkstra’s position was that spaghetti code wasn’t just bad practice. It was an intellectual failure. A program you can’t reason about is a program you don’t understand, and a program you don’t understand will betray you at the worst possible moment.

He was right. Structured programming — the discipline his letter helped establish — is now so fundamental that beginning programmers don’t know it was ever controversial. But in 1968, telling a generation of programmers that their primary control structure was harmful was like telling surgeons that their favorite scalpel was a butter knife.

Whether He Meant It

He always meant it. That was the unnerving part.

Dijkstra conducted his career as a sustained argument that software development was too important to be left to programmers who didn’t think carefully. He wrote his manuscripts by hand — in fountain pen, in meticulous cursive — and distributed them as photocopied letters to a mailing list he maintained personally. The EWD series: over 1,300 numbered manuscripts, each one a small essay on some aspect of computing, mathematics, or the relationship between the two.

He refused to use email. He considered it a distraction — not from work, but from thought. The handwritten manuscripts were slow on purpose. The slowness was the method. If you can’t write a clear argument by hand, in complete sentences, the argument isn’t clear. The tool wasn’t the problem. The thinking was the problem.

He won the Turing Award in 1972 for “fundamental contributions to programming as a high, intellectual challenge.” The phrase “high, intellectual challenge” was his. He insisted on it. Programming wasn’t engineering. It wasn’t craft. It was mathematics, and mathematicians have standards.

What He’s Testing

Talk to Dijkstra and he’d test whether you could think precisely. Not quickly — precisely. He’d ask you to explain something you’d built. He’d listen. He’d identify the place where your explanation skipped a step — the logical gap you’d papered over with intuition — and he’d press on that gap until you either filled it or admitted it was there.

He taught at the University of Texas at Austin. His students described a man who was unfailingly polite, genuinely interested in their work, and absolutely merciless about logical errors. He didn’t raise his voice. He didn’t mock. He simply asked the next question, and the next question was always the one that revealed the weakness you were hoping nobody would find.

“The question of whether a computer can think is no more interesting than the question of whether a submarine can swim.” He said this to dismiss entire fields of inquiry. Artificial intelligence, in his view, was a category error — the application of biological metaphors to machines, producing confusion rather than insight. Whether he was right about this is still debated. That he said it with complete certainty, in a single sentence, and then moved on to the next topic, was pure Dijkstra.

What Happens When You Fire Back

If you challenged him with substance, he engaged. If you challenged him with popularity — “but everyone uses goto” or “but programmers prefer this approach” — he’d cite the famous line: “The use of COBOL cripples the mind; its teaching should, therefore, be regarded as a criminal offense.” He wasn’t joking. He considered bad programming languages a form of intellectual damage, and he held the language designers responsible for the damage.

He died in 2002. His last EWD manuscript was numbered 1318. The shortest path algorithm that bears his name is taught in every computer science program in the world. He developed it in twenty minutes, without a computer, using a pencil and a cafe table in Amsterdam. He said later that the simplicity was the point — if you needed a computer to develop an algorithm, the algorithm was too complicated.


He wrote by hand, refused email, and considered most programming languages a criminal offense. The provocation wasn’t personality. It was precision — the belief that unclear thinking is the root of every software failure, and that programmers who can’t explain their code don’t understand it.

Talk to Edsger Dijkstra — bring a clear argument. He’ll find the gap. He always does.

Talk to Edsger W. Dijkstra

Have a conversation with this historical figure through AI

This character spotlight article is part of our series on history's most fascinating figures. Browse the full blog, read about Edsger W. Dijkstra, or explore today's events.