Semester: winter 2026/27
Lectures: Not scheduled yet, please check back soon! (Tomas Petricek)
Page in SIS: NPRG088
Grading: Credit

Programming originated at the intersection of many disciplines, including logic, electrical engineering, business management and psychology. Different cultures of programming, rooted in those disciplines, continue shaping programming to this day. They remain at the core of current disagreements about programming, but also productively contribute to shared concepts. In this course, we will look at programming from a historical perspective, examining foundational works of the field through the lens of different cultures of programming.

This is a one-off course based on my open-access book Cultures of Programming published by Cambridge University Press in December 2025. Also check out the exhibition in Galeria Chodba (Mala strana, ground floor)!

Course format

The course will combine lectures with discussions about notable past papers on programming. I’ll ask you to read some old papers and briefly present them and discuss what interesting and surprising things can be found there! The exact arrangement will depend on the number of students attending and interest in getting credits for the course :-).

Course sylabus

The course will mostly follow the structure & material from the book.

Cultures of programming

Mathematization of programming

Interactive programming

Software engineering

Programming with types

Object-oriented programming