An Algorithm for Generating Explainable Corrections to Student Code

  • Yana Malysheva
  • , Caitlin Kelleher

Research output: Chapter in Book/Report/Conference proceedingConference contributionpeer-review

Abstract

Students in introductory computer science courses often need individualized help when they get stuck solving programming problems. But providing such help can be time-consuming and thought-intensive, and therefore difficult to scale as Computer Science classes grow larger in size. Automatically generated fixes with explanations have the potential to integrate into a variety of mechanisms for providing help to students who are stuck on a programming problem. In this paper, we present a data-driven algorithm for generating explainable fixes to student code. We evaluate a Python implementation of the algorithm by comparing its output at different stages of the algorithm to state-of-the-art systems with similar goals. Our algorithm outperforms existing systems that can analyze and fix beginner-written Python code. Further, fixes it generates conform very well to corrections written by human experts for an existing benchmark of code correction quality.

Original languageEnglish
Title of host publicationProceedings of 22nd Koli Calling International Conference on Computing Education Research, Koli Calling 2022
PublisherAssociation for Computing Machinery
ISBN (Electronic)9781450396165
DOIs
StatePublished - Nov 17 2022
Event22nd Koli Calling International Conference on Computing Education Research, Koli Calling 2022 - Koli, Finland
Duration: Nov 17 2022Nov 20 2022

Publication series

NameACM International Conference Proceeding Series

Conference

Conference22nd Koli Calling International Conference on Computing Education Research, Koli Calling 2022
Country/TerritoryFinland
CityKoli
Period11/17/2211/20/22

Fingerprint

Dive into the research topics of 'An Algorithm for Generating Explainable Corrections to Student Code'. Together they form a unique fingerprint.

Cite this