Teachers in England are required to ensure that learners from the age of five are taught about algorithms and program design. Yet, there is evidence that despite teachers reporting that design is important, they are not converting this into classroom practice. This paper describes a survey study, in which we explored teachers’ difficulties in using design. We surveyed 207 teachers asking them free-text questions on their use of design in teaching programming and their views of pupils’ responses to using design. In the survey, we also investigated teachers’ understanding of the term algorithm, an essential concept which may be a contributing factor in their difficulties with design. We provide underpinning data on the difficulties of using design that teachers of pupils aged from 5 to 11 years old (Grades K to 5) have in teaching programming. Difficulties with design identified include pupil resistance, a lack of time, a lack of pupil and teacher expertise, conflicting pedagogical choices and a general confusion over what an algorithm is. There were statistically significant differences in selection of the term ‘algorithm’ to describe programming artefacts whether a teacher was a specialist or a generalist, what training they had received on programming or design, the age group taught and programming language used. Teachers were more likely to call a complex code snippet an ‘algorithm’ than a simpler one and more likely to select the term to describe code snippets than a design artefact. We make suggestions of how to alleviate the problems including that teachers are introduced to the idea of ambiguous representations of algorithms and a process which refines the representation from ambiguous to unambiguous as the design progresses.
- K-5 computing education