# Timna Garnett▸ U2: Algorithms & Programming

I’ve spent a bit of time using Sphero’s Lightning Lab app to control my SPRK robot, but I’m now working backwards in complexity by exploring ScratchJr (so I can support early childhood pre-service teachers in using it for the first time). As a precursor to using ScratchJr, the following activity will be considered to explain the key programming statements used in ScratchJr. Note this is not as explicit as it could be, but connects to the process of decomposition (pre-task using LuidChart) and abstraction (using multiple pages in Scratch are required and therefore the code will be similar if not identical).

Background to problem:
Scratch (the cat) is looking for The Very Hungry Caterpillar. There are houses, trees and people in the way that he must navigate (move left, right, up, down, hop etc). But each step of the way, he also finds a piece of food (an apple, a peach and a mushroom), leading Scratch to find his friend, the Very Hungry Caterpillar who is now a beautiful butterfly. Using this (modified) story of the The Very Hungry Caterpillar by Eric Carle, build the story in ScratchJr. But first:
What is the problem? Describe
What are the steps that Scratch will need to take? Your task is to create a flow chart using start/end (oval), arrows, processes (rectangle) and decisions (diamond) in LucidChart.

While dividing the problem into components consider:
What are the ‘pages’ you need? (1 for each piece of food?)
What characters will you need?
What background objects would you need?
What commands are needed? Remember you will need to move Scratch with navigational commands. You can only use the following commands.

Advance: Consider how you can use the repeat function to order and repeat commands.