# Let's Ask Students About Their Programs, Automatically

arXiv: https://arxiv.org/abs/2103.11138 · HTML: https://mlsanity.com/paper/2103.11138/

## Key facts

- Cited by 3 papers in the map (data through 14 Oct 2026).
- First posted on arXiv 20 Mar 2021.

## Built on by (most cited first, 3 of 3)

- [Automatic Generation of Programming Exercises and Code Explanations using Large Language Models](https://mlsanity.com/paper/2206.11861/) (2022)
- [Exploring the Potential of Large Language Models in Generating Code-Tracing Questions for Introductory Programming Courses](https://mlsanity.com/paper/2310.15317/) (2023)
- [Owlgorithm: Supporting Self-Regulated Learning in Competitive Programming through LLM-Driven Reflection](https://mlsanity.com/paper/2511.09969/) (2025)

## Abstract (arXiv)

Students sometimes produce code that works but that its author does not comprehend. For example, a student may apply a poorly-understood code template, stumble upon a working solution through trial and error, or plagiarize. Similarly, passing an automated functional assessment does not guarantee that the student understands their code. One way to tackle these issues is to probe students' comprehension by asking them questions about their own programs. We propose an approach to automatically generate questions about student-written program code. We moreover propose a use case for such questions in the context of automatic assessment systems: after a student's program passes unit tests, the system poses questions to the student about the code. We suggest that these questions can enhance assessment systems, deepen student learning by acting as self-explanation prompts, and provide a window into students' program comprehension. This discussion paper sets an agenda for future technical development and empirical research on the topic.
