Computers and Education: Artificial Intelligence (Dec 2024)
Enhancing python learning with PyTutor: Efficacy of a ChatGPT-Based intelligent tutoring system in programming education
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.