6 tips from 6 years of that frustrating Scratch!

I was speaking to a former colleague of mine recently and we reminisced about her first experience of teaching programming using Scratch, which she found extremely frustrating. She’s far more confident now than when I introduced her to it some six years ago, but it’s worth remembering the programming environment is still new to a large number of teachers. I’ve therefore outlined a few areas below that often occur when using Scratch and can lead the newcomer to become disheartened (with solutions on how to fix them of course)!

The sprite moved and when I run my program, it doesn’t go back to the starting position

Within Scratch, sprites (characters on the screen) will always begin moving from their position when your program ended, rather than where they were when your program started. To ensure your sprite always starts from the same position, you can use the “go to x y” block, within “Motion”, immediately after your “when green flag clicked” block, which specifies a set of co-ordinates for the sprite’s starting position.

Screen Shot 2016-02-09 at 09.46.10Co-ordinate (0,0) is the centre of the screen. If you wish to use other co-ordinates, the current position of your mouse pointer can be seen in the bottom right corner of the stage.

The sprite has vanished off the side of the screen

If you’ve moved your sprite a large distance and it has gone off the side of the screen, it can be difficult to click and drag it back on to the stage. To rectify this, firstly press the red stop button at the top of the stage to ensure your sprite has stopped moving.

Screen Shot 2016-02-09 at 09.48.58You can then use the “go to x y” block, as outlined above, to place the sprite back in the centre of the screen – co-ordinate (0,0). Rather than dragging the “go to x y” block across into the script area, you can just double-click on the block if you only want to run the instruction once.

The sprite has disappeared

Scratch has a “hide” block, within “Looks”, which makes a sprite vanish from the screen. A sprite will not automatically appear again once a program has finished, so you need to use a “show” block at the start of your program to ensure your sprite is visible again.

Screen Shot 2016-02-09 at 09.53.54The “Motion” blocks are not available

Within Scratch, you can give instructions to both sprites and the stage (the background image), with the item you’re giving instructions to determined by what’s selected in the bottom left of the screen.Screen Shot 2016-02-09 at 09.58.47Unfortunately, you are unable to move the stage, thus when it’s clicked on, as shown in the screenshot above, no “Motion” blocks are available. To rectify this, simply click on the sprite you wish to give instructions to.

360 degree turn isn’t working

The “turn degrees” blocks in Scratch are great for altering the position of a sprite, with the turn taking place instantaneously. However, this means a 360 degree turn command, when run on its own, doesn’t appear to do anything. Therefore, to rotate a sprite all the way round and make the effect visible to the user, we have to use repetition, as shown below:

Screen Shot 2016-02-10 at 09.52.12When the green flag is clicked, the sprite will turn right 36 degrees and wait 0.1 seconds, ten times, which should achieve the desired effect.

Blocks and sprites cannot be dragged / moved

Occasionally, the offline version of Scratch 2 will crash, which means blocks and sprites cannot be dragged / moved around the screen. Fortunately, when this happens, pupils’ work can still be saved via the “Save” option in the “File” menu. Once the work has been saved, close and reload Scratch 2, then “Open” the file from the saved location.

Screen Shot 2016-02-09 at 10.03.33Anything else?

What other tips would you give someone to overcome Scratch’s quirks? Let me know via Twitter @computingchamps I’ll write another blog post shortly on how to teach effectively using the programming environment.