Programming education traditionally has been an important part of Information Technology-related degrees but, more recently, it is also becoming essential in many STEM domains as well. Despite this, drop-out rates in programming courses in higher education institutions are considerable and cannot be ignored. At the same time, analysing learning behaviours has been reported to be an effective way to support the improvement of teaching and learning quality. This article aims to deliver an in-depth analysis of students’ learning behaviours when using course material items. We analyse an introductory programming course at a University in Dublin. The dataset is extracted from automatically logged learning data from a bespoke online learning syst...