Prior research suggests that programming is a fundamental competency for all students. Due to its importance, programming education is integrated across many disciplines beyond computer science (e.g., humanities, social sciences, and engineering). Also, many existing courses report increasing enrollment trends. However, these changes have also introduced instructional challenges, particularly in supporting students with diverse backgrounds at scale. In this context, many studies have explored the use of AI code assistants as tools that may support instruction and learning. In these studies, while examining the use of AI code assistants, researchers have reported variation in educational contexts, implementation approaches, and outcomes. With this paper, we argue that synthesized information of such variations could help in understanding the effective use of such tools in programming education. To create a synthesized resource on AI code assistants, in this paper, we present a narrative review that synthesizes existing research. We reviewed 29 peer-reviewed studies identified through searches across three databases. The studies were analyzed to identify reported patterns of use, student and instructor perceptions, limitations in existing research, and suggested directions for future research. Across the reviewed studies, AI code assistants were commonly discussed for tasks such as code generation, debugging support, and real-time feedback, with ChatGPT reported most often (16 mentions), followed by GitHub Copilot (6 mentions). Disciplinary information was available in 24 studies, which helped identify the academic settings where AI code assistants were reported. Students generally describe these tools as useful, while also expressing concerns related to over-reliance and accuracy. Student perceptions were reported in 10 studies, while instructor perceptions were reported in 4 studies. Common reported limitations include small sample sizes, short intervention durations, reliance on self-reported data, and limited examination of long-term learning outcomes. Overall, this review consolidates current evidence on how AI code assistants are used and perceived in programming education and identifies areas where more research is needed.
Farooq et al. (Wed,) studied this question.
Synapse has enriched 5 closely related papers on similar clinical questions. Consider them for comparative context: