Portrait of Ian Arawjo

Ian Arawjo

Associate Academic Member
Assistant Professor, Université de Montréal, Department of Computer Science and Operations Research

Biography

Ian Arawjo is an assistant professor in the Department of Computer Science and Operations Research (DIRO) at Université de Montréal. He holds a PhD in information science from Cornell University, where he was advised by Tapan Parikh. His dissertation work spanned the intersection of computer programming and culture, investigating programming as a social and cultural practice. Arawjo has experience applying a range of human-computer interaction (HCI) methods, from ethnographic fieldwork, to archival research, to developing novel systems (used by thousands of people) and running usability studies.

Currently, he works on projects at the intersection of programming, AI and HCI, including how new AI capabilities can help us reimagine the practice of programming. He also works on large language model (LLM) evaluation, through high-visibility open-source projects such as ChainForge. His first-authored papers have won awards at top HCI conferences, including the Conference on Human Factors in Computing Systems (CHI), the Computer-Supported Cooperative Work and Social Computing Conference (CSCW) and the User Interface Software and Technology Symposium (UIST).

Current Students

Professional Master's - Université de Montréal

Publications

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… (see more) 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.