Debugging Tutor

Research project to reframe how debugging is taught

Currently, debugging is rarely taught as its own discrete skill set. Students are expected to get better at debugging by virtue of having to debug a lot. We believe expertise in debugging follows a cohesive process with specific strategies that can be taught explicitly.

To investigate debugging as a systematic process, we conducted 6 Cognitive Task Analyses, where participants were asked to debug unfamiliar code. We then synthesized these results into a sequence model, and built an intelligent tutor to scaffold the steps in the sequence.

We believe that reframing debugging from a minute skill to something broader, akin to medical diagnosis or the scientific method, is can make debugging easier to learn and thus lower the frustrations of novice programmers.

Role : Researcher

Duration : 2 months

Team : Ryan Emberling, Emilio Vargas-Vite

Course : Advanced Topics in Personalized Online Learning, Prof. Vincent Aleven, Spring 2019

Read our Report