November 2018: Invited talk at PLATEAU, Interactive Extraction of Examples from Existing Code.

August 2018: Invited talk at Mozilla as part of the Emerging Technology Series. Bionic Tools for Documenting Code. Watch the talk here!

May 2018: I'm now officially a PhD candidate!

April 2018: Presented Interactive Extraction of Examples from Existing Code at CHI 2018.

Andrew Head, PhD Candidate, UC Berkeley EECS

Andrew Head is a PhD candidate at UC Berkeley Electrical Engineering and Computer Sciences. In his dissertation research, he studies how interactive systems can help programmers share their expertise. These systems help programmers create code examples, and enrich programming tutorials with context-relevant explanations of code.

Andrew is advised by Björn Hartmann and Marti Hearst. He has built and studied software development tools with software engineering research teams at Google and Microsoft Research as a research intern. He holds a Bachelor's degree in computer engineering from the University of Pittsburgh, where he studied how mobile games can support language learning with the Mobile Interfaces and Pedagogical Systems group. He has been awarded the NDSEG fellowship, and nominated for best paper awards at VL/HCC and CHI.

He also coordinates the Berkeley Institute of Design Seminar, a weekly graduate research seminar in design and human-computer interaction. If you're a researcher or practitioner doing exciting work in human-computer interaction and design in the Bay Area and want to speak to the group, please feel free to !

Refereed Conference Papers

WiFröst: Bridging the Information Gap for Debugging of Networked Embedded Systems

Will McGrath, Jeremy Warner, Mitchell Karchemsky, Andrew Head, Daniel Drew, and Björn Hartmann. UIST 2018. [pdf]

Interactive Extraction of Examples from Existing Code

Andrew Head, Elena L. Glassman, Björn Hartmann, Marti A. Hearst. CHI 2018. Honorable Mention. [demo] [pdf] [auxiliary material] [slides]

When Not to Comment: Questions and Tradeoffs with API Documentation for C++ Projects

Andrew Head, Caitlin Sadowski, Emerson Murphy-Hill, Andrea Knight. ICSE 2018. Completed as an intern at Google. [pdf]

Writing Reusable Code Feedback at Scale with Mixed-Initiative Program Synthesis

Andrew Head*, Elena Glassman*, Gustavo Soares*, Ryo Suzuki, Lucas Figueredo, Loris D'Antoni, Björn Hartmann. Learning@Scale 2017. [pdf]

* The first three authors contributed equally to this work.
Tutorons: Generating Context-Relevant, On-Demand Explanations and Demonstrations of Online Code

Andrew Head, Codanda Appachu, Marti Hearst, Björn Hartmann. VL/HCC 2015. Honorable Mention. [pdf] [website]

Lamello: Passive Acoustic Sensing for Tangible Input Components

Valkyrie Savage, Andrew Head, Björn Hartmann, Dan B. Goldman, Gautham Mysore, and Wilmot Li. CHI 2015. [pdf] [video]

ToneWars: Connecting Language Learners and Native Speakers through Collaborative Mobile Games

Andrew Head, Yi Xu, and Jingtao Wang. ITS 2014. [pdf] [website] [video]

Posters and Extended Abstracts

Can Human Development be Measured with Satellite Imagery?

Andrew Head, Nhat Tran, Mélanie Manguin, Joshua E. Blumenstock. ICTD 2017. [pdf]

Exploring the Design Space of Automatically Synthesized Hints for Introductory Programming Assignments

Ryo Suzuki, Gustavo Soares, Elena Glassman, Andrew Head, Loris D'Antoni, Björn Hartmann. CHI 2017 Late-Breaking Work. [pdf]

Social Cues Developers Use when Choosing Open Source Packages

Andrew Head. FSE 2016 Student Research Competition. [pdf]