Sunday, February 8, 2015

What is an algorithm?

Trying to teach your children what an algorithm is, but not sure how? Well there's plenty of support out there that will help you become more confident when teaching your class to understand what it means - and how to write them.

The BBC describe algorithms as a list of rules to follow in order to solve a problem. They have kindly created a page called Code Needs Algorithms, which is part of their What is an Algorithm? Bitesize pages. You are reminded about the times that you have already used algorithms, such as map directions and instructions for how to make things. There is a handy video that you can play to your class before starting work. With the pages on digital literacy, it's a nice gentle way to get you started on the computing curriculum.

When the light bulb pings and you realise that you have used algorithms many times before, without naming them, you realise that there are many ways you can extend learning through other curriculum subjects. Barefoot Computing have put together a lovely little KS1 activity called Crazy Character Algorithms that, even if you don't use it yourself, will surely spark some ideas of your own.

Stuart Hadfield, a member of CAS, has put together a page of ideas for introducing algorithms to children in reception class. If you look back at my previous posts you will find some great resources that enable children to write and use algorithms.

Writing algorithms in key stage 1 and 2 with Scratch

Scratch has been around for a while now and in my opinion is a great tool for early computing, not just because it is free, but because  it allows children to use their creativity and create a wide range of projects independently. It can be used as early as year 1 and many infant teachers have used it successfully. I have used it with my more able children in KS1 and infant digital leaders.  For KS2 children it satisfies the very first bullet points of the new curriculum:

  • design, write and debug programs that accomplish specific goals, including controlling or simulating physical systems; solve problems by decomposing them into smaller parts
  • use sequence, selection, and repetition in programs; work with variables and various forms of input and output 
  •  use logical reasoning to explain how some simple algorithms work and to detect and correct errors in algorithms and programs

Having Scratch on an ipad is a bonus too, as it is a great introduction to the more in-depth projects that can be achieved on a PC. The basic app is free, but you can buy Scratch games too, which provides video tutorials for creating your own games.

There are many scratch experts out there and I have never felt the need to create my own resources because of this. Before I found them, I used the cards and projects from the Scratch site to show children the basics and what could be achieved, then I let them explore. When they learned new skills they taught one another, consolidating their own learning in the process. Simples! Don't be afraid to let them take the lead. If they own their learning, they are much more likely to extend it. I know the basics and am able to help to a certain point if weaker children got stuck, but if I didn't know an answer I modelled great problem solving skills, trial and error and perseverance. Still great teaching in my opinion! Children have loved creating simple games, from the very basic car track to angry birds games. Thanks to Phil Bagge (@Baggiepr) who has created a sequence of Scratch programs that can be used for year 2 up. Simon Haughton has also created Scratch resources and has a website  devoted to all things ICT/computing.

Part 2 coming soon!

No comments:

Post a Comment

Please be patient, your comment will be posted once moderated.