Guided Debugging with Natural Language Processing: Building an Adaptive and Context-Aware Intelligent Tutoring System for Novice Programmers
Date
Authors
Journal Title
Journal ISSN
Volume Title
Publisher
Abstract
Novice programmers often struggle to debug and understand their code, especially in the absence of instructors or teaching assistants. Many students turn to generative AI tools like ChatGPT for help, but these systems are not by default designed for pedagogy purposes. These conventional AI tools tend to give away answers too easily, which weakens the learning process and encourages overreliance. This project aims to address that problem by developing an intelligent tutoring system that focuses on guided learning rather than solution-giving. The tutor is integrated into an online IDE and interacts with student through context-aware, conversational feedback based on their code, error messages, and questions.
Built on smaller, locally deployable language models, the system emphasizes accessibility, privacy, and pedagogical control. It mimics the behavior of human TAs by asking guiding questions, giving structured hints, and prompting reflection to help students think through problems independently. The tutor also leverages an error classification system to provide targeted, course-aligned feedback tied to common error patterns. Together, these components create a learning-centered environment that promotes productive struggle, reduces frustration, and fosters problem-solving skills without compromising the integrity of the learning process.