Skip to main content
  1. Blog
  2. Article

Canonical
on 22 April 2010

CHI paper: What would other programmers do: suggesting solutions to error messages


Abstract
Interpreting compiler errors and exception messages is challenging for novice programmers. Presenting examples of how other programmers have corrected similar errors may help novices understand and correct such errors. This paper introduces HelpMeOut, a social recommender system that aids the debugging of error messages by suggesting solutions that peers have applied in the past. HelpMeOut comprises IDE instrumentation to collect examples of code changes that fix errors; a central database that stores fix reports from many users; and a suggestion interface that, given an error, queries the database for a list of relevant fixes and presents these to the programmer. We report on implementations of this architecture for two programming languages. An evaluation with novice programmers found that the technique can suggest useful fixes for 47% of errors after 39 person-hours of programming in an instrumented environment.

Authors
Björn Hartmann University of California, Berkeley, Berkeley, CA, USA
Daniel MacDougall Stanford University, Stanford, CA, USA
Joel Brandt Stanford University, Stanford, CA, USA
Scott R. Klemmer Stanford University, Stanford, CA, USA

Download pdf
Help me out.

Related posts


Kola Ojoodide
26 June 2026

Challenges designers face in open source (and how to fix them)

Design open source

Open source powers up to 90% of modern software, yet many projects lack usability. Canonical’s Design team surveyed 115 cross-functional professionals to uncover the 4 core challenges UI/UX designers face when contributing, and how maintainers can solve them. ...


Nina Rojc
16 June 2026

Template: Streamlining open source design contributions

Design Ubuntu tech blog

As designers working at Canonical, we’re always thinking about open source. We believe that encouraging more designers to contribute to open source  benefits everyone, from the project maintainers to the end users themselves.   In the 2025 edition of FOSSBackstage conference, we presented our research findings on  why designers don’t get ...


Miguel Divo
22 May 2026

Decoding design: How design and engineering thrive together in open source

Design Ubuntu tech blog

Open source thrives on engineering-driven processes. Fast feedback loops, terminal tools, Git workflows: they’re the lifeblood of how we build software in the open. But for software to truly excel, we need to create user experiences that empower people to use them. I wanted to bring this conversation into the spotlight as part of Canonica ...