Tomas Petricek is Assistant Professor in the Faculty of Mathematics and Physics at Charles University, Prague. He uses interdisciplinary research methods to understand programming and to design simple and expressive programming tools. He developed a theory of context-aware computations at the University of Cambridge, worked on the F# programming language at Microsoft Research and built data exploration tools for non-programmers at The Alan Turing Institute and the University of Kent.
‘Tomas Petricek's engaging and very readable book argues that programming is a complex human activity that must be understood from multiple perspectives. Written with deep and sympathetic understanding, it provides a unique overview of the history of programming and programming languages and profound insights into current practice that will help demystify the ‘black art’ of coding.’ Mark Priestley, National Museum of Computing ‘Is programming a practice of hacking, engineering, mathematics, management, or humanities? As a computer scientist with the insights and style of a humanist, Petricek leads the reader through the last seventy years of programming to show how these practices have both persisted independently and interacted to produce key technical and methodological innovations through their disputes and synergies.’ Warren Sack, University of California, Santa Cruz, author of The Software Arts ‘For some, computer programming is an abstract activity like mathematics; for others, an act of craftsmanship; for others, an industrial tool of organisation and control. This book presents a history of programming that preserves all these different points of view; indeed, it shows that these different ‘cultures’ (and others) have been crucial to its development and success.’ Simone Martini, University of Bologna