The Dawn of Software Engineering: From Turing to Dijkstra
Edgar G. Daylight
Edgar sent me a review copy of his book a while back—it made for quite interesting reading and gave me new perspective on the historical origins of my field. I daresay many readers of this blog might be interested in giving it a read.
Alan Turing is widely regarded today as the father of digital computers. But as Daylight argues in this fascinating historical account of the development of computer programming as a discipline in the 1950s and 60s, the real story is much more complicated. Turing’s ideas didn’t actually have much influence on the building of the first computers themselves—but did gradually come to influence the practice of writing computer programs.
It will be interesting to compare and contrast this book with George Dyson’s book Turing’s Cathedral, which I have just begun reading—though I’m not far enough along to make any comparisons yet.
As an aside, I find it interesting that the subfield Dijkstra called “software engineering” —the subfield that was influenced by Turing’s ideas—really seems to comprise what is now known as “programming languages”. “Software engineering” now means something completely different, focusing on the business-oriented, large-scale aspects of building software systems. It’s difficult to imagine “software engineering” these days being influenced by Turing’s ideas (or abstract mathematical ideas, period—though perhaps I am being uncharitable).
Dijkstra genuinely despised business studies, a field that from his perspective, was the very antithesis of the clear, mathematically grounded disciplines he advocated. “The field is awash in the kind of woolly thinking that attracts babbling fools, soothsayers and swindlers”, if I may liberally translate from memory.
For more on Dijkstra see http://www.cs.utexas.edu/users/EWD/. The site contains copies and transcriptions of many (most? all?) of his manuscripts. For example, following up on michiel’s comment, from http://www.cs.utexas.edu/users/EWD/transcriptions/EWD06xx/EWD641.html:
“The world today has about a million “average programmers”, and it is frightening to be forced to conclude that most of them are the victims of an earlier underestimation of the intrinsic difficulty of the programmer’s task and now find themselves lured into a profession beyond their intellectual capabilities. It is a horrible conclusion to draw, but I am afraid that it is unavoidable.”
He certainly spoke his mind!
It was very funny seeing his name pop up in my RSS feed. I was at IMEC at the same time as E.G.D.