A Quick Guide to Scratch

At Youth Code Jam, we use a number of free software and tools to help our students learn how to code and use their imagination to be creative. One of these tools that we prefer to use is Scratch.

What is Scratch?

Scratch is a free block-based visual programming language and online community developed by MIT labs primarily for children between the ages of 8 to 16. Scratch is designed as an educational tool that helps kids produce projects such as interactive narratives, animations, games, music, and visual art. Kids learn to make these projects through visual programming, which is a language that allows users to create programs with visual expressions and symbols rather than text. Once a child is done with their project, they can share their creations with the online community.

Who Can Use Scratch?

Scratch is suitable for mixed ability classes and is also great for those who do not have any prior programming knowledge. It is designed for 8 to 16 year olds, but can be used by people of all ages. Scratch is designed in such a way so kids can learn through exploring, experimenting and tinkering. This allows kids to learn independently, freeing up parent or teacher time so they can get on with other tasks or work with another child.

Why Do We Use It?

  • It’s accessible: Scratch is free and can be used without an account. But if students want to take part in the Scratch community, they can create a free account.
  • It’s versatile: Scratch can be used online through a browser, offline with the Desktop application, or through a browser on a tablet. There’s also Scratch Jr, which is a coding app for pre-readers that can be used on a tablet device. Unfortunately, neither Scratch or Scratch Jr are compatible with a smartphone.
  • It’s engaging: Between the colors, animation-based projects, and the ability to customize almost every aspect, Scratch is a welcoming coding tool for beginners who may be hesitant to learn to code, especially if they’ve been told coding is hard.
  • It supports collaboration: Learners with online accounts can share their projects with others and work together to improve them.
  • It promotes self-learning: Students can learn from tutorials and by checking out other people’s public projects thanks to being able to look at the code.
  • It’s fun and supports creativity: Learning is a lot less of a chore when students get to have fun and bring their own creative thoughts to an assignment.

Getting Started with Scratch

**Method 1: Launch the Scratch Online Editor: ** Open scratch.mit.edu in your browser and click on create. This will open the Scratch Online Editor. You can now begin creating scratch projects.

Method 2: Download the Scratch Offline Editor: If you would like to create and save projects on Scratch without an internet connection you can download the Scratch Offline Editor also known as the Scratch App. Different versions of Scratch are available for download for both Windows and Mac.

Overview of the Command Blocks

Motion: these relate to the ways in which your sprite will move. You can add in different commands that allow you to move your sprites, change angles and positions.

Looks: commands in this section allow you to control the visuals of the sprite. You can change the costume, backdrop, size of the sprite and more.

Sound: this section will allow you to add sounds to your programme. You can add sound effects and change the volume and pitch.

Events: you can use this part to trigger different commands. For instance, an event could be ‘when the backdrop switches to Backdrop 2, change the loudness of the sound to 10’. This means, the background will change and the sound will increase on a certain command.

Control: allows you to add conditionals and loops. A conditional is something that is either true or false, this means the conditional block will only run if the condition is true. A loop allows you to repeat an animation, you can add a motion and sound to a Sprite and then add a loop to ensure this is repeated.

Sensing: allows your Sprite to interact with the surroundings. Let’s say you want to make a game where the goal is for two Sprites to never touch, you will need to write a script telling the programme this. Using the loop, can you use the ‘If’ statement to say that if Sprite1 touches Sprite2 then you must ‘Stop all’

Operators: these are used to script math equations and string handling. Basically, it takes one or more values and uses them to produce another value. When you use values to produce other values in programming, it’s called ‘performing an operation’.

Variables: these are the blocks used to hold values and strings (like your score or number of lives in a game). Variables allow for more complicated interactions. For instance, if you wanted to create a game where a cat chases a mouse that is moving randomly you would have to add in a series of variables to allow this to happen.

My Blocks: The primary purpose of these blocks is to make programming easier. They also give you functionality that isn’t built into the other Scratch blocks. For example, you could create a block that would choose at random, saying hello from a number of different languages. It lets you use one block that you’ve coded instead of a whole string of command blocks every time.

In conclusion, Scratch is a great tool for kids, and adults, to learn how to use in a creative manner. There are a number of projects and tutorials to choose from and once you get the hang of it, you’ll be the one creating projects for other people to use! Checkout Scratch today and tag us on social media to show us what you create today.