To Write Code: The Cultural Fabrication of Programming Notation and Practice

Writing and its means have become detached. Unlike written and drawn practices developed prior to the 20th century, notation for programming computers developed in concert and conflict with discretizing infrastructure such as the shift-key typewriter and data processing pipelines. In this paper, I recall the emergence of high-level notation for representing computation. I show how the earliest inventors of programming notations borrowed from various written cultural practices, some of which came into conflict with the constraints of digitizing machines, most prominently the typewriter. As such, I trace how practices of "writing code" were fabricated along social, cultural, and material lines at the time of their emergence. By juxtaposing early visions with the modern status quo, I question long-standing terminology, dichotomies, and epistemological tendencies in the field of computer programming. Finally, I argue that translation work is a fundamental property of the practice of writing code by advancing an intercultural lens on programming practice rooted in history.

[1]  W. Ong Orality and literacy , 1982 .

[2]  Dr. Mark Priestley Routines of Substitution , 2018, SpringerBriefs in History of Computing.

[3]  T. Ingold Making: Anthropology, Archaeology, Art and Architecture , 2013 .

[4]  I. Bernard Cohen,et al.  Makin' numbers: Howard Aiken and the computer , 1999 .

[5]  Annette Vee,et al.  Coding Literacy: How Computer Programming Is Changing Writing , 2017 .

[6]  Fran Markowitz,et al.  Everything Was Forever until It Was No More: The Last Soviet Generation , 2006 .

[7]  Philip J. Guo Non-Native English Speakers Learning Computer Programming: Barriers, Desires, and Design Opportunities , 2018, CHI.

[8]  Zahra Ashktorab,et al.  Thinking Too Classically: Research Topics in Human-Quantum Computer Interaction , 2019, CHI.

[9]  Morgan G. Ames,et al.  MAKING OR MAKING DO? CHALLENGING THE MYTHOLOGIES OF MAKING AND HACKING , 2018 .

[10]  Andrew S Lea The Chinese Typewriter: A History , 2017, Annals of science.

[11]  Friedrich A. Kittler,et al.  Gramophone, Film, Typewriter , 1999 .

[12]  Kentaro Toyama,et al.  Geek Heresy: Rescuing Social Change from the Cult of Technology , 2015 .

[13]  L. Winner DO ARTIFACTS HAVE (cid:1) POLITICS? , 2022 .

[14]  Lucy A. Suchman,et al.  Located Accountabilities in Technology Production , 2002, Scand. J. Inf. Syst..

[15]  Ricardo Baeza-Yates,et al.  Computer Science 2 , 1994 .

[16]  Thierry Bardini,et al.  Bootstrapping: Douglas Engelbart, coevolution, and the origins of personal computing , 2000 .

[17]  Elena L. Glassman,et al.  Approaching Polyglot Programming: What Can We Learn from Bilingualism Studies? , 2019, PLATEAU@UIST.

[18]  Martin Stack,et al.  Old Habits Die Hard:Path Dependency and Behavioral Lock-in , 2004 .

[19]  Fred P. Brooks,et al.  The Mythical Man-Month , 1975, Reliable Software.

[20]  J. W. Backus,et al.  The Fortran Automatic Coding System for the IBM 704 EDPM , 1956 .

[21]  T. P. Hughes,et al.  The Social Construction of Technological Systems: New Directions in the Sociology and History of Technology , 1989 .

[22]  Matthias Felleisen,et al.  On the Expressive Power of Programming Languages , 1990, European Symposium on Programming.

[23]  Luis Iturra Lines. A brief history , 2012 .

[24]  Atsushi Akera Calculating a Natural World: Scientists, Engineers, and Computers During the Rise of U.S. Cold War Research (Inside Technology) , 2006 .

[25]  Paul Dourish,et al.  Not the internet, but this internet: how othernets illuminate our feudal internet , 2015, Aarhus Conference on Critical Alternatives.

[26]  Konrad Zuse,et al.  The Computer — My Life , 1993, Springer Berlin Heidelberg.

[27]  Ghislaine M. Lawrence The social construction of technological systems: new directions in the sociology and history of technology , 1989, Medical History.

[28]  John von Neumann,et al.  First draft of a report on the EDVAC , 1993, IEEE Annals of the History of Computing.

[29]  P. Ceruzzi Before the Computer: IBM, NCR, Burroughs, and Remington Rand and the Industry They Created, 1865-1956. , 1994 .

[30]  Frederick P. Brooks,et al.  The Mythical Man-Month: Essays on Softw , 1978 .

[31]  Jennifer S. Light,et al.  When Computers Were Women , 1999 .

[32]  Thomas Leich,et al.  A Look into Programmers’ Heads , 2020, IEEE Transactions on Software Engineering.

[33]  Corrado Böhm,et al.  Calculatrices digitales. Du déchiffrage de formules logico-mathématiques par la machine même dans la conception du programme , 1954 .

[34]  Subrata Dasgupta,et al.  It Began with Babbage: The Genesis of Computer Science , 2014 .

[35]  Donald E. Knuth,et al.  The Early Development of Programming Languages. , 1977 .

[36]  Wolfgang K. Giloi Konrad Zuse's Plankalkül: The First High-Level, "non von Neumann" Programming Language , 1997, IEEE Ann. Hist. Comput..

[37]  Matti Tedre The Science of Computing: Shaping a Discipline , 2014 .

[38]  Steven J. Jackson,et al.  Data Vision: Learning to See Through Algorithmic Abstraction , 2017, CSCW.

[39]  Marie Hicks Pioneer Programmer: Jean Jennings Bartik and the Computer that Changed the World by Jean Jennings Bartik (review) , 2015 .

[40]  Jon Agar :Calculating a Natural World: Scientists, Engineers, and Computers during the Rise of U.S. Cold War Research , 2008 .

[41]  Holly Hearon,et al.  Orality and Literacy , 2016 .

[42]  Heinz Rutishauser,et al.  Automatische Rechenplanfertigung bei programmgesteuerten Rechenmaschinen , 1952 .

[43]  Jasper Tran O'Leary,et al.  Machine-o-Matic: A Programming Environment for Prototyping Digital Fabrication Workflows , 2019, UIST.

[44]  Donna Harawy Situated Knowledges: The Science Question in Feminism and the Privilege of Partial Perspective , 2022, Philosophical Literary Journal Logos.

[45]  William Aspray,et al.  Computing before computers , 1990 .

[46]  P. David Clio and the Economics of QWERTY , 1985 .

[47]  Alex S. Taylor,et al.  Out there , 2011, CHI.

[48]  Daniela Karin Rosner,et al.  Critical Fabulations: Reworking the Methods and Margins of Design , 2018 .

[49]  Wanda J. Orlikowski,et al.  Integrated Information Environment or Matrix of Control?: The Contradictory Implications of Information Technology , 2015 .

[50]  Shaowen Bardzell,et al.  Reconstituting the Utopian Vision of Making: HCI After Technosolutionism , 2016, CHI.

[51]  Robert Bruce Findler,et al.  Operational semantics for multi-language programs , 2007, POPL '07.

[52]  Aleks Kissinger,et al.  Picturing Quantum Processes , 2017 .

[53]  Stanislas Dehaene,et al.  Origins of the brain networks for advanced mathematics in expert mathematicians , 2016, Proceedings of the National Academy of Sciences.

[54]  A. Turing On Computable Numbers, with an Application to the Entscheidungsproblem. , 1937 .

[55]  Daniel Chandler,et al.  The phenomenology of writing by hand , 1992, Intell. Tutoring Media.

[56]  A.W. Burks Electronic Computing Circuits Of The ENIAC , 1947, Proceedings of the IEEE.

[57]  Michael S. Bernstein,et al.  Examining Crowd Work and Gig Work Through the Historical Lens of Piecework , 2017, CHI.

[58]  Ann Light,et al.  Designing Against the Status Quo , 2016, Conference on Designing Interactive Systems.

[59]  Olly Gotel,et al.  Flow Diagrams: Rise and Fall of the First Software Engineering Notation , 2006, Diagrams.

[60]  Richard L. Mendelsohn The Philosophy of Gottlob Frege , 2005 .

[61]  P. Mchatton Intercultural Development Inventory , 2005 .

[62]  David Mark Gerard Nofre,et al.  When Technology Became Language: The Origins of the Linguistic Conception of Computer Programming, 1950–1960 , 2014, Technology and culture.

[63]  L. Delpit Other People's Children: Cultural Conflict in the Classroom , 1995 .

[64]  M. Priestley The Mathematical Origins of Modern Computing , 2018 .

[65]  Paul Dourish,et al.  Postcolonial Computing , 2012 .

[66]  S. Strom “Light Manufacturing”: The Feminization of American Office Work, 1900–1930 , 1989 .

[67]  Gabrielle Durepos Reassembling the Social: An Introduction to Actor‐Network‐Theory , 2008 .

[68]  T. O. Ellis,et al.  THE GRAIL PROJECT: AN EXPERIMENT IN MAN-MACHINE COMMUNICATIONS , 1969 .

[69]  Mark Priestley,et al.  ENIAC in Action: Making and Remaking the Modern Computer , 2016 .

[70]  Edward F. Melcer,et al.  Bots & (Main)Frames: Exploring the Impact of Tangible Blocks and Collaborative Play in an Educational Programming Game , 2018, CHI.

[71]  Herman H. Goldstine The Computer from Pascal to von Neumann , 1972 .

[72]  J. Neumann John von Neumann on Technological Prospects and Global Limits , 1986 .

[73]  Hans Neukom,et al.  ERMETH: the first Swiss computer , 2005, IEEE Annals of the History of Computing.

[74]  Paul Dourish,et al.  Ubicomp's colonial impulse , 2012, UbiComp.

[75]  Karen Ruhleder,et al.  Steps Toward an Ecology of Infrastructure: Design and Access for Large Information Spaces , 1996, Inf. Syst. Res..

[76]  Helen Verran,et al.  Science and an African logic , 2001 .

[77]  Steven J. Jackson,et al.  Trust in Data Science , 2018, Proc. ACM Hum. Comput. Interact..

[78]  James W. Cortada,et al.  Before the Computer: IBM, NCR, Burroughs, and Remington Rand and the Industry They Created, 1865–1956 by James W. Cortada (review) , 1994, Technology and Culture.

[79]  Gottlob Frege,et al.  Begriffsschrift, eine der arithmetischen nachgebildete Formelsprache des reinen Denkens , 1879 .

[80]  William Aspray,et al.  Papers of John Von Neumann on computing and computer theory, Vol 12 , 1986 .

[81]  Sarah Barbrow,et al.  Standards and/as Innovation: Protocols, Creativity, and Interactive Systems Development in Ecology , 2015, CHI.

[82]  Terry Winograd,et al.  On "Understanding Computers and Cognition: A New Foundation for Design". A Response to the Reviews , 1987, Artif. Intell..

[83]  Golda Eldridge,et al.  Alan Turing: The Enigma , 2015 .

[84]  P. Dourish,et al.  Postcolonial interculturality , 2009, IWIC '09.

[85]  J. W. Backus,et al.  The FORTRAN automatic coding system , 1899, IRE-AIEE-ACM '57 (Western).

[86]  Friedrich L. Bauer,et al.  The “Plankalkül” of Konrad Zuse: a forerunner of today's programming languages , 1972, CACM.

[87]  N. W. Thiong’o Moving the Centre: The Struggle for Cultural Freedoms , 1993 .

[88]  Shaowen Bardzell,et al.  Design and Intervention in the Age of "No Alternative" , 2018, Proc. ACM Hum. Comput. Interact..

[89]  John W. Backus,et al.  The history of FORTRAN I, II, and III , 1978, SIGP.

[90]  Andrew Pickering,et al.  The mangle of practice : time, agency, and science , 1997 .

[91]  James D. Hollan,et al.  Direct Manipulation Interfaces , 1985, Hum. Comput. Interact..

[92]  Seongtaek Lim,et al.  GLIDE (Git-Learning IDE; Integrated Development Environment): In-class Collaboration in Web Engineering Curriculum for Youths (Abstract Only) , 2018, SIGCSE.

[93]  P. Kidwell,et al.  The mythical man-month: Essays on software engineering , 1996, IEEE Annals of the History of Computing.

[94]  John L Jones A survey of automatic coding techniques for digital computers , 1954 .

[95]  Steve Harrison,et al.  Making epistemological trouble: Third-paradigm HCI as successor science , 2011, Interact. Comput..

[96]  Gian-Carlo Rota,et al.  History of Computing in the Twentieth Century , 1980 .

[97]  Terry Winograd,et al.  Understanding computers and cognition - a new foundation for design , 1987 .

[98]  Thomas Haigh,et al.  Actually, Turing did not invent the computer , 2014, CACM.

[99]  Nicola J. Bidwell,et al.  Moving the centre to design social media in rural Africa , 2016, AI & SOCIETY.

[100]  A. M. Turing,et al.  Computing Machinery and Intelligence , 1950, The Philosophy of Artificial Intelligence.

[101]  Nathan Ensmenger,et al.  The Multiple Meanings of a Flowchart , 2016 .

[102]  S. Jasanoff States of Knowledge: The Co-production of Science and the Social Order , 2004 .

[103]  Daniela Karin Rosner,et al.  Making Core Memory: Design Inquiry into Gendered Legacies of Engineering and Craftwork , 2018, CHI.

[104]  Morgan G. Ames Hackers, Computers, and Cooperation , 2018, Proc. ACM Hum. Comput. Interact..

[105]  Michael Cole,et al.  The Fifth Dimension: An After-School Program Built on Diversity , 2006 .

[106]  Victor Kaptelinin,et al.  Acting with technology: Activity theory and interaction design , 2006, First Monday.

[107]  Amal Ahmed Verified Compilers for a Multi-Language World , 2015, SNAPL.

[108]  Robert L. Goldstone,et al.  Formal notations are diagrams: Evidence from a production task , 2007, Memory & cognition.

[109]  Sam Tobin-Hochstadt,et al.  The Racket Manifesto , 2015, SNAPL.

[110]  Paul Dourish,et al.  The Stuff of Bits: An Essay on the Materialities of Information , 2017 .

[111]  Kenneth E. Iverson,et al.  Notation as a tool of thought , 1980, APLQ.

[112]  Peter Lyman,et al.  Reading, writing and word processing: Toward a phenomenology of the computer age , 1984 .

[113]  Herman H. Goldstine,et al.  Planning and coding of problems for an Electronic Computing Instrument , 1947 .

[114]  C. Slivinsky,et al.  Programmers and managers: The routinization of computer programming in the United States , 1979, Proceedings of the IEEE.

[115]  John W. Backus,et al.  Can programming be liberated from the von Neumann style?: a functional style and its algebra of programs , 1978, CACM.