The birth of modern programming

The development of the modern computer in the mid 1940s did not just involve innovation in hardware. A great deal of attention was paid to the future use of the new machines and well before any working hardware was available much code was written to explore their design and application. These early explorations in software development have their own history, one that is much less well known than the story of theĀ  machines themselves.

In 1945, for example, the mathematician John von Neumann developed a sort routine for the embryonic EDVAC. Over the next couple of years, he and Herman Goldstine coded a number of other problems and proposed a comprehensive methodology for software development. Among other things, this work is renowned for introducing the flow diagram notation into computing.

My new book Routines of Substitution examines this episode, placing von Neumann’s programs in their historical and technical contexts and offering an interpretation of his general programming style. It includes a transcription of the unpublished manuscript containing von Neumann’s 1945 routine and draws on other unfamiliar sources to throw new light on the origins of such central topics in programming as flow diagrams and subroutines.

The book is published in the new SpringerBriefs in History of Computing series, edited by Gerard Alberts.

2 thoughts on “The birth of modern programming”

  1. Congratulations for the publication. It’s so important to read programming code as a source of historical inquiries. Looking forward to the methodological approaches you’re presenting us. How will this differ from the analysis you did in “Eniac in Action” with Tom?

    1. Thanks! There’s a mixture of technical and non-technical history, as in ENIAC in Action, but more analysis of the technical stuff. There’s not much overlap in content, apart from a brief account of some inevitable common background.

Leave a Reply to admin Cancel reply

Your email address will not be published. Required fields are marked *