Abstract
This article argues for the existence of persistent conceptual “bugs” in how novices program and understand programs. These bugs are not specific to a given programming language, but appear to be language-independent. Furthermore, such bugs occur for novices from primary school to college age. Three different classes of bugs—parallelism, intentionality, and egocentrism—are identified, and exemplified through student errors. It is suggested that these classes of conceptual bugs are rooted in a “superbug,” the default strategy that there is a hidden mind somewhere in the programming language that has intelligent interpretive powers.

This publication has 7 references indexed in Scilit: