“…Teaching programming subjects to first year students is a difficult task in higher education [4], with many challenges encountered by lecturers [3], as large cohorts may exhibit a wide spectrum of prior programming experience, background, and interests [5]. On one end of the spectrum, some students have minimum prior programming skills, while on the other end, some of them already have substantial hands-on programming experience [6].…”