Shannon Phillips

You searched for code club

Computing – Session Six

In today’s session we again were looking at computer programming for Key Stage 2 – this time looking at physical computing, which uses programmable devices for sensing and controlling the physical world.

Makey Makey 

One of the first pieces of equipment we looked at was ‘Makey Makey’ – this allows you to turn any object which will conduct electricity, into a keyboard. This can then be programmed, on websites such as Scratch, to use these conductible objects to, for example, make a noise or control a character on screen. We decided to use the Makey Makeys on a ready made program which we found on Scratch which allowed us to turn our hands and other objects into keys of a piano.

This video shows us using the Makey Makeys, and as you can see the wire which we were holding or had attached to an object corresponded to a key which lit up on the screen and had a corresponding sound. We all really enjoyed using this equipment and there were many other programmes which could be experimented with which weren’t necessarily music related – this shows how cross-curricular computer programming can be.

Maky Makey has an inventive focus and allows the children to experiment with the equipment in order to produce a piece of work or solve a problem – this means that the children are learning through making and being active (constructivism theory).

Code Club

The next thing I looked at was instructions provided by code club which are easy to follow so that you can create your own game or animation. I decided to follow the instructions of (Beta) Rock Band – the instructions were extremely simple and there were images which went with every instruction so that you could be certain that you were following them correctly. Although these simple step-by-step instructions were very useful to help you to understand how Scratch works and the different functions of the programme, I did find that there was little room for experimentation as the instructions were very precise – therefore, this kind of activity should only be used when the children are first being introduced to computer programming to allow them to get the hang of the basics before allowing them to create something for themselves. Now that I have had a go at following these instructions, I do feel much more confident in using Scratch to create a code and the range of functions it has. The interactive animation below is the Scratch which I have created using the instructions provided by Code Club (this is a more of an interactive Scratch in which you have to click on the instruments to make them play):

This  link allows you to ‘look inside’ and see the codes I used to make the instruments/music/sprites change which I created using code club instructions (level 1 so fairly simple) – the instructions are quite repetitive so gives you the opportunity to practice code making several times, although there is not much opportunity to experiment and be inventive with the software.

You can also access this resource via the Teaching Resources blog.

Lego We Do

The final piece of software we looked at was Lego We Do – this allows children to construct, for example, an animal using the instructions provided with the Lego We Do which can then be programmed to do certain functions. Similarly to the Makey Makeys, the Lego We Do allows the children to see the physical product of their computer programming which helps to give it more of a purpose and be more motivating for the children. Again, this involves quite a lot of following instructions to ensure that the Lego is actually able to be programmed and work properly. I think this would be a really effective way of teaching computer programming as many children will have already experienced building Lego and will find this enjoyable and will be excited by being able to make their creations move and make sounds.


Chapter 4: Programming in Key Stage 2. in Bird, J., Caldwell, H. and Mayne, P. (2014) Lessons in Teaching Primary Computing. Sage, London

These notes relate to the reading I have completed following session 5 (computing in KS2):

  • children have become used to manipulating media to create, for example, slideshows but are much less familiar with adding dynamic activity to these artefacts
  • From KS1 onwards, children are expected to understand and write computer programs so that they get a better understanding of how the devices and websites they come across work, therefore they also learn how to control and create new ones
    • Scratch is a great place to explore these ideas – as shown on the session 5 page
  • NC, pupils should learn to:
    • design, write and debug programs that accomplish specific goals
    • solve problems by decomposing them into smaller parts
    • use sequence, selection, and repetition in programs
    • use logical reasoning to explain how some simple algorithms work and to detect and correct errors in algorithms
  • It is important that children have direct experience of manipulating code
    • a visual programming language such as Scratch makes it easier to put together sequences of instructions because of the simple coloured blocks which are simple ‘snapped’ together
  • the basic Scratch components which teachers will need to be familiar with before they teach computer programming:
Scratch component What it does Useful to know
Sprite An individual character or object. You can draw your own, select from a library or import from the web.
Script A short program which instructs sprites to do things. Scripts can be attached to backgrounds as well as sprites.
Command Block Blocks stack together to make a program. You can move, nest, separate, delete and duplicate blocks. Click to test out a block or stack.
Stage The area where you place sprites and test programs. The stage is a grid and you can specify sprites’ coordinates on the stage.
Backdrop The stage has backdrops that can also be programmed. You can draw your own, import or select from a library.
Costume Sprites can have several poses called costumes. Changing costumes lets you animate sprites.
  •  A good way to introduce these components could be to get children to create their first Scratch by following the ‘code club’ instructions, as discussed in session six and demonstrated via my own example.
  • Scratch offers a multiple number of cross-curricular links – such as creating number machines in maths
  • children will enjoy the challenge of debugging a program and being able to see the product of their work
    • encourages problem solving

The following computing terms need to be understood when teaching computer programming to KS2, particularly when using Scratch:

Term What it means Examples
Algorithm Combining instructions into a sequence to achieve a goal.Algorithms may be decomposed into smaller parts or procedures to make them easier to understand. Write a recipe.Instruct a remote control toy to navigate a maze.Animate a sprite to draw a square.
Loop Repeating a sequence. Types of loops include ‘until’, ‘while’, or  ‘forever’ loops that run until something changes as a condition is met. An electrical circuit.A dancing sprite. 
Conditional selection Conditional statements execute code depending on what happens to other objects based on conditions such as ‘if this..then that’ or ‘if..else’. A room thermostat responding to temperature changes.If the answer is correct say ‘well done’ else say ‘try again’.Collision detection in a game: If ‘touching black’ then ‘hide’.
Pattern recognition Repeats in designs or similar qualities that are shared by a number of different items. We can implement a pattern again in a different context. Making a football move across a field is just like making a bird fly.Detecting whether an arrow hit a target is the same as detecting if a player caught a ball.
Abstraction Removing unnecessary detail so you can concentrate on the bigger picture byputting together collections of smaller parts. The London Underground map.A school timetable.Using pen blocks with repeated functions to create complex patterns using simple polygons.
Variables Things that can change while a program is running. Games make variables more concrete as they control the state of a sprite, e.g. ‘score’, ‘number of questions’, ‘speed’, ‘lives’.
Initialisation Setting variables to their starting values. Set the score to 0 at the beginning of a game.Establish a starting position for a sprite.
Event Handling One event causing another to happen. Responding to someone talking during a conversation.In Scratch broadcast ‘The game has begun’ and display sprites.Use the ‘broadcast’ and ‘when I receive’ block pair to coordinate sprites’ actions. 
Parallelism Making events happen at the same time, as opposed to sequential programming in which events execute consecutively. Act out a series of instructions highlighting things happening at the same time e.g. walking and talking.A single sprite can do multiple things at once and multiple sprites can also perform actions simultaneously.

I found this reading really helpful, especially with regards to the key terminology you need to know and be confident with as a teacher when teaching computer programming, specifically Scratch.

No Comments »