Analysis of school students' misconceptions about basic programming concepts
Žana Žanko, Monika Mladenović, Divna Krpan
Abstract
Abstract Background and Context Most studies about programming misconceptions are conducted at the undergraduate and graduate levels. Since the age level for starting learning programming is getting lower, there is a need for determining programming misconceptions for younger learners. Objective Our goal is to determine programming misconceptions and their time‐resistance for programming novices at the K‐12 level using Python as a text‐based programming language. Method We conducted research in the school settings during informatics classes among 98 fifth‐grade students in three elementary schools. We analysed the data collected from two Python tests students took immediately after programming lectures and 5 months later. Results and Conclusions We detected seven misconceptions: (a) Assigning the expression instead of the calculated value, (b) When reassigning the variable value, assigning the sum value to the variable, (c) Using the symbolic name of the variable instead of its value, (d) Using the first (or previously) assigned variable value, (e) Datatype misconception, (f) Sequencing misconception, and (g) Swapping variable values. By shifting focus on variables and spending more time introducing variables and sequencing during teaching, the appearance of known misconceptions is minimized compared to previous findings.