Litcius/Paper detail

Enhancing python learning with PyTutor: Efficacy of a ChatGPT-Based intelligent tutoring system in programming education

Albert C. M. Yang, J.-J. Lin, Cheng-Yan Lin, Hiroaki Ogata

2024Computers and Education Artificial Intelligence39 citationsDOIOpen Access PDF

Abstract

Programming is regarded as a focal point in the current rapidly evolving educational landscape. To aid learning in this domain, we developed PyTutor, an innovative intelligent tutoring system (ITS) that is designed to assist beginners in Python programming. PyTutor utilizes the ChatGPT model to offer continuous guidance, problem-solving hints, and detailed code explanations. It features a structured hint system for each question, covering pseudocode, cloze, basic, and advanced coding solutions. In our 11-week experiment, we compared 35 students who used PyTutor with 36 students who did not. The results indicated the effectiveness of PyTutor, particularly for students with weak foundations in programming. Those with lower initial knowledge exhibited higher engagement, completion rates, and success rates in in-class and after-class programming exercises. Nevertheless, we observed a potential risk of overreliance on PyTutor among students, which may impede the development of independent problem-solving skills. Thus, we recommend the balanced usage of PyTutor. In conclusion, PyTutor is a valuable ITS in programming education that considerably improves the learning outcomes of beginners. Its tailored approach renders it a promising tool for bridging knowledge gaps and enhancing overall educational experiences in the field of programming.

Topics & Concepts

Python (programming language)Computer scienceIntelligent tutoring systemProgramming languageMultimediaHuman–computer interactionSoftware engineeringOnline Learning and AnalyticsIntelligent Tutoring Systems and Adaptive LearningEngineering Education and Technology