@brusilovsky

Always Provide Context: The Effects of Code Context on Programming Error Message Enhancement

, , and . Proceedings of the ACM Conference on Global Computing Education Vol 1, page 147–153. ACM, (December 2023)
DOI: 10.1145/3576882.3617909

Abstract

Programming error messages (PEMs) are notoriously difficult for novice programmers to utilise. Many efforts have been made to enhance PEMs such that they are reworded to explain problems in terms that novices can understand. However, the effectiveness of these efforts to enhance PEMs has been weak or inconclusive. This work seeks to determine the role that code context has on programming error message enhancement. Erroneous Java code written by novices was sampled from the Blackbox Mini dataset. The erroneous code was presented to expert raters with four different PEM variants: javac (control), Decaf -- an error message enhancing IDE -- and two variants generated using GPT-4: one that enhanced just the javac error message alone, and one that incorporates the code context in the prompt. We find that providing code context to LLMs increases the likelihood of correct explanations for underlying errors, produces more specific fixes for erroneous programs, and produces fixes that are more likely to be correct. In large language models, the community now has a resource that is capable of taking code context into account, to the benefit of novice programmers.

Description

Always Provide Context: The Effects of Code Context on Programming Error Message Enhancement | Proceedings of the ACM Conference on Global Computing Education Vol 1

Links and resources

Tags

community

  • @brusilovsky
  • @dblp
@brusilovsky's tags highlighted