Cultures of Programming
The Development of Programming Concepts and Methodologies
- Tomas Petricek
- Cambridge University Press
- December 2025
What defines a correct program? What education makes a good programmer? The answers to these questions depend on whether programs are seen as mathematical entities, engineered socio-technical systems or media for assisting human thought.
Cultures of Programming shows how programming concepts and methodologies emerged and developed from the 1940s to the present and interprets key historical moments as interactions between five different cultures of programming.
Open Access
Thanks to the generous support from the Charles University, the book is available as open access! You can get a PDF for free through Cambridge Core.
Hardcopy or eBook
Available in print from: CUP | Bookshop.org | Libristo.eu | Amazon (US) | Amazon (UK)
The publisher also offers an eBook using the Adobe eBook Reader (ePub or PDF): CUP.
Talks and Podcasts
Past and Upcoming Appearances
I have been working on the book for quite a few years and have talked about the project in a number of places over time. You can find some of the talks and interviews below. There are also a few upcoming appearances and I'm always looking forward to more!
Upcoming Appearances
I'm always happy to talk about history of programming at conferences or in podcasts! There is a lot to talk about, from interactions between cultures to histories of programming languages, types, object-orientated programming or the neglected hacker and humanistic ideals of programming. Feel free to reach out at tomas@tomasp.net!
- Undone Science in Computer Science - 23-25 March 2026, Luxembourg
Recorded Talks and Podcasts
- Azure & DevOps Podcast - Episode 200 - Early cultures of programming, FORTRAN and Algol programming languages, and my favorite FLOW-MATIC system.
- Keynote at CodeMesh (Virtual, 2020) - A story told in three scenes: (i) ENIAC and EDSAC: Programming in the 1940s, (ii) Time-sharing and minicomputers in 1950-1960s, and (iii) What kind of activity is programming?
Slides from Talks
- History and Philosophy of Programming (HaPoP, Aachen 2025) - What code is beautiful? History of types and object-oriented programming as clashes and collaborations
- ASL Winter Meeting (ASL/APA, San Francisco 2023) - History of the mathematization of programming, interactive programming and software engineering
- History of Programming meetup (Virtual, 2022) - Understanding the history of programming through technical artifacts and controversies
- Keynote at CodeMesh (Virtual, 2020) - Lessons from 70 years of learning how to control the electronic computer