Unleashing Creativity with Variables and Lists in Scratch Programming: A Guide for Young Innovators

Variables and Lists in Scratch programming

In today’s rapidly evolving digital landscape, computer programming for kids has become an invaluable skill for the young minds shaping our future. At SkoolOfCode, we are committed to nurturing these young innovators by providing them with a holistic STEM-based coding curriculum, where creativity meets technology. Platforms like Scratch empower children to become creators of their own interactive stories, games, and animations. As a parent, you might have heard your child talk about Scratch, but understanding its advanced features like variables and lists might seem daunting.

This blog is designed to introduce both parents and children to the exciting world of Scratch programming for beginners, focusing on two fundamental concepts: Variables and Lists.

Introduction to Scratch Programming


Scratch is a visual programming language developed by the MIT Media Lab, aimed at children aged 8 to 16. It offers a colorful, drag-and-drop interface that makes coding accessible and fun for beginners.


At SkoolOfCode, we offer some of the best online coding classes for kids, leveraging Scratch’s engaging platform to introduce children to the basics of coding, helping them develop computational thinking skills that will benefit them in every aspect of their lives.


The Power of Variables in Scratch


In programming, variables act as containers that hold values, akin to boxes containing numbers. These values can be modified using operators like increment or decrement, based on the program’s needs. Essentially, variables store dynamic data in the computer’s memory, allowing for manipulation and reference throughout a program.



They can store various types of data, including Numeric, Strings, or Boolean values, enabling versatility in programming tasks. Variables are essential for referencing and manipulating data across different parts of a program, making them invaluable tools for programmers.


Types of Variables


In Scratch, variables come in three types:


  1. Global Variables: These are the default variables in Scratch. They can be altered or accessed by any sprite within the project or stage, regardless of where they were initially created. When creating a variable, Scratch prompts the user to decide whether it should be accessible to all sprites (“choose for all sprites”) or restricted to the current sprite (“choose and for this sprite only?”). Opting for the former makes the variable global, enabling access by any part of the project. Global variables are stored in the system’s RAM and retain their values throughout the project.
  2. Local Variables: Unlike global variables, local variables are confined to the sprite on which they were instantiated. They cannot be accessed or modified by other sprites. When defining a variable, Scratch presents the option to either make it accessible to all sprites or restrict it to the current sprite. Opting for the latter makes the variable local, restricting access solely to the sprite where it was created. 3.
  3. Cloud Variables: These variables enable users to store data on Scratch’s servers. Cloud variables are denoted by a cloud-like symbol “☁️”  preceding their names, and they update rapidly. As of Scratch 3.0, cloud variables exclusively support numeric data and are limited to 256 characters in size. Each Scratch project permits the creation of up to 10 cloud variables. Cloud data on Scratch allows users to store variables on Scratch’s servers, enabling communication between different users’ computers. New Scratchers are currently restricted from using this feature due to concerns about potential system overload from inexperienced users.

Note – This option is only visible if you have been badged as Scratcher.



In Scratch, the following variable blocks are available:



Creating and Using Variables

Creating a variable in Scratch is simple:

  1. Click on the “Variables” category.
  2. Choose “Make a Variable.”
  3. Name your variable (e.g., “score” for a game).


4. Decide if the variable is for all sprites or just one.

Once created, here are some key blocks related to variables in Scratch:



  1. Set Variable to [Value]: With this block, you can assign a specific value to a selected variable. For example, you can set a variable to 0, 1, or any other desired value.
  2. Change Variable by [Value]: This block modifies the value of a selected variable by adding or subtracting a specified amount. For instance, using “change variable by 1” would increase the variable’s value by 1.
  3. Show Variable: When used, this block displays the specified variable on the project player. It allows users to visualize the value of a variable during project execution.
  4. Hide Variable: This block reverses the effect of the “show variable” block by removing the display of the specified variable from the project player.

Variables can make your projects interactive and dynamic, allowing for personalized experiences that engage and captivate young minds. When creating a new variable in Scratch, it automatically becomes the selected variable by default. However, if you wish to modify or utilize a different variable, you must manually select it by ticking the box next to its name. This allows for flexibility in managing variables according to the needs of your project.


Moreover, Scratch provides convenient options to rename or delete existing variables. Simply right-click on the variable name to reveal a menu, where you can choose

  1. “Rename variable” to assign a new name to the selected variable.
  2. “Delete the <variable name> variable” allows you to remove the selected variable from your project.

These features enable easy organization and maintenance of variables as your project evolves.


Project with use of variable

Here’s an example of a coding class for kids project – Balloon Busting game, you control the cat’s movement using the left and right arrow keys. Press the spacebar key to hit the balloon. Each time you successfully hit a balloon with an arrow, you earn points. The objective is to burst as many balloons as possible within a time limit of 20 seconds. Keep an eye on the timer and aim for maximum points before time runs out.



Here we are using two variables :

  1. Balloons busted – Count of balloons busted when arrow hit a balloon.
  2. Time left – A variable to show how much time is left.


Introducing Lists: Organizing Data Made Easy

Lists in Scratch are like containers where you can keep lots of things together. They’re super handy for making all sorts of cool stuff in coding classes for kids online.

Imagine you have a big box. You can put different toys, books, or snacks inside it. That box is like a list in Scratch. It helps you organize and play with all the stuff you’ve put in there.

In Scratch, you use lists for games and other projects. Let’s say you’re making a game. You can use a list to remember important things like how many points the player has, where objects are on the screen, or what special powers a character has. With lists, your game can keep track of everything at once, so it’s easier to make it work just the way you want.

Lists also make your projects more fun for people to use. For example, if you’re making a story, you can use a list to remember different choices readers make. That way, your story can change depending on what they choose. And learning about lists in Scratch is like learning how to use a new tool. It helps you understand how to organize things and solve problems better, which is super important in coding.


Power of Lists in Scratch Programming


Lists play a crucial role in Scratch programming, offering programmers numerous advantages.

In Scratch, lists act like containers where you can store and work with lots of different pieces of information all in one place. Here’s why lists are so great in Scratch:

  1. Efficient Organization: Lists help programmers manage big chunks of data well. They’re like tidy drawers where you can neatly keep and find your stuff. With lists, it’s easy to save and get back data, and you can change them around to make your programs more exciting and fun.
  2. Interactive Programs: Lists make programs come alive! For instance, if you’re making a game and using lists to keep track of what’s happening in the game, your game can react to what players do. So, it feels like the game is listening and responding to you.
  3. Versatile Solutions: With lists, programmers can create programs that can handle different situations smoothly. Lists aren’t picky—they can hold all sorts of things, like numbers, words, or even other lists. This makes it super easy to play around with data in all kinds of ways.
  4. Smart Problem-Solving: Working with lists in Scratch gets your brain buzzing. You’ll have to think hard and come up with clever ways to use them. Lists help you solve tricky problems and figure out how to change data in cool ways. It’s like solving a puzzle that makes you better at solving other puzzles too!
  5. Great Learning Tool: Learning about lists in Scratch is like laying down a solid foundation for learning more advanced stuff later on. Once you’ve mastered lists, you’ll have a solid grip on how programming works, which will make learning other programming tricks a lot easier in the future.

Creating and Manipulating Lists

To create a list in Scratch:

  1. Go to the “Variables” category and select “Make a List.”
  2. Give your list a name (e.g., “HighScores”).

Choose the scope (for all sprites or just one).



With lists, you can add items, delete items, and even sort them, which opens up endless possibilities for creativity in projects. Whether it’s managing inventory in a game, creating a to-do list, or organizing scores in a competition, lists provide the structure needed to keep data organized and accessible.


Lists Transforming Scratch Projects

In the world of Scratch, lists are the secret sauce behind dynamic and engaging programs! Check out these exciting ways lists can supercharge your child’s creations:

  1. Score Savvy: From arcade classics to modern adventures, lists fuel high-score boards, showcasing your child’s triumphs and updating in real-time.
  2. Inventory Adventures: Dive into immersive role-playing worlds where lists manage inventories, storing treasures for epic quests and thrilling discoveries.
  3. Random Magic: Watch as lists sprinkle randomness into projects, whether crafting unique melodies or generating unpredictable game elements.
  4. Organized Chaos: With lists, programs can tidy up cluttered data, offering users the ability to sort and filter information with ease.
  5. Character Carousel: Unlock a gallery of characters with lists, each with their own strengths, weaknesses, and abilities, ready to embark on exciting journeys.
  6. Melody Makers: Dive into the world of music composition, where lists choreograph intricate melodies and rhythms, responding to user input with symphonic harmony.

With Scratch and lists in hand, the possibilities are endless—ignite your child’s creativity and innovation today.


From Basics to Practical Applications

Let’s explore some real-world problems where variables and lists play a crucial role:

  1. Inventory Management:
    • Problem: A retail store needs to keep track of the quantity of each product in stock.
    • Variables: Product names, quantities, prices.
    • Lists: An inventory list containing all available products.
  2. Weather Forecasting:
    • Problem: Predicting weather conditions for the upcoming week.
    • Variables: Temperature, humidity, wind speed.
    • Lists: Historical weather data for trend analysis.
  3. Student Grades:
    • Problem: Calculating students’ average grades.
    • Variables: Individual test scores, assignment grades.
    • Lists: A list of students’ scores for each subject.
  4. Flight Booking System:
    • Problem: Managing flight availability and bookings.
    • Variables: Flight numbers, departure times, seat availability.
    • Lists: A list of available flights for booking.
  5. Healthcare Records:
    • Problem: Storing patient information in a hospital database.
    • Variables: Patient names, ages, medical conditions.
    • Lists: A list of patient records.
  6. Sports Statistics:
    • Problem: Analyzing player performance in a basketball league.
    • Variables: Points scored, rebounds, assists.
    • Lists: Player statistics for the season.

Remember, variables allow us to store and manipulate data, while lists (or arrays) help organize multiple related values efficiently. These concepts are fundamental in programming and have practical applications across various domains.



As we’ve explored the realms of variables and lists in Scratch programming, it’s clear that the journey of learning to code can be as thrilling and imaginative as the games and stories our young innovators aspire to create. SkoolOfCode stands at the forefront, guiding these bright minds through the maze of technology with a STEM-based curriculum that’s not only educational but also incredibly fun.

Whether it’s the first foray into the world of programming or a step further into its vast potential, understanding these concepts opens up a universe of possibilities. Variables and lists are the nuts and bolts of coding in Scratch, but they also teach critical thinking, problem-solving, and creative design – skills that will serve our children well beyond the screen.

If you’re eager to see your child take their first steps in this adventure, or if they’re ready to dive deeper and master these foundational tools, SkoolOfCode is here to make that journey both accessible and unforgettable. Our online coding classes for kids are tailored to inspire, engage, and cultivate the skills that will shape our future creators, innovators, and leaders.

Are you ready to unlock your child’s potential and watch them thrive in a digital age? Join us for a free trial class, where fun meets education, and imagination turns into creation. Let’s code, let’s create, and let’s embark on this extraordinary journey together. Book a trial class now and take the first step into a future written in code.


Ms.Manpreet Virkan educator at SkoolOfCode with a degree in M.Phil and Master in Computer Science. She is passionate about learning and teaching young minds.