Teach Computing

Revision notes, activities, lesson plans, teaching ideas, and other resources for GCSE, A-Level, and IB Computer Science teachers and students.

What's New

Boolean logic worksheet pack

These three Boolean logic worksheets have exam style questions on logic sta...

Edexcel Computer Science (9-1)

by Ann Weidmann et al Amazon.com | Amazon.co.uk | Book Depository This bo...

Dijkstra's algorithm video

This video is probably the best explanation of Dijkstra's algorithm for IB ...

Input-Process-Output (IPO) Model

The Input-Process-Output model is a simple topic but some students sometime...


A comprehensive review of hexadecimal. The video covers not only how to u...

Subprograms, Local Variables & Structured Programming

Subprograms are known by several different names - methods, functions, proc...

Utility Software and Models

Some students find the difference between operating system software and ut...

Data Structures

This video explains different types of data structures - 1 dimensional ar...

Operating System (OS) - GCSE Computer Science

A detailed overview of operating systems, starting with the general tasks t...

1.3 Exchanging data

Click here for recommended OCR A-Level Computer Science textbooks.

1.3.1 Compression, Encryption and Hashing

Image, audio, and text compression

Image, audio, and text compression

This very comprehensive page from the Computer Science Field Guide has extensive but clear notes on lossless and lossy compression. The page is well written and designed for a high school audience, with easy to understand examples, video, and even interactive sections. There are also extension "Extra for Experts" sections. The page covers image compression, audio compression, and text compression.

Updated: 2015-04-16
Text and image compression


A short Computerphile video which explains basic compression techniques and how they can be applied to text files and image files. The video also addresses the differences between lossy and lossless compression.

Updated: 2015-05-27

Compression: Crash Course Computer Science

This video explains compression techniques in the context of images. It is recommended that students have an understanding of how image data is stored (e.g. bit depths) before watching this video. The video is very comprehensive and so it may take a couple of viewings to fully understand the details of the examples being presented, but it is worth it.

Updated: 2018-02-17

Lossy and Lossless (RLE) Compression

These videos from Computer Science Tutor make great revision sources. This particular videos covers the theory behind the two types of compression - lossless and lossy.

Updated: 2018-02-17
Encryption techniques

Encryption (National Codes Centre)

The National Codes Centre at Bletchley Park (who know a thing or two about ciphers) have comprehensive lesson plans, teacher's notes, and student activities for various types of encryption, from simple substitution ciphers (Caesar ciphers) through the infamous Enigma and Lorenz ciphers to modern day methods.

Updated: 2015-04-16


Very detailed but clear explanations of the various types of encryption systems, from simple substitution ciphers (Caesar ciphers) to modern public key encryption systems. The page also explains the types of attacks that can be performed against ciphers, such as known plaintext attacks and frequency analysis attacks. A variety of interactive applets held improve understanding.

Updated: 2015-04-19
Public key encryption

Public Key Encryption lesson plan

This is a kinesthetic lesson designed to help students understand how public key encryption systems work, as well as the types of security challenges such systems address. The plan includes a list of required materials and a video of the lesson being taught (this is a great help in understanding how things are supposed to work). The lesson plan is quite complicated and so is probably better suited to older students, but the analogy (padlocks) is a great way of explaining what can be a fairly confusing concept.

Updated: 2015-04-19
Public key encryption and digital signing

Public key encryption and digital signing

A short video from Computerphile which explains the weaknesses of symmetric key encryption systems and how asymmetric key (public key) encryption solves them. The video explains how public and private keys can be used for secure communication, and how the private key can be used to authenticate the sender (digital signing).

Updated: 2015-04-19
Encryption systems

Braingle: Codes, Ciphers, Encryption and Cryptography

Braingle contains extensive notes on many different types of cipher systems from Caesar ciphers to four-square ciphers. There are dozens of examples and some interactives to help students understand the different ways plaintext can be encrypted. This could be a good site to support a lesson starter activity or extension activities for more advanced students who are interested in encryption systems.

Updated: 2015-04-25
Hashing algorithms

Hashing Algorithms and Security

A good overview of hashing algorithms and where they are used. The video also examines the basic requirements of hash algorithms, including the avalanche effect and hash collisions, and why they are important for security.

Updated: 2015-06-03

1.3.2 Databases

Databases revision


A good overview of database theory, which is sufficient to cover the syllabus for most GCSE courses, and is a good introduction to the topic for A Level and IB courses. The differences between structured and unstructured data are covered, along with database basics (fields, records, tables). The second half of the video explains relationships in more detail, including 1-to-1 and 1-to-many relationships.

Updated: 2018-02-17

1.3.3 Networks

How DNS works

How the DNS works

An animation showing how DNS works when you type the URL of a website into your web browser. This video goes into more detail than some of the others here, showing how a computer locates nameservers before finding the IP address of a domain name. Useful for older students.

Updated: 2015-06-03
DNS Explained

DNS Explained

This video goes into a LOT of detail about DNS and the different types of nameservers: the root nameservers, the TLD nameservers, and authoriative name servers. This is probably more detail than most students will need, but it can help understand the bigger picture, so is included here.

Updated: 2015-06-03

1.3.4 Web Technologies