Home » Coding » Scratch


Scratch is a programming language that makes it easy to create your own interactive stories, games, and animations – and share your creations with others on the web.

Scratch is designed especially for ages 8 to 16, but is used by people of all ages. Millions of people are creating Scratch projects in a wide variety of settings, including homes, schools, museums, libraries, and community centers.

Scratch is used in more than 150 different countries and available in more than 40 languages.

Students are learning with Scratch at all levels (from elementary school to college) and across disciplines (such as math, computer science, language arts, social studies)


February Headline: Educational language Scratch enters TIOBE index top 20

+The Scratch programming language from MIT Media Lab has entered the TIOBE index top 20. Scratch is a language to learn programming. It is especially used at schools and is now getting really popular. The Scratch repository at MIT labs contains 20 million different Scratch projects and more than half a million new users each month.”


The Scratch Editor

Scratch 2 Offline Editor: You can install the Scratch 2.0 editor to work on projects without an internet connection

What can students learn from Scratch? By Matt Doyle Brit Pips

Students will develop a range of coding and problem-solving skills that will help them when they later move onto real-world programming. These include:

Manipulating variables — chunks of computer memory — to store and retrieve data.

Using operators to manipulate data. These include arithmetic operators (plus, minus, multiply, divide), as well as comparison operators (less than, equal to, greater than), logic operators (and, or, not), the concatenation operator (for joining strings together), and trigonometry (sine, cosine, tangent and so on).

Understanding control flow: the way that computers move through each step in a program.

Altering control flow with conditional statements and loops.

Creating reusable chunks of code, known in Scratch as custom blocks. (In programming-speak they’re known as procedures or subroutines.)

Event handling: writing code that responds to events, such as key presses and mouse clicks.

Detecting and responding to real-world input, including the mouse position, the loudness of the sounds picked up by the computer’s microphone, and even movement picked up by the webcam!

Simple multimedia programming, including drawing, animation and sound.


0. Learning With Scratch

On the right side of the screen follow the tutorial “Getting Started with Scratch”

Click ‘Start Moving’ – Drag a move block into the Scripts area. Watch carefully, the animated tutorial shows you how to drag a command block from the menu into the Script area. On the bottom of this tutorial area, look for the next step (Now, add a sound) Continue forth through the entire tutorial.

Scratch Lesson 1: Introducing Scratch and Creating Sprite

Scratch Lesson 2: Animating a Sprite (Dance)

SCRATCH Lesson 3: Adding Sounds (Dance to the Beat)

SCRATCH Lesson 4: Create a Music Sprite

Scratch Lesson 5: Work with the Stage

Scratch Lesson 6: Create Music with Scratch

Scratch Lesson 7: Understanding the Pong Game

Scratch Lesson 8: From Stories to Animation Part I

Scratch Lesson 9: From Stories to Animations Part II

Scratch Lesson 10: Game Programming Part 1 – Movement

Scratch Lesson 11: Game Programming Part 2 – Sprites

Cloning sprites





Bubblesort: How to alphabetize your bookshelf http://ed.ted.com/lessons/what-s-the-fastest-way-to-alphabetize-your-bookshelf-chand-john


External resources

MATH Scratch for Every Subject: Math

User guide: getting started with Scratch

Video tutorials

15 Scratch lessons with accompanying video tutorials: Scratch ED Resources (Harvard)

Getting Started With Scratch

Scratch Cards: getting started with coding

Writing code with custom blocks

Scratch Workshop: Introduction to Programming

An Introduction to Programming with Scratch Ronald Bourret

Building games


Learning Standards

2016 Massachusetts Digital Literacy and Computer Science (DLCS) Curriculum Framework

6-8.CT.c.1 Demonstrate that numbers can be represented in different number systems (e.g., binary, octal, and hexadecimal) and text can be represented in different ways such as American Standard Code for Information Interchange (ASCII).

4. Computational Thinking (CT) is a problem solving process that requires people to think in new ways to enable effective use of computing to solve problems and create solutions. The capacity of computers to rapidly and precisely execute programs makes new ways of designing, creating, and problem solving possible. Characterized by:
• analyzing, modeling, and abstracting ideas and problems so people and computers can work with them;
• designing solutions and algorithms to manipulate these abstract representations (including data structures); and
• identifying and executing solutions (e.g., via programming).

CSTA (Computer Science Teachers Association) K–12 Computer Science Standards

Computational Thinking: (CT) The student will be able to:

1. Use the basic steps in algorithmic problem solving to design solutions (e.g., problem statement and exploration, examination of sample instances, design, implementing a solution, testing, evaluation).

2. Describe the process of parallelization as it relates to problem solving.

3. Define an algorithm as a sequence of instructions that can be processed by a computer.

4. Evaluate ways that different algorithms may be used to solve the same problem.

5. Act out searching and sorting algorithms.

6. Describe and analyze a sequence of instructions being followed (e.g., describe a character’s behavior in a video game as driven by rules and algorithms).

7. Represent data in a variety of ways including text, sounds, pictures, and numbers.

Computers & Communications Devices (CD)

The student will be able to:

1. Recognize that computers are devices that execute programs.

2. Identify a variety of electronic devices that contain computational processors.

3. Demonstrate an understanding of the relationship between hardware and software.

4. Use developmentally appropriate, accurate terminology when communicating about technology.

5. Apply strategies for identifying and solving routine hardware problems that occur during everyday computer use.

6. Describe the major components and functions of computer systems and networks.

7. Describe what distinguishes humans from machines focusing on human intelligence versus machine intelligence and ways we can communicate.

8. Describe ways in which computers use models of intelligent behavior (e.g., robot motion, speech and language understanding, and computer vision).

Additional links

Scratch Teacher Account FAQ

Scratch – resetting the position of sprites after stopping a program, and CONFIGURE SPRITE STARTUP CONDITIONS

Short sound clips (MP3s)

These can be downloaded to your PC, and then uploaded into Scratch for use in programs.

Useful as text examples of synchronizing animated lips to speech

Free Information Society: Historical speech clips



%d bloggers like this: