2 minute read
VELA CONCEPTS
STORY BY Thom Kunkeler
Advertisement
Programming takes place on a computer, but research has shown the potential of using non-programming activities to teach concepts to novice learners. The study, conducted by Shuchi Grover and her colleagues at three urban schools in the US, included 16 nonprogramming activities over a 20-day programme. The research team found that the learning gains from students who followed the intervention were significantly higher than those of students who followed the regular computer science curriculum.
PROGRAMMING LANGUAGES CAN BE HARD TO GRASP
From the moment learners engage with any programming language or tool, they will encounter variables, expressions, loops, and abstraction — the VELA concepts — in one way or another.
Some learners struggle with these concepts, as they assume that variables can have multiple values at the same
FURTHER READING
Grover, S., Jackiw, N., & Lundh, P. (2019). Concepts before coding: non-programming interactives to advance learning of introductory programming concepts in middle school. Computer Science Education, 29(3) 1-30. helloworld.cc/nonprog
time, whereas others might not be able to distinguish between what goes inside a loop and what precedes a loop. Although visual block-based programming environments such as Scratch, Alice, and Snap! have helped with navigating through different concepts, students still find it difficult to make sense of programming languages.
For this study, the research team designed non-programming activities to help students engage with and understand the foundation of programming concepts. Activities such as Story Variables and Cats and Ladders were designed to encourage students to come up with a definition of a variable collaboratively, before applying this definition in practice. In the first activity, students discussed multiple examples in which variables were present, such as: “Last week, I bought a pen for $1.50; now it costs $3”, to identify what the variable is and how it changes over time.
In the second activity, students put their definition into practice by determining the length of a ladder required to reach distraught cats in Cats and Ladders. Students produced a range of possible values that were needed to rescue the cats, and engaged in abstraction by synthesising new variables based on existing ones. Try the activities yourself!
TRY IT FOR YOURSELF!
During the 20-day research intervention, students participated in 16 activities. The research team gathered data based on a pre- and post-assessment of students’ introductory programming skills, analysis of their Scratch projects, and interviews with teachers and students. There were higher learning gains for students following the intervention, but the findings were not linked to gender or prior academic preparation, and all grades participating in the study showed similar learning gains. For teachers, these findings should be taken as an incentive to experiment with using non-programming activities to help with teaching difficult concepts. Give some of these non-programming activities a go!
Examples of activities Description Story Variables Introducing the idea of changing quantities in the real world and giving them meaningful names Cats and Ladders Naming variables and creating expressions in a nonprogramming context
Three Switches
Turning light switches on and off using Booleans, Boolean operators, and abstractions
Alarm Clock
Modelling real-world alarm clock situations using variables, arithmetic, logical expressions, and abstractions