Books
2018 | Routines of Substitution: John von Neumann’s Work on Software Development, 1945-1948 (Springer) [Publisher’s web page] [pre-publication draft] |
2016 | ENIAC in Action: Making and Remaking the Modern Computer (MIT Press) (with T. Haigh and C. Rope) [Publisher’s web page] |
2011 | A Science of Operations: Machines, Logic, and the Invention of Programming (Springer) [Publisher’s web page] [2013 Fernando Gil prize, Special Commendation] [This is an expanded version of my 2008 PhD thesis] |
Articles and book chapters
2020 | “Contextualizing Colossus: Codebreaking technology and institutional capabilities”. Technology and Culture 61(3):871-900. [Publisher’s web page] |
“Flow diagrams, assertions, and formal methods”. Formal Methods. FM 2019 International Workshops (Springer) LNCS 12233:15-34. [Publisher’s web page] [pre-publication draft] |
|
“Von Neumann thought Turing’s Universal Machine was ‘Simple and neat'” (with T. Haigh). Communications of the ACM, 63(1):26-32. [Publisher’s web page] |
|
2019 | “The Media of Programming” (with T. Haigh). In T. Haigh (ed.), Exploring the Early Digital (Springer) doi:10.1007/978-3-030-02152-8. [Publisher’s web page] |
2018 | “Colossus and Programmability” (with T. Haigh). IEEE Annals of the History of Computing, 40(4):5-27. [Winner, 2019 Bernard S. Finn IEEE History Prize] [pdf] |
“The Mathematical Origins of Modern Computing”. In Sven-Ove Hansson (ed.), Technology and Mathematics: Philosophical and Historical Investigations (Springer) doi:10.1007/978-3-319-93779-3. [Publisher’s web page] [pre-publication draft] |
|
2017 | “AI and the Origins of the Functional Programming Language Style”. Minds and Machines, 27(3):449-472, doi:10.1007/s11023-017-9432-7. [Publisher’s web page] [pre-publication draft] |
2016 | “Where Code Comes From: Architectures of Automatic Computing from Babbage to Algol” (with T. Haigh). Communications of the ACM, 59(1):39-44. |
2015 | “Innovators Assemble: Ada Lovelace, Walter Isaacson, and the Superheroines of Computing” (with T. Haigh). Communications of the ACM, 58(9):20-27. |
2014 | “Los Alamos bets on ENIAC: Nuclear Monte Carlo Simulations, 1947-1948” (with T. Haigh and C. Rope). IEEE Annals of the History of Computing, 36(3):42-63. [pdf] |
“Engineering ‘The Miracle of the ENIAC’: Implementing the Modern Code Paradigm” (with T. Haigh and C. Rope). IEEE Annals of the History of Computing, 36(2):41-59. [pdf] |
|
“Reconsidering the stored program concept” (with T. Haigh and C. Rope). IEEE Annals of the History of Computing, 36(1):4-17. [pdf] |
|
“When technology became language: the origins of the linguistic conception of computer programming, 1950-1960” (with D. Nofre and G. Alberts). Technology and Culture, 55(1):40-75. [Winner of the 2015 Mahoney Prize] |
|
1995 | “Discipline or punish: the cruelty of not teaching software engineering”. In Professional Awareness in Software Engineering, ed. C. Myers (McGraw-Hill). [pdf] |