Primary Computing Curriculum

This is a scheme of work for teaching the computing curriculum in primary schools using the Python programming language. There are two sets of six-week units per year group.

The curriculum is designed so that the units build upon each other, reusing the same skills and knowledge.

year 1

a - using Beebots

b - using Blockly in Reeborg

1.1a

LO: To know that a Beebot will follow instructions.

1.2a

LO: To organise commands into a set of instructions.

1.3a

LO: To write instructions to complete a task.

1.4a

LO: To write instructions to complete a task.

1.5a

LO: To debug simple programs.

1.6a

LO: To solve multi-step problems.

1.1b

LO: To know that a robot will follow instructions step by step.

1.2b

LO: To complete a task using commands.

1.3b

LO: To draw a flow chart to represent a set of instructions.

1.4b

LO: To write a program that follows a flow chart.

1.5b

LO: To debug simple programs.

1.6b

LO: To write a program to achieve a goal.

year 2

a - moving from Blockly to typing instructions

b - making and solving mazes

2.1a

LO: To complete a task using commands.

2.2a

LO: To begin to type instructions into a computer.

2.3a

LO: To draw a flow chart to represent completing a task

2.4a

LO: To complete tasks using comments (1)

2.5a

LO: To complete tasks using comments (2)

2.6a

LO: To debug simple programs.

2.1b

LO: To program a robot to complete a task (1).

2.2b

LO: To program a robot to complete a task (2).

2.3b

LO: To create a virtual world (1).

2.4b

LO: To create a virtual world (2).

2.5b

LO: To write a program that navigates a world.

2.6b

LO: To debug simple programs

year 3

a - writing functions in Reeborg

b - performing mathematical calculations and writing functions in IDLE

3.1a

LO: To write my own function.

3.2a

LO: To write and edit functions.

3.3a

LO: To call functions in a program.

3.4a

LO: To call functions from another function (nested functions) (1)

3.5a

LO: To call functions from another function (nested functions) (2)

3.6a

LO: To debug simple programs.

3.1b

LO: To use mathematical operations on the computer.

3.2b

LO: To write functions that perform mathematical operations.

3.3b

LO: To use variables to stand for numbers.

3.4b

LO: To write functions that perform operations with variables.

3.5b

LO: To write programs with more than one function.

3.6b

LO: To debug simple programs

year 4

a - variables in functions using IDLE

b - user input in functions using IDLE

4.1a

LO: To know what a variable is.

4.2a

LO: To know how to use and change a variable.

4.3a

LO: To use a variable(s) in a function.

4.4a

LO: To use a variable(s) in a function.

4.5a

LO: To use a variable(s) in a function.

4.6a

LO: To debug simple programs.

4.1b

LO: To be able to use the input() function.

4.2b

LO: To be able to cast variables.

4.3b

LO: Two be able to cast variables with user input.

4.4b

LO: To write interactive programs using input(), functions and casting (1)

4.5b

LO: To write interactive programs using input(), functions and casting (2)

4.6b

LO: To debug simple programs

year 5

a - conditional statements using Reeborg

b - user input with conditional statements using IDLE + problem solving in Reeborg

5.1a

LO: To know what a loop is.

5.2a

LO: To know how conditional statements react to events. (1)

5.3a

LO: To know how conditional statements react to events. (2)

5.4a

LO: To solve problems using conditional statements. (1)

5.5a

LO: To solve problems using conditional statements. (2)

5.6a

LO: To debug simple programs.

5.1b

LO: To use conditional statements with user input.

5.2b

LO: To use conditional statements with user input (2).

5.3b

LO: To use conditional statements to solve problems.

5.4b

LO: To use conditional statements to solve problems (2).

5.5b

LO: To use conditional statements to solve problems (3).

5.6b

LO: To debug simple programs.

year 6

a - Bringing it all together

b - Programming challenges in IDLE

6.1a

LO: To use and update variables in a program.

6.2a

LO: To use and update variables in a program. (2)

6.3a

LO: To use a for loop

6.4a

LO: To use the modulus operator (%).

6.5a

LO: Bringing it all together.

6.6a

LO: Working with decimals/Using import.

6.1b

LO: Working with random numbers/Using import.

6.2b

LO: Programming Challenge 1.

6.3b

LO: Programming Challenge 1 - Examples.

6.4b

LO: Programming Challenge 2.

6.5b

LO: Programming Challenge 3.

6.6b

LO: FizzBuzz/To debug simple programs.