Identifying Different Student Clusters in Functional Programming Assignments: From Quick Learners to Struggling Students
Chuqin Geng, Wenwen Xu, Yingjie Xu, Brigitte Pientka, Xujie Si

TL;DR
This paper analyzes student submission data in a functional programming course to identify four distinct student clusters, providing insights for tailored instructional strategies and student self-assessment.
Contribution
It introduces a clustering approach to categorize students based on activity and errors, offering a nuanced understanding beyond grades.
Findings
Four student clusters identified: Quick-learning, Hardworking, Satisficing, Struggling.
Work habits and error patterns vary significantly across clusters.
Insights enable targeted teaching and self-improvement strategies.
Abstract
Instructors and students alike are often focused on the grade in programming assignments as a key measure of how well a student is mastering the material and whether a student is struggling. This can be, however, misleading. Especially when students have access to auto-graders, their grades may be heavily skewed. In this paper, we analyze student assignment submission data collected from a functional programming course taught at McGill university incorporating a wide range of features. In addition to the grade, we consider activity time data, time spent, and the number of static errors. This allows us to identify four clusters of students: "Quick-learning", "Hardworking", "Satisficing", and "Struggling" through cluster algorithms. We then analyze how work habits, working duration, the range of errors, and the ability to fix errors impact different clusters of students. This structured…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
