One Step at a Time: Combining LLMs and Static Analysis to Generate Next-Step Hints for Programming Tasks
Not on the map. Why?
Abstract (arXiv)
Students often struggle with solving programming problems when learning to code, especially when they have to do it online, with one of the most common disadvantages of working online being the lack of personalized help. This help can be provided as next-step hint generation, i.e., showing a student what specific small step they need to do next to get to the correct solution. There are many ways to generate such hints, with large language models (LLMs) being among the most actively studied right now. While LLMs constitute a promising technology for providing personalized help, combining them with other techniques, such as static analysis, can significantly improve the output quality. In this work, we utilize this idea and propose a novel system to provide both textual and code hints for programming tasks. The pipeline of the proposed approach uses a chain-of-thought prompting technique and consists of three distinct steps: (1) generating subgoals - a list of actions to proceed with the task from the current student's solution, (2) generating the code to achieve the next subgoal, and (3) generating the text to describe this needed action. During the second step, we apply static analysis to the generated code to control its size and quality. The tool is implemented as a modification to the open-source JetBrains Academy plugin, supporting students in their in-IDE courses. To evaluate our approach, we propose a list of criteria for all steps in our pipeline and conduct two rounds of expert validation. Finally, we evaluate the next-step hints in a classroom with 14 students from two universities. Our results show that both forms of the hints - textual and code - were helpful for the students, and the proposed system helped them to proceed with the coding tasks.
Key facts. Cited by 3 papers in the map (data through 14 Oct 2026). Builds on 13 of its 34 references that are in the map. First posted on arXiv 11 Oct 2024.
Builds on
13 of 34 references.
References · 13
- 2021Do Prompt-Based Models Really Understand the Meaning of their Prompts?cited by 326
- 2024Beyond Functional Correctness: Exploring Hallucinations in LLM-Generated Codecited by 107
- 2023The Robots are Here: Navigating the Generative AI Revolution in Computing Educationcited by 86
- 2024CodeAid: Evaluating a Classroom Deployment of an LLM-based Programming Assistant that Balances Student and Educator Needscited by 84
- 2023CodeHelp: Using Large Language Models with Guardrails for Scalable Support in Programming Classescited by 72
- 2024Bugs in Large Language Models Generated Code: An Empirical Studycited by 60
- 2023No Need to Lift a Finger Anymore? Assessing the Quality of Code Generation by ChatGPTcited by 47
- 2023Exploring the Potential of Large Language Models to Generate Formative Programming Feedbackcited by 28
- 2023Next-Step Hint Generation for Introductory Programming Using Large Language Modelscited by 20
- 2024Exploring How Multiple Levels of GPT-Generated Programming Hints Support or Disappoint Novicescited by 10
- 2020TaskTracker-tool: a Toolkit for Tracking of Code Snapshots and Activity Data During Solution of Programming Taskscited by 3
- 2024Bridging Education and Development: IDEs as Interactive Learning Platformscited by 3
Built on by
Citing papers per year: 2025: 1; 2026: 2.
3 papers.
- 2025Understanding Student Interaction with AI-Powered Next-Step Hints: Strategies and Challengescited by 0
- 2026Enhancing Debugging Skills with AI-Powered Assistance: A Real-Time Tool for Debugging Supportcited by 0
- 2026SCRIPT: Implementing an Intelligent Tutoring System for Programming in a German University Contextcited by 0
- 2026SCRIPT: Implementing an Intelligent Tutoring System for Programming in a German University Context17 Apr 2026
- 2026Enhancing Debugging Skills with AI-Powered Assistance: A Real-Time Tool for Debugging Support5 Jan 2026
- 2025Understanding Student Interaction with AI-Powered Next-Step Hints: Strategies and Challenges9 Nov 2025
Similar, not cited
Close in wording, no citation either way
- 2024Analyzing LLM Usage in an Advanced Computing Class in India
- 2025WIP: Leveraging LLMs for Enforcing Design Principles in Student Code: Analysis of Prompting Strategies and RAG ↗
- 2025EduBot -- Can LLMs Solve Personalized Learning and Programming Assignments?
- 2025Do Code LLMs Do Static Analysis?
- 2024Hint-before-Solving Prompting: Guiding LLMs to Effectively Utilize Encoded Knowledge
- 2023Automated Assessment of Students' Code Comprehension using LLMs
- 2023Patterns of Student Help-Seeking When Using a Large Language Model-Powered Programming Assistant
- 2024Can LLMs Identify Gaps and Misconceptions in Students' Code Explanations?