A profile photo of Joseph C. Osborn, a man with brown hair and glasses.

I’m Joe Osborn, and I do research in video game design and artificial intelligence: using AI to help make better designs, and building AI agents which can learn game design information from play. I teach courses in AI, computational logic and software verification, and game development.

This fall, I’ve started to keep track of my research thoughts and process in research journal posts. Please find them on the FAIM Lab website.

Schedule and Classes

Please feel free to email me or come by my office in Edmunds 113 with questions about my classes, about general topics in CS, or about possible research work together. I’m also happy to schedule specific meeting times outside of office hours for non-class-related questions; use this link and pick a time that works for you!


Semester Courses
Spring 2024 CSCI 054 PO
  CSCI 181G PO
Fall 2023 CSCI 181G PO
  CSCI 190 PO
Spring 2023 Steele leave
Fall 2022 Steele leave
Spring 2022 CSCI 54 PO
  CSCI 181G PO
Fall 2021 CSCI 54 PO
  CSCI 190 PO
Spring 2021 CSCI 54 PO
  CSCI 181G PO
Fall 2020 CSCI 54 PO
  CSCI 151 PO
  CSCI 190 PO
Spring 2020 CSCI 54 PO
  CSCI 51a PO
Fall 2019 CSCI 151 PO
  CSCI 51a PO
Spring 2019 Family leave
Fall 2018 CSCI 151 PO
  CSCI 54 PO

About Me

I believe that being able to critique and author processes is a key literacy—human-authored computational processes are implicated in nearly every social space and interaction, and it is vital to understand these processes at a deep level and, sometimes, to circumvent or subvert them. Computer science pedagogy plays a central role in preparing students to recognize and critique computational systems, in addition to its traditional role in teaching students to design and implement new computational systems (an important creative and technological pursuit on its own).

My background is in fine arts (I hold an MFA in game design from the University of Southern California) and computer science (my PhD is from UC Santa Cruz’s Expressive Intelligence Studio). I also have some software engineering training from my undergrad (a B.S. in Software Engineering at Rochester Institute of Technology, as well as a year working at Vicarious Visions, a videogame developer in central New York).

My research connects these two interests—interactivity and theoretical computer science—with the hope that it will make both more accessible to non-specialist programmers. I run the FAIM Lab to bring together students with an interest in the analysis and creation of interactive media.

Somewhat surprisingly, I’m a little bit of a nerd. Outside of CS research, I like retro videogames and chiptunes, hobby electronics projects, fussy coffee, tasty food, and dad jokes. I play Splatoon 2 and 3 as ProfessorO (SW-7704-2067-7509); I’m ok at them. I also sponsor the 7Cs game club.