# Computing in Primary Schools: teacher survival kit SECOND LEVEL

This series of resources is designed to lay the foundations of learners developing an understanding of what computers are and how they work. This level introduces the concepts of:

• computers are machines designed to do jobs
• computers have instructions to tell them how to do those jobs

The learning will be about identifying the different jobs computers do in their lives and the wider world. It is important to link between the physical computer (parts) and the instructions (apps/software) that controls them.

Educator notes

Computer systems have a common model, the von Neuman architecture, which almost every machine is designed with:
inputs – memory/processor/storage – outputs

The processor runs the software, executing one instruction at a time. The instructions (for every app running) is stored in memory until the processor is ready for the next line. So too, are any inputs until processed. Anything that needs to be kept after the computer is turned off is ‘saved’ in storage, such as a hard disk or ‘the cloud‘.

Computers can be connected to each other to share data and resources. The internet is the biggest and most common computer network in the world. Information is sent between computers using cables under the ground and under the sea. Although we often think of mobile devices being ‘wireless’ they use radio waves to send information a short distance to a router (WiFi) or transmitter (3G, 4G or 5G).

The world wide web or ‘web’ is the most common user-friendly software used to navigate the internet (the hardware). This is often done using web browsers, such as Edge, Chrome or Safari.

Computers use a voltage (on or off) to activate or not activate a series of switches. This is how a processor processes the code. IS is represented by a (high) voltage and the computer processes this using the number 1. IS NOT is represented by no or low voltage and the computer understands this to be the number 0. This is how every computer works.

The binary number system can only represent the number 0 or 1 in each place value. The first four place values being 8, 4, 2, 1 as opposed to our denary system which can represent 0-9 in each place, with the first four places being 1000, 100, 10, 1.

Modern computers use millions, if not billions, of microscopic switches, to make millions of decisions (selections) per second. This gives the illusion that computers can do lots of things at one time, such as run the operating system, web browser, play music, and display on the screen.

The main bit for learners is that computers are simple machines that have complicated processes. In order to make them easier to use Grace Hopper created the first ‘high level code‘ that looked like English. This is what we generally mean by code. Block-based code is an even higher level of code making it even easier to understand.

How the computer ‘thinks’

In between the inputs and outputs there are other components that make up the computer. Three of these components are the processor, storage and memory (sometimes called RAM (Random Access Memory)).

Learners should read and make notes to remember this information:

Computers store things (even when turned off) in storage, usually a disk (local disk, such as a Hard Disk (HDD) or DVD) or on the cloud (remote disk, such as OneDrive).

The computer loads the instructions it needs into the memory until the processor needs to use them.

The processor gets the instructions (one line at a time!) from memory and works out what it needs to do – this might be check inputs, display data on outputs, or make a decision (selection)

Processor:  Inputs and outputs – BBC Bitesize

They can then investigate Alan Turing and his role in the development of computing.

Alan Turing was a computer scientist and mathematician who was very important in the development of this structure and process. He also played an important part in WW2.

How computers store data

Computers were originally mechanical devices (see back to Tommy Flowers and Colossus!) and used switches to make the decisions (selection) but these were too big. Modern computers use tiny switches called transistors and can have billions in each computer (even a phone!)

Using literal switches meant a decision (selection) had to be made using Boolean logic (IS (True) or IS NOT (False)) – the switch is either ‘open’ or ‘closed’. So computers were programmed using binary (number system using only 0 (False) and 1 (True), instead of 0-9)

This gets complex, so keep learners to knowing computers store everything in 0s and 1s and let them wonder or investigate how this might work.

How is all our digital data stored? – BBC Bitesize

Investigate how Grace Hopper, a computer scientist, and mathematician, invented a form of code that looked like English. This made it easier for programmers to create instructions for computers and led to the block-code we have used so far.

The internet

A new concept to introduce is that of computer networks – two or more computers being connected and able to share data and resources. The internet is the biggest and most widely used example of this.

The internet relies on physical connections using cables. Learners might consider digital devices to be wireless but they are only able to send information a short distance using radio waves to either a router (computer) or transmitter (phone).

Like most computer systems, the internet has been made easier to use with modern software, this is the world wide web or web.

Investigate the role of Tim Berners Lee in developing the web, web browser and some internet protocols (http, URL)

Checking learning

Learners should be able to describe the von Neuman model of a computer:
input, process, memory, storage and output

Learners should be able to use block-based code to create a short set of instructions in the correct sequence and using a selection and creating a variable:

Learners should be able to predict what a set of instructions in block-based code might do and fix it:

# Computing in Primary Schools: teacher survival kit FIRST LEVEL

This series of resources is designed to lay the foundations of learners developing an understanding of what computers are and how they work. This level introduces the concepts of:

• computers are machines designed to do jobs
• computers have instructions to tell them how to do those jobs

The learning will be about identifying the different jobs computers do in their lives and the wider world. It is important to link between the physical computer (parts) and the instructions (apps/software) that controls them.

For the teacher

For the teacher:
Computer hardware can be classified as input or output:

• Users use inputs to control the computer and give it information, such as movement (mouse), button press (keyboard) or sensors (temperature, sound, current)
• Computers use outputs to provide information to the user, such as audio (speaker), photo or video (screen) or movement (phone or controller vibration)

Code is instructions used to control the computer. Outwith the computer these might be called algorithms. The computer always follows the code in the order it is written (sequence) and code can be repeated using ‘loops’ (repetition).

Block-based code is used at this stage to allow learners to see the instructions, make predictions about what code will do on the screen.

Code uses logic statements to make decisions (selection) between one thing or another. This is Boolean logic:

• the computer is turned on or is NOT turned on
• the cat is on the mat or the cat is NOT on the mat
Identifying inputs and outputs

Start with learners identifying and then classifying computer hardware as inputs (used by user) and outputs (used by computer)

They can then use this knowledge to analyse devices they use and categorise the hardware and software in them

Make a model of a computer or device and include input and output devices

Ruby – make computer model

Finish off this learning by investigating the work of Tommy Flowers who created one of the first digital computers in the world – Colossus 1|2

Coding: the computer’s instrcutions

Computers follow instructions in order (sequence) and one step at a time.

Programmers (who write code) need to think about the problem they are fixing and work out what they need the computer to do (one step at a time) – try making these algorithms before coding.

We use algorithms to think out problems and solutions in sequence

Start with these sequence levels, at level 7 it introduces the loop (repetition) block to repeat an action – why might this be useful? Repetition is useful to keep the computer doing a job as long as needed – it might play one song after another or keep showing the time, speed or temperature while you are using it

Programming with Angry Birds | Express Course (code.org)

Coding: how computers make decisions

Most instructions need the computer to make decisions, often based on how they are used (inputs) this is called selection.

Selection uses Boolean logic (a statement that IS or IS NOT true) to decide what to do. In code the instructions used are:
IF true THEN do x, or ELSE do y.

It takes lots of these simple statements to make the computer do even ‘simple (to us) things’ and this is where coding ‘gets hard’ so this is going to try and stay simple

micro:bits add a level of complexity (connectivity for example) but offers concrete experiences for learners.

Code.org has ready-made games but is only code on the screen, which may be harder to abstract for learners.

Code.org

Looking Ahead with Minecraft #10 (code.org) (no selection)

Looking Ahead with Minecraft #11 (code.org) (intro selection)

If/Else with Bee #1 (code.org) (IF block) work through

micro:bit

Beating heart | micro:bit (microbit.org) (loop forever)

Sunlight sensor | micro:bit (microbit.org) (selection/conditional loop IF/ELSE)

Rock, paper, scissors | micro:bit (microbit.org)  (selection/conditional loop IF/ELSE)

Finish off this learning by investigating Ada Lovelace, who is credited with writing the first ever computer programme (software).

Checking learning

Learners should understand that computers are used in the world all around them and can classify inputs and outputs:

Learners should be able to use block-based code to create a short set of instructions in the correct sequence and using a repeat block (loop):

Learners should be able to predict what a short set of instructions in block-based code might do:

# Computing in Primary Schools: teacher survival kit EARLY LEVEL

This series of resources is designed to lay the foundations of learners developing an understanding of what computers are and how they work. This level introduces the concepts of:

• computers are machines designed to do jobs
• computers have instructions to tell them how to do those jobs

The learning will be about identifying the different jobs computers do in their lives and the wider world. It is important to link between the physical computer (parts) and the instructions (apps/software) that controls them.

For the teacher

For the teacher:
Computers are machines that are designed to do specific jobs. Some computers, such as tablets, mobile phones and PCs, are general purpose and can do many things. Others are dedicated and only do one job, such as washing machines, air traffic control or a wristwatch.

Every device is made of components called hardware which make up the physical computer system. Every computer then needs instructions to control the hardware, this is called software but more recently the term ‘app’ is used (short for application, another name for software).

Apps, or software, is written in a special language called code which helps the user to give the computer instructions in English-like language, which would otherwise have to be written using complex maths.

Identifying computers and what they do

These links explain what computers are:

These activities provide a concrete learning experience for learners

Computers have instructions to tell them what to do
Checking learning

Learners should understand that computers are used in the world all around them and can classify things which have computers in them, are computers or are not computers:

They should also be able to differentiate and sort computer technology as being a computer or an app: