TNS
VOXPOP
As a JavaScript developer, what non-React tools do you use most often?
Angular
0%
Astro
0%
Svelte
0%
Vue.js
0%
Other
0%
I only use React
0%
I don't use JavaScript
0%
NEW! Try Stackie AI
Software Development

Scratch That Itch for Young Developers

Scratch is a combination programming language and community platform designed for children or those new to programming. It teaches fundamental programming concepts using a simple drag-and-drop interface. Typical projects include interactive games and animations.
Jun 1st, 2025 6:01am by
Featued image for: Scratch That Itch for Young Developers

Because Scratch is mainly oriented toward young people, it is particularly interesting to educators and parents who want to introduce students to programming concepts without requiring complex coding or complicated interfaces. Homeschool environments are also a great use case. Don’t be fooled by Scratch’s cartoonish interface or simple project prompts. It provides guidance and concepts that can lead young Scratchers into the fascinating world of application development, setting them up for success with languages like Python, Swift and more.

This article explains Scratch to adults who are setting up an environment for younger users. It describes tools, shows system configuration options and suggests basic projects.

What is Scratch?

The best way to understand Scratch is not to think of it as a programming language. Instead, consider it to be an interface or platform. It provides blocks of functionality that users can drag into position. The combination of blocks generates an application. The underlying code base is called Blockly. Blockly is a block-based coding language oriented on real-world applications. You can easily translate Blockly projects into languages such as Python, Lua, JavaScript and others.

The other important concept is that Scratch is a community. Tutorials, ideas and support options are available within the community, making learning a shared experience. Young programmers can share their projects with others and build on each other’s ideas.

This visual interface is simple and intuitive, inviting several skills, including:

  • Computational thinking
  • Creativity
  • Self-expression
  • Problem-solving

These are valuable skills for any young programmers who may someday become professional developers. However, they are also essential skills for any young person to possess.

Scratch’s primary interface is web-based. You’ll manage projects and interact with the community using this option. Note that there is a downloadable app for unconnected computers or those who wish to avoid the community aspects of Scratch.

Those who use the Scratch programming language are called “Scratchers,” and their projects are referred to as “Scratches.”

Set Up Your System

Scratch does not require much in the way of system configuration. Most users participate in the Scratch community and use the browser-based development environment. All you really have to do is ensure you’re using an up-to-date browser. And while the article assumes you’re using macOS, you could certainly be on a Linux or Windows system.

If you’ve read my other articles on Python, Go, Rust and Swift, you know I usually recommend several additional applications, code editors and integrated design environments (IDEs). You won’t need all that for Scratch.

You could use a virtual machine rather than your primary operating system, though that’s probably overkill for Scratch projects.

Configure your Mac’s settings to ensure easy access to programs and a comfortable user interface. Kids might appreciate larger fonts and lower resolutions to make seeing and working with Scratch elements easier.

Don’t expect to install a lot of extra components. While utilities like the iTerm2 terminal interface and the Git version control tool are handy for most dev projects, you won’t need anything like that to get started with Scratch. You also don’t need Apple’s Xcode integrated design environment (IDE).

Homebrew

Working with Scratch requires very little extra software, if any. The Homebrew package manager is always a useful utility, so you could go ahead and install it on your Mac. You’ll use it for far more than just Scratch projects.

Homebrew enables access to software that is not available on Apple’s App Store. It also handles software dependencies elegantly.

You can install Homebrew with a single command:


Homebrew isn’t necessary for Scratch, but it’s handy.

Join the Scratch Community

Begin working with Scratch by creating a community account. The process only takes a couple of minutes. The community guidelines are easily understood by young people, so I suggest involving your kid in the process if you’re making an account on their behalf.

Account creation process:

  1. Open the Scratch homepage and select the Join Scratch link in the menu bar at the top of the screen.
  2. Create a unique username and password. This name will be visible to the community. Note that the Scratch team recommends not using your real name.
  3. Next, select your country, birth year and gender, enter an email address, and complete an image recognition prompt.
  4. Finally, review the community guidelines.

Scratch will email you a confirmation message.

Figure 1: Select the Join Scratch link to create a new account.
Figure 2: Create a unique username and password.

You can log in from the same website whenever necessary.

Exploring the site before beginning a project or tutorial is a good idea. You can see what others have created, read up on Scratch news and learn more about creating projects.

Figure 3: Browse the welcome and news sites for information on getting started with Scratch.

Getting Help

The Scratch team provides two primary forms of support. The first is a discussion forum and the second is a wiki.

The discussion forum consists of various sites covering basic Scratch principles and techniques, “show and tell,” project ideas, feature requests and more.

The Scratch wiki provides basic answers. It should be your first stop when you run into issues.

Scratch Offline Editor and Advanced Tools

Some school settings or other environments may prefer students to work without an Internet connection. No problem! Scratch has you covered with a downloadable app for macOS, ChromeOS, Windows 10+ or Android. The app is free, of course.

Figure 4: Download the Scratch app when you don't want to connect to the Scratch community over the Internet.

Older Scratchers and those seeking to create more advanced programs might benefit from the Gandi IDE. It is an in-browser IDE that extends Scratch’s potential. It also adds a game engine to increase performance. The Gandi IDE retains the drag-and-drop interface already familiar to Scratch users, so it’s easy to learn.

Figure 5: The Gandi IDE.

Features:

  • Library of sprites, sound effects and other additions.
  • Code snippets.
  • Share your own development assets with others.
Figure 6: Share Scratch assets with other Scratchers via Gandi.

With Scratch’s emphasis on community, you might find it helpful to enable collaborative Scratching. Consider the Blocklive Chrome Extension, which syncs Scratch projects in real-time, making collaboration within a homeschool setting, classroom or across the world possible. Many developers using more powerful languages work on projects collaboratively, so this is certainly a realistic option. Check out the Blocklive homepage for more details.

First Projects

Rather than dive into Scratch with no real plan in mind, consider using the site’s basic prompts for starter projects. These projects teach fundamental concepts in an organized way so that creators have the tools they need to implement their own projects down the road.

Figure 7: The Scratch community provides many ideas and tutorials to get started.

Select the Ideas link from the menu at the top of the Scratch homepage to access various tutorials and coding cards. Consider using the YouTube channel as a learning tool, too.

Figure 8: Find inspiration for new Scratches or review new techniques using YouTube.

Wrap Up

Scratch is of interest to parents, educators and those interested in fundamental programming concepts. Its goal is to teach new programmers how to think like a developer and use developer tools, leading to greater success with more robust languages, like Python. It’s a great parallel to other similar projects, such as the Raspberry Pi. (Find more information on Raspberry Pi here.)

No setup is required to work with Scratch; you just need an up-to-date web browser. Don’t forget to access the tutorials, YouTube channel and first projects prompts to get started. And plenty of advanced and collaborative resources are available once Scratchers gain more experience.

Finally, consider donating to the Scratch project if you find the program inspirational or helpful. These donations go a long way toward keeping educational programs like this one going.

Start using Scratch today by creating an account and selecting a new project. You’ll be surprised at the combination of fun and learning the community provides.

Created with Sketch.
TNS DAILY NEWSLETTER Receive a free roundup of the most recent TNS articles in your inbox each day.