Hardware Basics

CPU Architecture

Software Basics

Functions of the Operating System

Programming Techniques

Programming techniques from beginner to advanced. File handling, string handling, nests and functions - all designed to augment the other programming content elsewhere on the site.


Lessons in database basics from building a flat file through to creating a relational database. SQL lessons included for help with Component 3 and A Level study.

Network Basics

Crucial lessons focussing on the benefits of connecting computers together and how this combines to form the internet.

Data Transmission

Number Systems

Converting to binary and hex, binary addition and subtraction, two's complement, sign and magnitude and normalised floating point binary.

Character Sets and Logic

Various character sets including an in depth look at ASCII, UTF-8 and UTF-32 plus logic gates, truth tables and Karnaugh maps.

Legal and Ethical

Some fun, suggested activities to try for these thought-provoking topics. Aimed at students who like to think deeply and learn deeper.

Computational Thinking

Much of this unit can be taught implicitly along with programming tasks. For the bits that need explicit teaching the unit is here.

Programming Techniques

Methodologies and Testing

Testing tables are an examiners favourite so getting them right is crucial to success in Component 2. This unit combines those skills with some research of some working practices performed by software development companies.


Students need to know the basics of and be able to implement a range of algorithms for the AS course. Algorithms in this unit include bubble sort, insertion sort, linear search and binary search.

Hardware - Advanced Architecture

A look back at some of the tougher parts of the AS hardware section for revision purposes plus pipelining and how GPUs can be used to speed up specific processing tasks.

Software - Stages of Compilation

Learning how a compiler creates machine code is a crucial skill for high ability A Level students. This unit explains lexical analysis, syntax analysis, code generation, optimisation and libraries.

Software - Working Methodologies

It can be tough for sixth form students to learn professional working methods. This unit teaches Rapid Application Development, the Waterfall Cycle, Agile Programming and Extreme Programming.

Software - Programming Paradigms

Programming Techniques - Managing Data Structures

Understanding data structures is crucial to application design. This unit teaches students a range of common structures (array, linked list, stacks, queues, trees, binary trees, graphs and hash tables) including algorithms for common usage and implementation in an object oriented programming language.


An in depth look at normalisation plus looking at creating schema and CRUD operations in SQL. Learners are also introduced to a range of key database terminology used to ensure data integrity.

Networks - Advanced Web Development

The future of the web will be in your learner's hands so this unit aims to upskill them on the key concepts of search engine ranking and creating server side scripts for dynamic web applications.

Networks - Storage and Transmission

Using networks brings about some tricky algorithms for data storage and transmission. This unit demystifies compression and encryption and explains the method and benefit of hashing passwords in a networked system.

Representation of Data

Performing calculations with binary can be tricky during final year A Level work. This unit aims to demystify normalised floating point representation and its associated arithmetic functions.

Boolean Logic

Where computer science meets electronics. A look at the circuitry that forms the components of the ALU and memory as well as Boolean algebra - De Morgan's Laws, commutation, absorption, distribution, double negation and more.

Computational Thinking

More computational thinking at A Level - this time learners explore multi-threading operations and define how some processes can be completed concurrently.

Problem Solving

Thinking of tasks in terms of solving problems is crucial in computer science. In this unit learners explore which problems are computable and deconstruct a number of classic problem solving techniques.


Merge sort, quick sort, bubble sort, insertion sort, linear and binary search, Dijkstra and A* Pathfinding, Big O notation. Everything an A Level student needs to know about these standard algorithms.

Help and Guidance for the Programming Project

The Component 3 project is a major undertaking that will be the greatest undertaking of your student's lives to date. Ensuring learners can access all the marks in the mark scheme is a crucial part of managing this challenging project.