Focusing on the key concepts of Computational Thinking, Logic and Problem Solving in Key Stage 3, pupils can then build these into full programming skills by taking the optional GCSE or A Level courses.
Starting with block-based programming, the pupils in Year 7 and 8 quickly learn the concepts of Sequence, Selection and Iteration. These skills are then used with the BBC Microbit single board computer, allowing pupils to run code on their own hardware. As pupils move into Year 9 they are introduced to text based programming looking at both Python and HTML.
The GCSE course builds on their coding skills through solving problems using the Python or VB.NET programming languages. They produce programs with both text and graphically based user interfaces.
A-Level pupils build on these skills further and add Structured Query Language and Functional programming to their range of programming techniques. Pupils also complete an extended piece of programming as a project. Counting for 20% of their A Level mark, this allows them to explore problem solving or modelling in depth. They may also use other programming paradigms through their project work as best fits the situation for which they are coding a solution.
At all levels, pupils see how the key concepts of Abstraction and Decomposition allow complex problems to be broken down into smaller, manageable, steps. This enables them to build solutions, in a modular form, to complex problems, a skill that transcends subject boundaries and equips them for life.