The main purpose of this blog is to help primary school teachers and student teachers develop sufficient skills and confidence to be able to use Scratch to help the children they teach learn how to write computer programs.
For more information about Scratch see - Finding your way around Scratch
The Tutorials
There is no particular order to the tutorials; they are complementary rather than sequential. They are all technically similar, though some concepts involved in the tutorials are more challenging than others. However, with programming, the acquisition of a concept is largely dependent on the motivation and needs of the learner - the more you want to learn something, the more likely you are to understand.Tutorial | Techniques |
Space Invader A shoot-em-up game based loosely on Space Invaders. The player controls a laser cannon at the base of the screen to shoot at an alien which appears randomly. |
|
Pong Based on the early Pong game, with only one player (ie more like a game of squash). |
|
Shark Attack The player controls a shark moving around a fish tank to eat fish |
|
River trip Guide a boat along a river, avoiding obstacles to increase your score against a time limit
Note: the concepts in this tutorial are more advanced than in the other tutorials
|
|
Raindrops Catch raindrops before they hit the pavement to score points. Miss raindrops and lose points.
This is a long tutorial but it does introduce a lot of concepts and programming techniques. As with Road Race, the game is playable at several points during the tutorial
|
|
Road Race The player controls a racing car steering it around the track trying to avoid running off the road and the computer controlled car. |
|
Treasure Hunt Adventure Guide Thomas around his house looking for clues as to where his brother has hidden his birthday present Note: This is the longest and most challenging tutorial, but it does introduce a lot of programming concepts and techniques |
|
text | text |
Computing National Curriculum
From September 2014, children in most primary schools in England will be required to learn how to program computers. There is no specific requirement for the children to use a particular programming environment, but by the end of their primary schooling, the National Curriculum for computing requires them to:- 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.
The rationale for the tutorials
The tutorials on this blog follow a simple principle; that programming should be purposeful. The outcome of each tutorial is a game which can be played in its own right and which can be further developed into something more challenging and complex. It is possible to follow each tutorial by following the step-by-step screen-shots only, but the text is also there to help you to acquire the terminology needed to support the children's learning and also to reinforce some key concepts of programming.Once you have acquired a set of basic skills and knowledge of techniques, it should be possible to plan and produce your own programs. With some adaptation, the tutorials could form the basis of computing lessons with KS2 children.
Each tutorial starts from 'ground zero', assuming you have little or no background knowledge of programming in Scratch. Whilst there are some basic skills inherent in every tutorial, each one includes additional unique techniques to solve a range of programming problems.
As time progresses, more tutorials will be added to extend the range of solutions to programming problems. Although some solutions are more elegant than others, with programming, an outcome can be achieved through a range of different solutions. Children (and you) should accept that there is no right or wrong way of writing a program. Either it works or it doesn't. If it works then the problem has been solved!