Research into primary programming design — progress made and help needed
This article describes research on the teaching of programming in primary schools. The research focuses on the use of design and how the concept of algorithms fits into this.
I am undertaking this research at Queen Mary University of London with Professor Paul Curzon. Two phases of the research have already been completed: a first phase of interviews, and a second phase involving a survey. Now the research is moving into its third phase: the development of a design toolkit.
Phase 1: interviews
In the first phase of the research, we interviewed five teachers and more than fifty pupils from three schools on their use of design in programming. We also asked the participants to complete a task in which had to name and order images of ‘artefacts’ from programming projects, such as requirements, designs, code snippets, and the code being run. This component of the research built upon the idea of ‘levels of abstraction’, which has been used with older learners already.
The interviews were recorded and analysed using thematic qualitative analysis. One researcher interviewed teachers and analysed the transcriptions, and a second researcher checked the analysis.
Our main findings from the interviews were:
- Similarities between how some teachers used design in teaching programming and how they used planning in teaching writing
- Teachers used design in a range of interesting ways, e.g.:
- To know what to teach next
- To help children separate the thinking up ideas from the process of implementing them
- To help children know what they needed to do (an aide memoire)
- To help improve cohesion and completeness of work
- To help with differentiation and assessment
- As a contract between pupils when pair programming
When analysing the results of the task in which teachers named and used project artefacts, we found:
- Teachers were not sure what to call the code when it was running
- Teachers were unclear about what was the algorithm and did not always associate the term ‘algorithm’ with the design process
For example, two teachers called the design an algorithm at one point, and then called the code the algorithm at another point, saying:
“I have got an arrow based algorithm [pointing at a concept map], an algorithm with several arrow-based directional algorithms, with score and lives algorithm with variables which belong with the racing game.” (Teacher A)
“The racing game with the bubble, is the plan, the mind map. We have a copy of the code, the algorithm [pointing at the code] to make the game work” (Teacher A)
“I have a traffic light picture and there was a traffic light plan, there. I have got a planning diagram there, an algorithm, the thing with the bubbles [pointing at state diagram].” (Teacher C)
“Then I have got Scratch algorithm [pointing at code] for something involving fruit and animals, so that must be Poppy’s Surprise.” (Teacher C)
Another teacher was sure that the algorithm was not associated with the design, saying:
“Because I think the word ‘design’ goes with that one [pointing at design], but not the [word] ‘algorithm’.” (Teacher E)
Read more about this first phase of the research project in our paper published in the International Journal of Computer Science Education in Schools — available for free.
The interviews involved only a small sample of teachers, so we needed to investigate whether our findings would hold true in a bigger sample.
Phase 2: survey
The second phase of the research was a survey. We wanted to explore the potential synergies between using planning in writing and using design in programming, so we constructed the survey so that teachers answered the same questions about each. To advertise the survey, we shared it via social media and at teacher training courses. More than 200 teachers completed it.
- The ratio of men and women among survey respondents was around 50:50, and the ratio of teachers to specialist teachers was also around 50:50. This allowed us to compare the answers of the different groups.
- Many of the survey questions asked respondents for a rating between 1 and 5 (Likert scales), such as “How confident are you to teach programming?”. Therefore, we were able to use statistics to evaluate responses for statistically significant differences between groups.
- The rest of the questions allowed for free-text responses, which we again analysed using a thematic qualitative analysis.
- Data analysis (statistics and text) was again performed by one researcher and checked by a second researcher.
Some of our findings from the survey were very similar to the preceding interview phase:
- There was confusion over what an algorithm was
- Some teachers used design in interesting ways
A significant new finding concerned how frequently teachers used planning compared to design (see Fig. 1):
- 78% of teachers found planning in teaching writing essential or very useful, and 88% always or usually used it
- 82% of teachers found design in teaching programming essential or very useful, but only 44% always or usually used it
Figure 1: Use of planning compared to use of design as reported by more than 200 teachers
Our analysis of free-text responses uncovered difficulties which contributed to this lack of use of design. In the teachers’ responses related to difficulties with using design, several major themes emerged :
- Pupils’ resistance to design
- A lack of teacher and pupil expertise in design
- A lack of time
- Conflicting pedagogy choices
- Confusion over what an algorithm is
Despite more than 200 teachers taking part in the survey, the sample is not representative of primary teachers:
- Around half of the respondents were specialist teachers
- The method of advertising was likely to attract those teachers particularly interested in computing
However, the survey allowed us to find out what more experienced primary computing teachers are doing with design in their classroom and how they are starting to overcome the difficulties of using design.
Read more about this second phase of our research project in a conference paper at the Workshop in Primary and Secondary Computing Education in 2018 — behind paywall.
Our paper describing the findings of this survey, called Difficulties with Design, is in submission at a journal now.
Phase 3: creating a design toolkit
To address teachers’ difficulties of using design, the next phase of our research is to collaborate with primary computing educators who have used design in class, in order to create a design toolkit.
The design toolkit will:
- Describe the underlying concepts of design
- Provide a means to apply these concepts to programming lesson activities
- Be useful for review and improvement of lessons, as well as for CPD
If you have tried using design in primary programming lessons and would like to help shape the design toolkit, please register your interest in taking part by emailing me at [email protected]
To learn more, please see our project page for more details about the research, including links to papers.
About the authorJane Waite, Queen Mary University of London, is a teacher trainer and researcher who works on computing education projects.