The Computing in the National Curriculum document produced by Computing At School divides the Computing Curriculum into three strands.
- Information Technology
- Computer Science
- Digital Literacy
In this post I am looking at Computer Science.
This strand of the curriculum links closely to the control element of the old ICT curriculum.
Pupils need to understand what algorithms are: a precise sequence of instructions. This is the basis of what they need to know in order to write computer programs. Each programming language has its own vocabulary and grammar but they all follow the same type of logic.
Pupils need to be able to write algorithms and programs. They also need to be able to be able to debug them. They need to be able to find mistakes (bugs) and fix them. When children write programs they will learn that there are often different ways of getting the right outcome. They need to be able to evaluate the programs to decide which is the most efficient. Often the best way to evaluate or debug program is to work collaboratively.
While children will make mistakes in their own programs it is often easier to find mistakes in code that has been produced by other people. Providing pupils with example programs will give them the opportunity to predict what they will do and identify any bugs. As pupils get older the programs they write will become more complicated. They will need to use sequence, selection, repetition and variables in their programs.
Sequence – the list of instructions the algorithm contains.
Selection – allows the program to make decisions e.g. if… then… else…
Repetition – allows the program to repeat steps without needing to write them multiple times.
Variables – store items of data, values that program can use
There are lots of lovely applications pupils can use to learn programming but it is often possible to learn computer science away from computers or other digital devices. Role play can help pupils develop logical reasoning.
The computer science strand also includes knowledge of networks and search. This is not covered by this post.
Some suggested apps to support the Information Technology strand of the computing curriculum are available in this pdf file: Programming Resource Grid and new ones will be added regularly. Some of the best will be featured on this blog.