California State University, Monterey Bay
AI Auto Completion: Your Debugging Frenemy
Research
My independent research began with a focus on GitHub Copilot's role in web development and its impact on developers. As AI tools like GitHub Copilot become more common, I was interested in the challenges they introduce such as suggesting outdated code, generating snippets that do not align with a developer’s intent, and fostering over-reliance that can hinder critical thinking. My research journey started during my early days as a front-end developer, when trusting Copilot to generate a template led to a syntax error that took hours to debug. That frustrating experience inspired me to investigate the types of errors Copilot commonly produces and to explore strategies that help programmers recognize and address them effectively.​​
​
Over time, my research evolved. Rather than focusing only on professional developers, I shifted toward understanding how intermediate CS students debug AI-generated code. This transition allowed me to study not just the errors Copilot produces, but also the human strategies used to detect syntax, runtime, and logic issues. My goal became the development of “AI-aware debugging practices” that prepare students to work effectively alongside AI code assistants.
To support this work, I built a VS Code extension called AntiCopilot, which simulates GitHub Copilot but deliberately injects buggy code snippets for experimentation. AntiCopilot detects beginner Java patterns and replaces them with faulty suggestions, implements ghost-style real-time cursor tracking, handles multi-line insertions and deletions, and manages variable naming and editor state across edge cases. In building the tool, I learned the importance of activation events, reactive editor behavior, and object-oriented problem solving.​
​
Doing this research on a daily basis has changed the way I think about both AI and programming. As a student who regularly uses Copilot in my own projects and as a researcher who designs lab prompts that deliberately trick students into accepting faulty AI-generated code, I’ve started to see both sides of the experience. I now approach my own coding with more awareness, analyzing suggestions more critically and thinking more like the students I study. This perspective shift has made me a stronger debugger: the more I code alongside Copilot, the more I recognize the subtle patterns it follows, anticipate its common mistakes, and learn how to prompt and guide AI more effectively to avoid them.
​​​
​
How My Coursework Informs My Research
-
Coursework in data science and advanced machine learning has shaped how I analyze AI-assisted programming tools.
-
Concepts like model bias, feature importance, decision boundaries, overfitting, and attention mechanisms help me interpret Copilot’s errors as predictable outcomes of model training rather than random mistakes.
-
Learning about vectors, matrices, PCA, gradient descent, backpropagation, and regularization deepened my understanding of how models internally represent patterns, why they sometimes lose nuance, and how optimization challenges can lead to repetitive or unstable suggestions.
Applying Theory to Practice
-
This technical perspective guides how I design controlled debugging experiments in my AntiCopilot extension and analyze AI-generated errors more systematically.
-
It also helps me interpret student debugging behaviors through both cognitive and computational lenses.
Impact & Future Work
​
-
My research provides a practical tool and a framework for helping programmers, especially students, balance AI assistance with strong manual debugging skills.
-
Ongoing work includes collecting more data on AI-generated errors, surveying developers about learning strategies, and running workshops that promote critical engagement with AI-assisted coding.

Presenting my research at the CSUMB Summer Research Symposium 2025

Giving an oral research presentation
Otterly Curious Podcast
Invited by Natasha Oehlman (UROC Writing & Professional Communication Associate) for the 4th episode of this podcast to discuss my research and share the undergraduate research process with future CSUMB students, peers, and faculty.
Research Infographic

