Education Technology
DebugTracker tool captures student debugging workflows for classroom assessment
A new Visual Studio Code extension records the debugging process—not just final code—to help instructors assess how students identify and fix bugs.
Instructors typically grade debugging assignments based on whether the final code works. But this approach misses the entire problem-solving journey: how students tested hypotheses, read error messages, stepped through code with debuggers, and iteratively refined their solutions.
The Problem with Code-Only Assessment#
Traditional grading obscures the debugging process itself. Students might arrive at working code through trial-and-error, or they might apply systematic investigation—yet both paths produce identical test results. Educators lose visibility into reasoning, misconceptions, and learning patterns that could inform teaching and feedback.
How DebugTracker Works#
DebugTracker is a lightweight Visual Studio Code extension that records the full debugging workflow. The tool captures command-line test invocations, editor actions, debugger interactions, source code snapshots, and optional screenshots. Events are stored as append-only JSONL records, preserving a complete chronological trace.
The extension operates in two modes:
- Evaluation Mode: uncoached, assessment-grade logging
- Training Mode: coached sessions with optional AI-assisted feedback
Exported reports take the form of interactive timelines and Markdown documents suited for instructor review.
Language Coverage and Validation#
The design prioritizes language independence by leveraging VS Code's built-in extension APIs rather than language-specific tools. This flexibility enabled the researchers to validate DebugTracker across Python, TypeScript, and Java. The prototype underwent 16 automated checks and an 11-case manual trial spanning packaged VSIX installation on three operating systems.
The tool collects metadata beyond code: test runs, editor state, debugger sessions, student-created checkpoints, human annotations, and optional visual evidence. Debugger capture does depend on the relevant VS Code language extension being present, but core process tracking remains language-agnostic.
Why It Matters#
By making debugging behavior visible and auditable, DebugTracker enables richer assessment of problem-solving skills, clearer identification of where students struggle, and better-targeted feedback. Instructors can distinguish between lucky guesses and reasoned debugging, helping them understand and support learning more effectively.
