Computer science (CS) education is more established at the high school level, with many countries in Europe such as the United Kingdom and Finland offering it as a mandatory subject.
Primary school is a whole different matter. Thankfully, momentum is picking up and schools, teachers, computer science advocacy groups, non-profits, higher education institutes, technology companies and governments are supporting efforts to integrate computer science into primary school curriculum.
Stichting NewTechKids was delighted to be commissioned by KSU onder de Bogen to teach a 10-week program focused on Computer Science (CS) and Computational Thinking (CT) to a class of five and six-year olds. KSU onder de Bogen is a bilingual (Dutch-English) primary school in Utrecht.
Five and six are ideal ages to introduce CS concepts and start planting the seeds for CT. The students are eager to learn and very open to new ways of learning and enquiry.
Our program was structured under the broad context of robots and automation. This meant that we also included technology and design as key themes. We chose specific computer science concepts so that the students could practice decomposition, problem-solving and algorithmic thinking.
The 10-week program was divided into three focus areas:
1) How to communicate with a computer
CS concepts included algorithm, program and the connection between the two, commands and sequence, iteration, automation
2) Understanding computers
CS concepts included technology systems, input and output, software and hardware
3) Technology and Design
CS concepts included requirement and resources, design cycle, rapid prototyping, testing, design flaws, iteration
During every lesson, students discussed technology and our usage of it. Dr. Marja-Ilona Koski, our teacher, also taught computer science theory related to the concepts covered during each lesson. Nine out of the 10 lessons involved ‘no tech’ activities based on paper and pen exercises and DIY and art activities. During the last lesson, we introduced Ozobot, a toy robot which follows paths that you draw on paper to explain how programming works.
Every class, students worked in teams to solve a class challenge. Afterwards, teams presented their work and discussed the learning process. We were impressed with how well the students could connect previously introduced concepts to new ones. The attention to detail that is needed in CS was there as well as the right mindset to learn: curiosity and openness to new knowledge and processes, willingness to experiment and persevere, and learning from failure.
We were surprised at how honest and open the students were in giving feedback. For example, several children complained that they struggled with teamwork or that their team’s solution would have been better if some children contributed rather than making their own solution. They also had no problem asking us for clarification or to repeat instructions.
All in all, it was one of our favourite teaching experiences to date.