Programming is a challenging subject to teach [13, 14] and is one of the essential skills for all Data Science students. Novice programmers often struggle to comprehend computer programming [1, 2], as they must learn a variety of skills simultaneously [3], including programming constructs (such as lists, loops, conditional statements, etc.) [4, 5] and the debugging process [6]. Many students dislike programming courses, believing that these subjects are difficult to learn. They frequently encounter issues in writing and designing clear programs. One significant factor contributing to this problem is the inadequate support provided to students [7, 8]. Additionally, there is a statistical correlation between learning styles and performance in computing-related courses [10, 11]. Artificial Intelligent (AI) interventions are needed to address this issue [15, 16]. Since 2022, Generative AI tools, such as ChatGPT, have become increasingly common across various sectors, including education at universities. However, their rapid growth and adoption raise integrity concerns, such as cheating and plagiarism [9]. Throughout Kehinde Aruleba's studies, participants expressed concerns about students becoming overly reliant on these tools, which could lead to a decline in critical thinking and problem-solving skills. To enhance the teaching and learning of programming, it is essential to develop and adopt a ChatGPT-powered generative AI tool in programming classrooms. For example, Harvard University has been using ChatGPT-powered generative AI to teach beginner computer science courses since Fall 2023 [12]. The objective of this project is to develop a platform that makes use of Generative AI to comprehend students' coding attempts, detect any issues, and subsequently suggest improvements. The platform is designed with the capability to interpret, execute, and evaluate the correctness of the coding attempt. If the attempt is not entirely accurate, the platform identifies the specific code snippet that requires enhancement and provides suggestions for improvement based on the attempted code. References: [1] Ade-Ibijola, A. (2019). Syntactic generation of practice novice programs in python. In ICT Education: 47th Annual Conference of the Southern African Computer Lecturers' Association, SACLA 2018, Gordon's Bay, South Africa, June 18–20, 2018, Revised Selected Papers 47 (pp. 158-172). Springer International Publishing. [2] Altadmri, A., & Brown, N. C. (2015, February). 37 million compilations: Investigating novice programming mistakes in large-scale student data. In Proceedings of the 46th ACM technical symposium on computer science education (pp. 522-527). [3]Wang, T., Su, X., Ma, P., Wang, Y., & Wang, K. (2011). Ability-training-oriented automated assessment in introductory programming course. Computers & Education, 56(1), 220-226. [4] Baker, A., Zhang, J., & Caldwell, E. R. (2012, July). Reinforcing array and loop concepts through a game-like module. In 2012 17th International Conference on Computer Games (CGAMES) (pp. 175-179). IEEE. [5] Zhang, J., Atay, M., Caldwell, E. R., & Jones, E. J. (2013, July). Visualizing loops using a game-like instructional module. In 2013 IEEE 13th International Conference on Advanced Learning Technologies (pp. 448-450). IEEE. [6] Alqadi, B. S., & Maletic, J. I. (2017, March). An empirical study of debugging patterns among novices programmers. In Proceedings of the 2017 ACM SIGCSE technical symposium on computer science education (pp. 15-20). [7] Eom, S. B., Wen, H. J., & Ashill, N. (2006). The determinants of students' perceived learning outcomes and satisfaction in university online education: An empirical investigation. Decision Sciences Journal of Innovative Education, 4(2), 215-235. [8] Richardson, C., & Mishra, P. (2018). Learning environments that support student creativity: Developing the SCALE. Thinking skills and creativity, 27, 45-54. [9] Deriba, F. G., Sanusi, I. T., & Sunday, A. O. (2023, November). Enhancing computer programming education using chatgpt-a mini review. In Proceedings of the 23rd Koli Calling International Conference on Computing Education Research (pp. 1-2). [10] Chamillard, A. T., & Karolick, D. (1999, March). Using learning style data in an introductory computer science course. In The proceedings of the thirtieth SIGCSE technical symposium on Computer science education (pp. 291-295). [11] Chamillard, A. T., & Sward, R. E. (2005). Learning styles across the curriculum. ACM SIGCSE Bulletin, 37(3), 241-245 [12] Harvard is using ChatGPT to teach computer science. In: https://www.zdnet.com/article/harvard-is-using-chatgpt-to-teach-computer-science/ (2023.) [13] Malhotra, V. M., & Anand, A. (2019, January). Teaching a University-Wide Programming Laboratory: Managing a C Programming Laboratory for a Large Class with Diverse Interests. In Proceedings of the Twenty-First Australasian Computing Education Conference (pp. 1-10). [14] Cárdenas-Cobo, J., Puris, A., Novoa-Hernández, P., Galindo, J. A., & Benavides, D. (2019). Recommender systems and scratch: An integrated approach for enhancing computer programming learning. IEEE Transactions on Learning Technologies, 13(2), 387-403.
Search - Existing TDGs
Code
102731
Project Title
Leveraging Generative AI for Enhanced Programming Guidance: A Student-Centric Approach
Faculty/School/Department/Unit
Division of Artificial Intelligence
Principal Project Supervisiors
Ken FONG
Co-Supervisor
Billy CHIU
Abstract
Project Duration
2025-2026
Not available
Not available