National Curriculum

Computer Science

78 lessons across 6 units

Computational Thinking8 lessons

Abstraction β€” keeping the important detail and removing the rest

Algorithms as a step-by-step set of instructions

Comparing sorting algorithms β€” bubble vs insertion sort

Comparing the efficiency of linear vs binary search

Decomposition β€” breaking a problem into smaller parts

Drawing algorithms as flowcharts

Searching: linear search

Sorting: bubble sort at a Y8 level

Data18 lessons

Binary addition

Boolean logic: AND, OR, NOT

Charts, summaries and answering questions from data

Collecting and recording data accurately

Compressing data β€” why and how (lossy vs lossless overview)

Converting between binary and denary (decimal)

Hexadecimal β€” what it is and why we use it

Modelling data with spreadsheets β€” cells, formulas, basic functions

Representing images in binary β€” pixels and colour depth

Representing sound in binary β€” sampling and frequency

Representing text in binary using ASCII

Representing whole numbers in binary

Training a simple machine-learning model on the micro:bit

Truth tables for simple Boolean expressions

Using data science to ask and answer questions

Using data science to investigate a real dataset

What is machine learning?

Why computers use binary

Digital Literacy & Safety16 lessons

Copyright, attribution and using digital content responsibly

Defending against cyber threats: firewalls, antivirus, updates, MFA

Designing a vector graphic for a purpose

Designing and animating a 3D scene

Designing clear digital messages and posters for an audience

Ethics in computing: bias, accessibility and responsible design

Malware: viruses, worms, trojans, ransomware

Protecting your online identity, privacy and digital footprint

Recognising inappropriate content, contact and conduct online

Recognising misinformation online

Social engineering: phishing, pretexting and tailgating

Strong passwords and basic account security

Using digital media to make a case for a cause

Using technology safely, respectfully and responsibly online

Vector graphics and how they differ from bitmap images

What is cybersecurity?

Networks9 lessons

A short history of communication β€” from semaphores to the internet

Client-server vs peer-to-peer networks

How data is broken into packets and sent across networks

How the internet routes data β€” IP addresses, DNS and routing

How web pages are built β€” HTML basics

Styling web pages with CSS basics

The internet vs the World Wide Web

What is a computer network?

Wired vs wireless connections; common network hardware

Programming21 lessons

Building and testing a simple mobile app

Designing a mobile app for a user need

Designing and building a small game in Scratch

Designing modular programs with functions in Python

Iterating over sequences in Python

Iteration (repeat / forever / repeat-until) in a block-based language

Iteration in Python: FOR loops

Iteration in Python: WHILE loops

Lists in Python β€” creating, indexing, modifying

Parameters, arguments and return values

Physical computing with the BBC micro:bit β€” inputs and outputs

Python output, input and variables

Reading and understanding Python error messages

Recap of Python basics from Year 8

Selection (IF / IF-ELSE) in a block-based language

Selection in Python β€” IF / ELIF / ELSE

Sensing the environment with the micro:bit

Sequence in a block-based language (Scratch / MakeCode)

Strings as sequences in Python

Variables in a block-based language

Why move from block-based to text-based programming?

Systems6 lessons

Input, process, output, storage β€” the four-stage model

Inside the CPU: fetch–decode–execute (Y8 level)

The CPU and main memory at a Year-7 level

The four layers of a computer system: hardware, OS, application, user

Types of storage: RAM, ROM, secondary storage

What is hardware? What is software?