Concepts before coding: non-programming interactives to advance learning of introductory programming concepts in middle school
Shuchi Grover, Nicholas Jackiw, Patrik Lundh · Computer Science Education · 2019
Background and Context: Learners struggle with conceptual understanding of introductory programming concepts such as variables, expressions, and loops.Objective: We examine whether and how designed activities for conceptual exploration support preliminary engagement with and learning of foundational and often hard-to-grasp programming concepts for students in grades 6–8.Method: Drawing on principles from dynamic mathematics, we developed a suite of non-programming digital and unplugged activities embedded in a curriculum before students engage in Scratch block-based programming. We conducted empirical research in three middle school classrooms in diverse urban US schools and examined student performance through mixed qualitative and quantitative methods.Findings: Learning gains were significant and not predicted by grade, gender or prior academic preparation. Free-choice projects of students showed statistically greater (correct) use of key concepts compared to those not in the study.Implications: Our work demonstrates the promise of novel approaches such as interactive non-programming activities for deeper understanding of programming concepts.