Probably the paper that most influenced my thinking was Orni Meerbaum-Salant’s paper on Habits of Programming in Scratch
(same session). They studied a bunch of students’ work in Scratch, and identified a number of common misconceptions and errors. What was fascinating was that the bugs looked (to me) a lot like the ones that Elliot Soloway found with the Rainfall Problem
, and the issues with concurrency were like the ones that Mitchel Resnick found with Multilogo and that John Pane found with HANDS. That suggests that changing the environment doesn’t change the kinds of errors students are making. And since all student programming misconceptions come from our instruction (i.e., students don’t know much about programming before we teach them programming), it means that we’ve been teaching programming in basically (from a cognitive perspective) the same way since Pascal.