Philip Guo (Phil Guo, Philip J. Guo, Philip Jia Guo, pgbovine)

Human-Centered Programming Tools: Spring 2017 Class Readings

Links to 20 HCI research papers discussed during my graduate class on human-centered programming tools

In spring quarter 2017, I taught a graduate HCI course at UC San Diego called Design Seminar on Human-Centered Programming (COGS231). This was the first time the class was offered, and I had a lot of fun with it. Three times per week, eight grad students and I met for an hour to discuss a research paper in depth.

I led the first few discussions to set expectations, but the majority of sessions were led by students. Thus, we picked papers to read for each session based on each student's personal interests and prior research/programming experiences. This format was really effective because each student was personally invested in their chosen paper's topic and could bring their own experiences into its interpretation. It also means that each time this class is offered in the future, we will end up reading a different set of papers.

To provide some constraints, I had students choose papers from (approximately) the past five years of CHI and UIST, two of the top HCI conferences where research on human-centered programming tools gets published. Of course, other great conferences and journals exist for these topics, but since this was an HCI class, I wanted to focus just on CHI and UIST to provide some high-level cohesion. Also, restricting to the past five years or so meant that we would be reading contemporary papers and not classic seminal works. But without those constraints, there would simply be too many possible papers for students to pick from.

Here are the 20 papers that we ended up covering in this offering of the course. Note that several diverged from the core themes of human-centered programming tools since some students were interested in more distantly related topics. This list is obviously not comprehensive, but it's a good starting point for surveying the latest research in this area.

Overview and Methodology Papers

Programmers Are Users Too: Human-Centered Methods for Improving Programming Tools. Brad A. Myers, Andrew J. Ko, Thomas D. LaToza, YoungSeok Yoon. 2016

Seven Research Contributions in HCI. Jacob O. Wobbrock. 2012

Code and Contribution in Interactive Systems Research. James Fogarty. 2017

(These were the only non-CHI/UIST papers that we covered.)

Web Programming

Spreadsheet-Driven Web Applications. Edward Benson, Amy X. Zhang, David R. Karger. UIST 2014

Mavo: Creating Interactive Data-Driven Web Applications by Authoring HTML. Lea Verou, Amy X. Zhang, David R. Karger. UIST 2016

Explaining Visual Changes in Web Interfaces. Brian Burg, Andrew J. Ko, Michael D. Ernst. UIST 2015

Unravel: Rapid Web Application Reverse Engineering via Interaction Recording, Source Tracing, and Library Detection. Joshua Hibschman, Haoqi Zhang. UIST 2015

Crowd Programming

TurKit: Human Computation Algorithms on Mechanical Turk. Greg Little, Lydia B. Chilton, Max Goldman, Robert C. Miller. UIST 2010

Microtask Programming: Building Software with a Crowd. Thomas D. LaToza, W. Ben Towne, Christian M. Adriano, André van der Hoek. UIST 2014

Meta: Enabling Programming Languages to Learn from the Crowd. Ethan Fast, Michael S. Bernstein. UIST 2016

Codeon: On-Demand Software Development Assistance. Yan Chen, Sang Won Lee,Yin Xie, YiWei Yang, Walter S. Lasecki, Steve Oney. CHI 2017

Data Science

Variolite: Supporting Exploratory Programming by Data Scientists. Mary Beth Kery, Amber Horvath, Brad Myers. CHI 2017

Statsplorer: Guiding Novices in Statistical Analysis. Chat Wacharamanotham, Krishna Subramanian, Sarah Theres Volkel, Jan Borchers. CHI 2015

Gestalt: Integrated Support for Implementation and Analysis in Machine Learning. Kayur Patel, Naomi Bancroft, Steven M. Drucker, James Fogarty, Andrew J. Ko, James A. Landay. UIST 2010

Deconstructing and Restyling D3 Visualizations. Jonathan Harper, Maneesh Agrawala. UIST 2014

Mastering the Art of War: How Patterns of Gameplay Influence Skill in Halo. Jeff Huang, Thomas Zimmermann, Nachiappan Nagappan, Charles Harrison, Bruce Phillips. CHI 2013

Multimedia Tutorials

MixT: Automatic Generation of Step-by-Step Mixed Media Tutorials. Pei-Yu (Peggy) Chi, Sally Ahn, Amanda Ren, Mira Dontcheva, Wilmot Li, Björn Hartmann. UIST 2012

Waken: Reverse Engineering Usage Information and Interface Structure from Software Videos. Nikola Banovic, Tovi Grossman, Justin Matejka, George Fitzmaurice. UIST 2012

Mudslide: A Spatially Anchored Census of Student Confusion for Online Lecture Videos. Elena L. Glassman, Juho Kim, Andrés Monroy-Hernández, Meredith Ringel Morris. CHI 2015

Code Understanding

Chronicler: Interactive Exploration of Source Code History. Moritz Wittenhagen, Christian Cherek, Jan Borchers. CHI 2016

Created: 2017-06-12
Last modified: 2017-06-12
Related pages tagged as research:
Related pages tagged as programming: