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

Behind the scenes of my publications

Here's a rough collection of notes on how some of my publications came to fruition. This is some action-packed behind-the-scenes footage right here, folks!

COMING SOON! Stay tuned!


Understanding Conversational Programmers: A Perspective from the Software Industry. Parmit K. Chilana, Rishabh Singh, Philip J. Guo. CHI 2016


Codeopticon: Real-Time, One-To-Many Human Tutoring for Computer Programming. Philip J. Guo. UIST 2015

Codechella: Multi-User Program Visualizations for Real-Time Tutoring and Collaborative Learning. Philip J. Guo, Jeffery White, Renan Zanelatto. VL/HCC 2015

Codepourri: Creating Visual Coding Tutorials Using A Volunteer Crowd Of Learners. Mitchell Gordon and Philip J. Guo. VL/HCC 2015

Perceptions of Non-CS Majors in Intro Programming: The Rise of the Conversational Programmer. Parmit K. Chilana, Celena Alcock, Shruti Dembla, Anson Ho, Ada Hurst, Brett Armstrong, Philip J. Guo. VL/HCC 2015

Toward a Domain-Specific Visual Discussion Forum for Learning Computer Programming: An Empirical Study of a Popular MOOC Forum. Joyce Zhu, Jeremy Warner, Mitchell Gordon, Jeffery White, Renan Zanelatto, Philip J. Guo. VL/HCC 2015

How High School, College, and Online Students Differentially Engage with an Interactive Digital Textbook. Jeremy Warner, John Doorenbos, Bradley N. Miller, Philip J. Guo. EDM 2015

Wait-Learning: Leveraging Wait Time for Second Language Education. Carrie J. Cai, Philip J. Guo, James Glass, Robert C. Miller. CHI 2015

OverCode: Visualizing Variation in Student Solutions to Programming Problems at Scale. Elena L. Glassman, Jeremy Scott, Rishabh Singh, Philip J. Guo, Robert C. Miller. TOCHI 2015


Data-Driven Interaction Techniques for Improving Navigation of Educational Videos. Juho Kim, Philip J. Guo, Carrie J. Cai, Shang-Wen (Daniel) Li, Krzysztof Z. Gajos, Robert C. Miller. UIST 2014

A Direct Manipulation Language for Explaining Algorithms. Jeremy Scott, Philip J. Guo, Randall Davis. VL/HCC 2014

Crowdsourcing Step-by-Step Information Extraction to Enhance Existing How-to Videos. Juho Kim, Phu Nguyen, Sarah Weir, Philip J. Guo, Robert C. Miller, Krzysztof Z. Gajos. CHI 2014

Demographic Differences in How Students Navigate Through MOOCs. Philip J. Guo and Katharina Reinecke. Learning at Scale 2014

How Video Production Affects Student Engagement: An Empirical Study of MOOC Videos. Philip J. Guo, Juho Kim, Rob Rubin. Learning at Scale 2014

Understanding In-Video Dropouts and Interaction Peaks in Online Lecture Videos. Juho Kim, Philip J. Guo, Daniel T. Seaton, Piotr Mitros, Krzysztof Z. Gajos, Robert C. Miller. Learning at Scale 2014


Online Python Tutor: Embeddable Web-Based Program Visualization for CS Education. Philip J. Guo. SIGCSE 2013


Burrito: Wrapping Your Lab Notebook in Computational Infrastructure. Philip J. Guo and Margo Seltzer. TaPP 2012


Proactive Wrangling: Mixed-Initiative End-User Programming of Data Transformation Scripts. Philip J. Guo, Sean Kandel, Joseph M. Hellerstein, Jeffrey Heer. UIST 2011

Using Automatic Persistent Memoization to Facilitate Data Analysis Scripting. Philip J. Guo and Dawson Engler. ISSTA 2011

Sloppy Python: Using Dynamic Analysis to Automatically Add Error Tolerance to Ad-Hoc Data Processing Scripts. Philip J. Guo. WODA 2011

CDE: Run Any Linux Application On-Demand Without Installation. Philip J. Guo. LISA 2011

CDE: Using System Call Interposition to Automatically Create Portable Software Packages. Philip J. Guo and Dawson Engler. USENIX 2011

2010–2012: The MSR Internship Trilogy

Characterizing and Predicting Which Bugs Get Reopened. Thomas Zimmermann, Nachiappan Nagappan, Philip J. Guo, Brendan Murphy. ICSE SEIP 2012

"Not My Bug!" and Other Reasons for Software Bug Report Reassignments. Philip J. Guo, Thomas Zimmermann, Nachiappan Nagappan, Brendan Murphy. CSCW 2011

Characterizing and Predicting Which Bugs Get Fixed: An Empirical Study of Microsoft Windows. Philip J. Guo, Thomas Zimmermann, Nachiappan Nagappan, Brendan Murphy. ICSE 2010


HAMPI: A Solver for String Constraints. Adam Kiezun, Vijay Ganesh, Philip J. Guo, Pieter Hooimeijer, Michael D. Ernst. ISSTA 2009

Linux Kernel Developer Responses to Static Analysis Bug Reports. Philip J. Guo and Dawson Engler. USENIX 2009

Automatic Creation of SQL Injection and Cross-site Scripting Attacks. Adam Kiezun, Philip J. Guo, Karthick Jayaraman, Michael D. Ernst. ICSE 2009

Two Studies of Opportunistic Programming: Interleaving Web Foraging, Learning, and Writing Code. Joel Brandt, Philip J. Guo, Joel Lewenstein, Mira Dontcheva, Scott R. Klemmer. CHI 2009

2007–2008: The Dry Spell


Dynamic Inference of Abstract Types. Philip J. Guo, Jeff H. Perkins, Stephen McCamant, Michael D. Ernst. ISSTA 2006

Automatic Inference and Enforcement of Data Structure Consistency Specifications. Brian Demsky, Michael D. Ernst, Philip J. Guo, Stephen McCamant, Jeff H. Perkins, Martin Rinard. ISSTA 2006