To Read or to Rotate? Comparing the Effects of Technical Reading Training and Spatial Skills Training on Novice Programming Ability
Thu 26 Aug 2021 23:10 - 23:20 - Analytics & Software Evolution—Program Comprehension Chair(s): Venera Arnaoudova, Bonita Sharif
Understanding how to best support and train novice programmers is a critical component of producing better and more diverse software engineers. In this paper, we present the results of a controlled 11-week longitudinal study with 57 CS1 students comparing two skill-based interventions
to improve programming performance.
The first intervention involves spatial training, an
established baseline known to be helpful in engineering
The second intervention is a novel CS-focused technical reading training.
In our reading training, we teach strategies for summarizing scientific papers and understanding scientific charts and figures; most of the covered readings were CS1-accessible portions of computer science research papers. For the spatial training, we use a standardized training curriculum previously found to improve programming skills by focusing on spatial ability (i.e., the ability to mentally manipulate objects). We first replicate findings that both reading ability and spatial ability correlate with programming success.
Significantly, however, we find that those in our reading training exhibit larger programming ability gains than those in the standard spatial training ($p = 0.02$, $f^2=0.10$).
We also find that reading trained participants perform particularly well on programming problems that require tracing through code ($p = 0.03$, $f^2=0.10$).
Our results suggest that technical reading training could be beneficial for novice programmers.
Finally, we discuss the implications of our results for future CS1 interventions, the possibility for non-programming based training to positively impact developers, and future directions for software engineering education research.