CodeAid: Evaluating a Classroom Deployment of an LLM-based Programming Assistant that Balances Student and Educator Needs
Majeed Kazemitabaar, Runlong Ye, Xiaoning Wang, Austin Z. Henley, Paul, Denny, Michelle Craig, Tovi Grossman

TL;DR
This paper presents CodeAid, an LLM-based programming assistant deployed in a large classroom, designed to provide helpful feedback without giving direct answers, and analyzes its use and implications for educational practice.
Contribution
Developed and deployed CodeAid, an LLM-powered tool that balances support and engagement in programming education, with insights from extensive user and educator feedback.
Findings
Four key design considerations for educational AI assistants identified
Students engaged deeply with conceptual and pseudo-code feedback
Educators emphasized transparency and user control in AI tools
Abstract
Timely, personalized feedback is essential for students learning programming. LLM-powered tools like ChatGPT offer instant support, but reveal direct answers with code, which may hinder deep conceptual engagement. We developed CodeAid, an LLM-powered programming assistant delivering helpful, technically correct responses, without revealing code solutions. CodeAid answers conceptual questions, generates pseudo-code with line-by-line explanations, and annotates student's incorrect code with fix suggestions. We deployed CodeAid in a programming class of 700 students for a 12-week semester. A thematic analysis of 8,000 usages of CodeAid was performed, further enriched by weekly surveys, and 22 student interviews. We then interviewed eight programming educators to gain further insights. Our findings reveal four design considerations for future educational AI assistants: D1) exploiting AI's…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Code & Models
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsOnline Learning and Analytics · Software Engineering Research · Teaching and Learning Programming
