Scratch Logo, courtesy of MIT Media LabLiteracy from Scratch

Materials by Teachers in English - Primary

Planets (Nyssa Edlin)

Why I created a branching story

PlanetsHaving never worked with Scratch 1.4 nor indeed anything to do with computing, producing an interactive teaching tool seemed quite daunting. I decided to make an interactive presentation based on the great fire of London where pupils would type in responses covering the sequencing of events and the materials (and their flammable nature) from which the houses were made. It took hours of work to create a very short introduction where pupils typed in their responses.

After completing a 6 week placement in school I soon realised that what I had planned to cover was a whole terms worth of work and far too big a project. Moreover, pupils in year 1 are not secure in their typing skills, thus a drag and drop approach would be much more effective. Inspired by all the work the children in my class did on the topic of space and the solar system I decided to do a branching game which teachers could use during input or plenary to gain or consolidate knowledge covering the following areas:

  1. The names of the planets and their correct order.
  2. The types of planets: rock or gas.

Algorithms

An algorithm is simply a set of instructions. Applied to Scratch it is the assembling of the appropriate commands in the correct order to achieve your objective (small objective at a time!) Scratch is accessible to children and adults without computing experience alike because it groups this coding together for us in manageable, drag and drop blocks. It separates those instructions into the sub headings of motion, look, sound, pen, control, sensing, operating and variables. You don’t necessarily have to understand what they mean to get to know how to use them. I have done this through copying coding from similar examples and trial and error.

Generalisation (Re-using coding elsewhere)

Is what it implies, applying a general rule elsewhere.

Abstraction (ldea of hiding complexity and looking at a problem at the appropriate level of detail)

Abstraction is to hide the complexity of the problems that your intended project creates and to look at the bigger picture. Just as you would identify the key words in an exam question, when tackling a Scratch project you should formulate what your main intentions are and identify the key problems. In my case the biggest challenge was to solve (debug) the issue of how to code the game and it’s scoring. The introduction to both games, and the branching screen from which those introductions could be accessed, where secondary issues.

My original intention was to be able to use it on the interactive whiteboard where a child could drag and drop the sprite where it needed to be. A colleague had used coding like this where the system would know if the planet had been dropped in the right place by matching it to a given colour. It very quickly transpired that this did not work in full screen mode so I was forced to use a different method. To resolve this issue I copied coding that required the need to point the mouse to a given destination and press and hold down a given key on the keyboard. I could then use the colour recognition coding to score the game.

Abstraction at this initial stage was to create coding that would work, I used rudimentary backgrounds and shapes for sprites until the coding was developed and built everything else up from there. Below you will find a list of some of the problems I encountered and how I eventually resolved them. Debugging can take from 1 minute to days of exasperating trial and error, and the solution always seems obvious once you’ve found it!

Debug (Solving ‘how to’ issues)

Decomposition

Acting on advice I focused first on the game rather than the introduction, instructions and presentation. I solved problems in this order:

  1. Drag planet sprites into position and recognise to be correct by the colour on which it is placed
  2. Recognise when an answer is correct
  3. Keep score
  4. Move the planets that are incorrect
  5. Add the celebration sprite with timed speech
  6. Add an introductory scene with new stage and sprite with its own instructions
  7. Create a branching Menu stage with its own sprite and instructions
  8. Change all the prompts so that the menu stage is the first one that appears
  9. Make the branching option of choosing out of two games
  10. Change the prompts so that the menu flows into introduction of the planet ordering game
  11. Ensure the game flows from the introduction
  12. Tidy up all sprites and backgrounds so that they are aesthetically pleasing
  13. Create second branches introductory screen with correct timings
  14. Create second game
  15. Instruct the celebration sprite for the second game-realised I had programmed it for it to celebrate if any 1 of the 8 planets were correctly placed!
  16. Link it to its introductory screen
  17. Create instructional sprites
  18. Tidy up timings and aesthetics
  19. Add ‘play again’ sprites and broadcast planets to move back to original position
  20. Debug 2nd celebration sprite for ‘sort game’ (did not achieve at time of writing)

Evaluation

Scratch is infuriating, addictive and rewarding all at once and I strongly feel that it is a viable way to introduce children to computer programming. Its colour coding is attractive to visual learners and teachers can take a cross curricular approach to a Scratch project. Algorithms in the context of computing for example could be taught as an extension of instructional writing already in the literacy national curriculum. Also within literacy a child could write and script their Scratch story, in drama children could record voice over’s, in music instrumental loops can be recorded, in modern foreign languages scripts could be translated and recorded, not to mention maths.

The coding produced in this project is not what we could expect of KS1 children at this early stage in the dawn of computing in schools, however it is something that could certainly be aimed for and indeed exceeded by KS2 children. I have found that co-ordinating so many back grounds and sprites, all with corresponding instructions takes a high level of concentration and thinking skills, a skill that needs to be nurtured in our children in today’s throwaway culture.

By teaching computing, its concepts and vocabulary from an early age we will be creating young adults able to access the fast developing technological world with confidence. The concepts themselves, when explained simply will not be too difficult to grasp for a child. As for the vocabulary, today’s 6 years olds know what a split-digraph is, why couldn’t they learn the words abstraction, generalisation, decomposition and debug. Just as in maths children learn the vocabulary through continued modelling, why not in computing?

I came to this project as a complete beginner and by taking coding from other examples, trial and error and sharing information with colleagues I have produced an interactive resource of which I am proud. If I can do it, other teachers can and by working collaboratively with children without pretence of superior knowledge we can certainly take this forward. As mentioned above Scratch is addictive, and time consuming so Scratch after school clubs would be the perfect forum for progress and development.

Please note that within the constraints of course time I was unable to debug this file completely, and it is offered with some errors in logic which still need to be solved.

Notes from the Course Tutor

These files are for use in the classroom. They can, of course, be adapted by teachers, with further resources, such as Sprites or Backgrounds, added by pupils.

I have included all the work of my teaching group here. There are many wonderful teaching ideas, and if we did not solve every coding problem effectively (none of us is an expert in Computing, including me!), the creativity of these young teachers more than makes up for it.

The teaching programme covered 30 hours of work at the computer, so if you start with one session of 60 minutes per week, you will become as proficient as they have been well before the end of your teaching year!

The key to success is to work with a partner, share ideas, and problem-solve together.

Top