K. Singh, T. Metaxas
Finding an introductory programming curriculum that engages students across varying skill levels is challenging. While many students can start beyond block-based tools like Scratch, traditional text-based programming languages like Java are too difficult and insufficiently engaging for young learners. Many coding websites, including text-based ones, try addressing these drawbacks through gamified learning with different difficulty levels. However, these develop limited logical and computational thinking, and their proprietary environments rarely resemble real programming environments. Consequently, students need substantial relearning when transitioning, as the commands and interaction paradigms of these platforms do not carry over to real programming contexts.
This paper proposes Rova, a novel command-based pseudo-language designed as an intermediate text-based starting point between Scratch and traditional languages. Rova leverages the hands-on aspect of robotics to make programming tangible and engaging for young learners. It includes Arduino-based abstraction levels for each robot command, where subsequent levels peel back a concealing layer, progressively transforming it into its Arduino equivalent. Rova was implemented with 39 students in Grade 5 and 6 classes at a Quebec elementary school, evaluating their performance in robotics lessons over 14 weeks to assess its effectiveness as an introductory programming tool.
Rova successfully engaged most students, and 80% of them achieved at least two abstraction levels during each lesson, even though Rova was designed for students to attain the fundamental learning outcomes using any abstraction level, making it suitable for single-classroom environments. By the end, students performed well on a logic-testing coding exam and developed debugging skills, with some even interpreting Arduino compile-time error messages. The results further indicated that students with prior Scratch experience didn’t outperform those without. These findings showcase Rova’s innovative design as an introductory language to replace block-based environments and lower the barrier to real programming in K-12 education. Future work could explore unraveling the abstractions for all Rova’s commands into Arduino with older students, as preliminary testing on one concept showed top performers advancing beyond Rova’s abstractions.
Keywords: Robotics Education, STEM Education, Introductory Programming, Arduino.