what novice programmers don't know
Novice programmer knowledge contains a mixture of well-formed, in-transition and muddled conceptual structures. In this paper we describe an analysis of the in-transition and muddled items that are not fully integrated into the novices' cognitive structures. When participants were asked to perform card sorts of programming concepts into categories, 23\% of their categories were "ragbags": categories with names such as "don't know," "not sure," or "not applicable"'' that indicate that the students have little or no knowledge of the concepts placed in those categories.In this study, we find that there are distinct differences in the uses of the ragbags. In particular, we find that terms considered more abstract tend to be placed into Don't Know and Not Sure ragbags more often than concrete terms; and students categorized as low performers tend to use Not Sure far more often than high performers but Don't Know and Not Applicable less often. We also find evidence that the meaningfulness of a concept is likely to be related to the vocabulary used in the classroom, suggesting that students may assimilate abstract concepts into their conceptual structures more quickly if one uses the terms more frequently.
card sorts programming concepts abstraction cs2 cs1 course performance