“To see a World in a Grain of Sand And a Heaven in a Wild Flower, Hold Infinity in the palm of your hand And Eternity in an hour.” —William Blake, I’ve been thinking about what constitutes a great programmer. Not “great” in our standard US or British English colloquial definition of , but great as in canonically Great; part of the story of computing.

The question arose the other night when, plagued by post-PyCon jetlag, I took advice from an algorithmically delivered piece on sleeplessness, left the bedroom and settled in an armchair with a book I presumed no insomnia could defy. In the event, by Edsger Dijkstra proved disappointing in that regard. Chagrined, I stayed up reading till dawn.

Most of the essays in are from the 1970s, by which time Dijkstra was already established as a giant in the field, and they provide a colorful window not just onto changes in our notion of programming, but onto the world programmers are called upon to program. Who was Dijkstra? A background in theoretical physics may have explained the Dutchman’s apparent mistrust of pure mathematicians. His marked resemblance to the actor Bryan Cranston as Walter White in would have unnerved those pure mathematicians had he lived a little beyond his allotted seventy-one years, from 1930 to 2002.

As expected, many of the essays in are technical timepieces that mean little to me (and yet some tempt with titles like “A New Elephant Built from Mosquitoes Humming in Harmony”). His colorful repo.