Andrew Head
Assistant Professor @ UPenn
Computer Science

Areas of interest: Human-computer interaction · Programming · Reading.

My research group studies how computers can help us comprehend complex texts—like science papers, source code, clinical notes, and mechanized proofs. We develop new interaction mechanisms by which people can inquire about the meanings of these texts.

For example, could reading interfaces help people understand equations in math texts? In one project, we explore just this question. We characterized how authors already augment formulas to explain them, developed tools to help them do it more easily, and integrated these explanations into an interactive reading application.

We have a heavy systems-building focus—we build our ideas into usable systems in order to refine those ideas, and test out their effect on users. Our systems often incorporate empowering techniques from text processing and program analysis. We ground our ideas in careful formative observations and interviews with prospective users.

Projects in our group are led by Ph.D. students Alyssa Hwang, Litao Yan, Hita Kambhamettu, Jeff Tao, Harry Goldstein, and Jessica Shi.

Penn master's and bachelor's students: If you are interested in the work that our group does, I encourage you to take Penn's class in human-computer interaction—CIS 4120/5120—to learn the essential skills we bring to our research, and then to apply to do research with our group here.

📰  Our latest news

April 2024: Congratulations Hita Kambhamettu for receiving the NSF Graduate Research Fellowship! We are so proud of you!

February 2024: Harry Goldstein's paper on Property-Based Testing in Practice receives a Distinguished Paper Award at ICSE '24. Congrats, Harry!

January 2024: We have had two papers accepted to CHI '24: Litao Yan's paper on AI-generated code explanations in the editor and Hita Kambhamettu's vision of intelligent, interactive medical notes.

September 2023: Our paper on Formula Formatting Language will be presented at UIST '23. Read it here. Also see Harry Goldstein's demo of an interactive property-based testing tool at the demo session.

July 2023: Alyssa Hwang presented a paper on designing audio instructions for tasks like following recipes at DIS '23. Read the paper here.

March 2023: I gave invited talks to MIT and Stanford' HCI groups on "Designing the Interactive Paper." Watch the Stanford talk here.

🧪  Publications

Projects in our develop novel interactions for programming (•), reading (•), and working with notation (•).

Ivie: Lightweight Anchored Explanations of Just-Generated Code [pdf]
Litao Yan, Alyssa Hwang, Zhiyuan Wu, and Andrew Head
ACM Conference on Human Factors in Computing Systems (CHI), 2024
Explainable Notes: Examining How to Unlock Meaning in Medical Notes with Interactivity and Artificial Intelligence [pdf]
Hita Kambhamettu, Danaë Metaxa, Kevin Johnson, and Andrew Head
ACM Conference on Human Factors in Computing Systems (CHI), 2024
Property-Based Testing in Practice [pdf]
Harrison Goldstein, Joseph W. Cutler, Daniel Dickstein, Benjamin C. Pierce, and Andrew Head
ACM/IEEE International Conference on Software Engineering, (ICSE), 2024
Best Paper Award
FFL: A Language and Live Runtime for Styling and Labeling Typeset Math Formulas [pdf]
Zhiyuan Wu, Jiening Li, Kevin Ma, Hita Kambhamettu, and Andrew Head
ACM User Interfaces Software and Technology Symposium (UIST), 2023
CALYPSO: LLMs as Dungeon Master's Assistants [pdf]
Andrew Zhu, Lara Martin, Andrew Head, and Chris Callison-Burch
AAAI Conference on Artificial Intelligence and Interactive Digital Entertainment, (AIIDE), 2023
Rewriting the Script: Adapting Text Instructions for Voice Interaction [pdf]
Alyssa Hwang, Natasha Oza, Chris Callison-Burch, and Andrew Head
ACM Conference on Designing Interactive Systems (DIS), 2023
Scim: Intelligent Skimming Support for Scientific Papers [pdf]
Raymond Fok, Hita Kambhamettu, Luca Soldaini, Jonathan Bragg, Kyle Lo, Marti A. Hearst, Andrew Head, and Daniel S. Weld
ACM Conference on Intelligent User Interfaces (IUI), 2023
Paper Plain: Making Medical Research Papers Approachable to Healthcare Consumers with Natural Language Processing [pdf]
Tal August, Lucy Lu Wang, Jonathan Bragg, Marti A. Hearst, Andrew Head, and Kyle Lo
ACM Transactions on Computer-Human Interaction, (TOCHI), 2023
CiteSee: Augmenting Citations in Scientific Papers with Persistent and Personalized Historical Context [pdf]
Joseph Chee Chang, Amy X. Zhang, Jonathan Bragg, Andrew Head, Kyle Lo, Doug Downey, and Daniel S. Weld
ACM Conference on Human Factors in Computing Systems (CHI), 2023
Best Paper Award
Colaroid: A Literate Programming Approach for Authoring Explorable Multi-Stage Tutorials [pdf]
April Yi Wang, Andrew Head, Ashley Zhang, Steve Oney, and Christopher Brooks
ACM Conference on Human Factors in Computing Systems (CHI), 2023
Nominated for Best Paper Award
Bolt-on, Compact, and Rapid Program Slicing for Notebooks [pdf]
Shreya Shankar, Stephen Macke, Sarah Chasins, Andrew Head, and Aditya Parameswaran
International Conference on Very Large Data Bases, (VLDB), 2023
Math Augmentation: How Authors Enhance the Readability of Formulas using Novel Visual Design Practices [pdf] [video]
Andrew Head, Amber Xie, and Marti A. Hearst
ACM Conference on Human Factors in Computing Systems (CHI), 2022
Best Paper Award
From Who You Know to What You Read: Augmenting Scientific Recommendations with Implicit Social Networks [pdf] [video]
Hyeonsu B. Kang, Rafal Kocielnik, Andrew Head, Jiangjiang Yang, Matt Latzke, Aniket Kittur, Daniel S. Weld, Doug Downey, and Jonathan Bragg
ACM Conference on Human Factors in Computing Systems (CHI), 2022
Fine-Grained Lineage for Safer Notebook Interactions [pdf]
Stephen Macke, Hongpu Gong, Doris Jung-Lin Lee, Andrew Head, Doris Xin, and Aditya Parameswaran
International Conference on Very Large Data Bases, (VLDB), 2021
Augmenting Scientific Papers with Just-in-Time, Position-Sensitive Definitions of Terms and Symbols [pdf] [demo] [code] [video]
Andrew Head, Kyle Lo, Dongyeop Kang, Raymond Fok, Sam Skjonsberg, Daniel S. Weld, and Marti A. Hearst
ACM Conference on Human Factors in Computing Systems (CHI), 2021
Composing Flexibly-Organized Step-by-Step Tutorials from Linked Source Code, Snippets, and Outputs [pdf] [video]
Andrew Head, Jason Jiang, James Smith, Marti A. Hearst, and Björn Hartmann
ACM Conference on Human Factors in Computing Systems (CHI), 2020
Nominated for Best Paper Award
Managing Messes in Computational Notebooks [pdf] [demo] [code] [video]
Andrew Head, Fred Hohman, Titus Barik, Steven M. Drucker, and Robert DeLine
ACM Conference on Human Factors in Computing Systems (CHI), 2019
Best Paper Award
Gamut: A Design Probe to Understand How Data Scientists Understand Machine Learning Models [pdf] [video]
Fred Hohman, Andrew Head, Rich Caruana, Robert DeLine, and Steven M. Drucker
ACM Conference on Human Factors in Computing Systems (CHI), 2019
Interactive Extraction of Examples from Existing Code [pdf] [demo] [video]
Andrew Head, Elena L. Glassman, Björn Hartmann, and Marti A. Hearst
ACM Conference on Human Factors in Computing Systems (CHI), 2018
Nominated for Best Paper Award
WiFröst: Bridging the Information Gap for Debugging of Networked Embedded Systems [pdf] [video]
Will McGrath, Jeremy Warner, Mitchell Karchemsky, Andrew Head, Daniel Drew, and Björn Hartmann
ACM User Interfaces Software and Technology Symposium (UIST), 2018
When Not to Comment: Questions and Tradeoffs with API Documentation for C++ Projects [pdf]
Andrew Head, Caitlin Sadowski, Emerson Murphy-Hill, and Andrea Knight
ACM International Conference on Software Engineering, (ICSE), 2018
Writing Reusable Code Feedback at Scale with Mixed-Initiative Program Synthesis [pdf]
Andrew Head*, Elena Glassman*, Gustavo Soares*, Ryo Suzuki, Lucas Figueredo, Loris D'Antoni, and Björn Hartmann
ACM Conference on Learning at Scale, (L@S), 2017
'*' denotes equal contribution.
The first three authors contributed equally to this work
Can Human Development be Measured with Satellite Imagery? [pdf]
Andrew Head, Mélanie Manguin, Nhat Tran, and Joshua E. Blumenstock
International Conference on Information and Communication Technologies and Development, (ICTD), 2017
TraceDiff: Debugging Unexpected Code Behavior Using Trace Divergences [pdf] [code]
Ryo Suzuki, Gustavo Soares, Andrew Head, Elena Glassman, Ruan Reis, Melina Mongiovi, Loris D'Antoni, and Björn Hartmann
IEEE Symposium on Visual Languages and Human-Centric Computing (VL/HCC), 2017
Tutorons: Generating Context-Relevant, On-Demand Explanations and Demonstrations of Online Code [pdf] [code]
Andrew Head, Codanda Appachu, Marti A. Hearst, and Björn Hartmann
IEEE Symposium on Visual Languages and Human-Centric Computing (VL/HCC), 2015
Nominated for Best Paper Award
Lamello: Passive Acoustic Sensing for Tangible Input Components [pdf] [video]
Valkyie Savage, Andrew Head, Wilmot Li, Gautham Mysore, Dan B Goldman, and Björn Hartmann
ACM Conference on Human Factors in Computing Systems (CHI), 2015
ToneWars: Connecting Language Learners and Native Speakers through Collaborative Mobile Games [pdf] [video]
Andrew Head, Yi Xu, and Jingtao Wang
International Conference on Intelligent Tutoring Systems, (ITS), 2014

🧑‍🏫  Teaching

Fall 2024: CIS 7000: Interactive Reading (preliminary syllabus)

Spring 2024: CIS 4120/5120: Introduction to Human-Computer Interaction (syllabus)

Spring 2023: CIS 3990: Introduction to Human-Computer Interaction (syllabus)

Fall 2022: CIS 7000-001: Designing Programming Environments: Live and Literate Programming (syllabus)

Spring 2022: CIS 700-003: Human-Computer Interaction.

Summer 2019: CS160, User Interface Design and Development (co-taught with Sarah Sterman, @UC Berkeley)