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

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 offe...

Full description

Saved in:
Bibliographic Details
Published in:Computers and education. Artificial intelligence Vol. 7; p. 100309
Main Authors: Yang, Albert C.M., Lin, Ji-Yang, Lin, Cheng-Yan, Ogata, Hiroaki
Format: Journal Article
Language:English
Published: Elsevier Ltd 01-12-2024
Elsevier
Subjects:
Online Access:Get full text
Tags: Add Tag
No Tags, Be the first to tag this record!
Description
Summary: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.
ISSN:2666-920X
2666-920X
DOI:10.1016/j.caeai.2024.100309