If you haven’t heard of it yet, Scratch is an internationally-popular tool for introducing students to coding. In fact, Scratch is used in over 200 countries and is available in over 70 languages! So what is Scratch programming? Today we will reveal how Scratch coding works and why it’s so popular, as well as provides project ideas so you can get started learning right away!

What is Scratch programming?

Scratch is a completely free, web-based block coding platform created by MIT. Because Scratch coding was built with younger students in mind, it has an intuitive user interface that uses color-coding to group blocks by their function. This makes it easy for young students to pick up the basics quickly; however, Scratch is also quite powerful, so advanced students can still benefit from using Scratch. The appropriate age for learning Scratch is typically students in second grade and older (younger students may want to try Scratch Jr. instead.)

To save and share projects, students need to make a free account. Creating an account also allows students to utilize Scratch’s community features like the “Explore” page, where users are able to try the games and animations created by Scratch users. Students can also build off of and learn from other projects by using the “Remix” button. The “Remix” button allows students to see the code for that project, make changes to it, and then publish their modified version of the project.

To learn more about how to use Scratch coding with live expert guidance, join our award-winning online beginner-friendly coding class, designed by professionals from Google, Stanford, and MIT.

What type of coding is Scratch?

Block coding is a type of coding that uses “blocks” of code, as opposed to typed-out lines of code. This code style is easier for beginners to grasp, as it abstracts away the complexity of text-based coding, allowing students to focus on fundamental programming concepts instead of syntax. Scratch’s block coding works by using drag-and-drop to drag a code block from the left side of the screen into the center.

Here’s an example of Scratch coding:

This very simple block of code will cause the sprite to move. It requires two blocks: the yellow “When Green Flag Clicked” block and the blue “Move 10 block.” Because of the simplicity of block coding, you can tell what this code does by reading it from top to bottom: “When the green flag is clicked, move the sprite by 10 steps.” In Scratch, positive steps move the sprite (character) to the right, and negative steps move the sprite to the left. To run the code and to test it, click the green flag at the top right side of the screen.

Scratch programming example

What does Scratch coding do?

There are a wide range of things students can make with this tool, including awesome Scratch games, Scratch projects, and animations too! Below are fun examples of projects your student can try for learning Scratch.

1. Clicker Game: Idle games aren’t just for your phone. They can be a Scratch game too! This game serves as a good introduction to click events and variables, as students need to track the amount of clicks that happen, as well as the point totals for purchasing different items in the game.

2. Whack-A-Mole: Put your reflexes to the test after building this classic arcade game. Choose the type of sprite you want to whack (it doesn’t have to be a mole!), set up the click events, and play the game in just 6 steps.

3. Pong Game: This tutorial shows students how to make a single-player version of Pong. It is a great example of how sensing blocks are used, which is important for making games where sprites collide with each other. For an added challenge, try to set the game up for two players on the same keyboard!

4. Piano: The team at Scratch has some “starter projects” they’ve written so students can build on them. One great example is this piano project. Students can “Remix” the project to see how sound works in Scratch, then try to make their own customizations to the piano.

5. Greeting Card: Another Starter project from the Scratch team, it combines sound and animation to create a custom virtual greeting card. Have students customize the card to fit whatever occasion they want, add a personal message, or play unique sounds.

6. About Me: Scratch has blocks that make sprites “talk” using speech bubbles. Why not use this feature to create a sprite that can introduce cool facts about you? This is an excellent beginner project.

7. Jumping Game: Make a custom parkour adventure in Scratch! This game leaves ample room for creativity, as students can create multiple different platforms for their characters to jump on.

8. Rock, Paper, Scissors: Probably one of the first games kids learn to play with each other, Rock, Paper, Scissors in Scratch makes for great practice with using variables. Students also get a chance to practice utilizing conditional logic, as there are multiple different outcomes they need to plan for.

9. Frogger: The Scratch version of this classic arcade game is as much fun to play as it is to make! This tutorial is advanced, so it would be best to try this game after learning about variables, custom events, and comparison operators.

10. Flappy Bird: As difficult as the sensational Flappy Bird game was, it actually isn’t too difficult to make in Scratch! Create your own obstacles using Scratch’s built in drawing tool, then set up the scrolling obstacles with glide blocks. This is a good project for practicing animations/changing sprite costumes.

How to learn Scratch coding

There are many great resources and tools for learning Scratch coding, but it’s a good idea to get an account set up first. As mentioned above, creating an account is required to save projects for later. Follow this getting started with Scratch tutorial, to see the steps needed to create a Scratch account.

Once set up with an account, go to Scratch’s main webpage and click on the white “Create” button on the top left part of the page. This creates a new Scratch project with the basic sprite included. The left side of the screen has all the blocks, color-coded by their function. These blocks can be dragged and dropped in the middle portion of the screen to actually create the code. The top right side of the screen is where the output of the code appears, while the bottom right contains all of the sprites. In Scratch, sprites are the characters in the game/animation.

Once familiarized with the layout of the Scratch user interface, it’s time to start learning some basic blocks! Check out this tutorial for an overview of the different types of Scratch blocks. The most commonly used beginner blocks are the yellow “Event” blocks and blue “Motion” blocks. Event blocks tell you code when to run; for instance, if the left arrow key is pressed, or if a user moves their mouse. Motion blocks cause a sprite to move around on the screen. Using just these two types of blocks, you can make a movable sprite!

One of the best ways to learn something is to get hands-on experience, by doing something like creating your own game. Scratch’s website has a number of simple tutorials under the “Ideas” section. Additionally, Scratch has a YouTube channel that shows how to make different types of games in Scratch. These self-directed tools can be a good way to start, but having a teacher and a structured curriculum helps students to learn faster and with less frustration. Create & Learn offers an online, live instructor-led Scratch Ninja course. It is a four-part course, and each part consists of four fifty-minute sessions. Students will learn concepts such as loops, variables, conditionals through engaging projects like games and animations. If this sounds interesting to your student, they can try the free Scratch intro course.

What is Scratch programming? Now you know!

Here’s a quick recap of Scratch programming is:

  • 100% free block coding tool designed by MIT and used worldwide
  • Great for introducing students to coding, who are in grade two and up
  • Can be used to make games, animations, and more
  • Large community with lots of tutorials on YouTube, Scratch, etc.

With such an awesome tool available, why wait to get started learning an important skill like coding? Try out Create & Learn’s Free Intro to Scratch Coding today to see what it’s all about!

Written by Create & Learn instructor Dominic Occhietti. Dominic is a graduate of Michigan State University, where he studied music performance and computer science. He thoroughly enjoys teaching, whether that be coding classes, French horn lessons, or even downhill skiing lessons!