In a sea of computer science and stem learning resources, Scratch stands out as one of the more unique and accessible tools for any parent eager to introduce their child to the topic. Developed by the MIT (Massachusetts Institute of Technology) Media Lab, Scratch was first released in 2005 and has grown significantly since then. Just like many popular computer science languages like Java and C++, Scratch is a programming language that allows users to create their own applications and software. However, unlike Java and C++ which are text-based programming languages, Scratch is an entirely image-based, visual programming language, making it ideal for kids.
How does it work?
Children code in Scratch via a simple drag and drop interface. Instead of writing code, users move puzzle like function blocks into a darker grey script area. Each block provides a single command, and these commands are customisable by clicking on the block. Scratch features twelve different categories of blocks covering many of the tools and commands found in other languages like Sound, Variables, Motion, Operators and kids can create scripts by combining these blocks together to make programs. Scratch also makes sure that each block has a unique shape and can only fit with a matching block to prevent any structural errors.
Available for free online, Scratch is very popular with over 500,000 monthly active project and content creators. Even though the software is accessible and usable by children as young as eight years old, the most common Scratch users are between eleven to thirteen years of age per the site’s statistics page. Much of Scratch’s growth in users is due to the extensive number of educators and schools that have integrated the software into their curriculum. For parents thinking about how to encourage an interest in coding, we put together 10 reasons why it is the language to learn.
1. It is specifically design for kids
Just as video games and toys are developed and targeted towards kids, Scratch was designed from the beginning to work and appeal towards a younger demographic. While being designed for kids may not seem like a strong feature, programming in Scratch is reminiscent of activities often associated with fun by children. For instance, one of the most important concepts in Scratch is content creation and creativity which is something that children associate with fun. Whether it is a game, interactive story or animation, Scratch provides children with multiple easy to use tools to create what would otherwise be inaccessible to them. Other examples of Scratch’s design focus towards kids are visible in the software’s interface which provides children with the ability to code their programs without any syntax errors, and it’s easy to follow tutorials on the Scratch Wiki.
2. Free online resources
Studies suggest that one of the primary reasons why children avoid or dislike computer science in their youth is the difficulty and confusion associated with the subject. Despite the best instruction, many ideas in coding can be tough to understand especially for young children. Even Scratch is not immune from difficult concepts despite its simple to use interface and numerous tutorials. However, where Scratch differs from other tools is the vast amount of online support it offers. Being very popular and free means that there are multiple resources for Scratch users encountering any problems with the content. From easy to access tutorials in YouTube to professional guides and sample projects provided by educators like Harvard, finding support for a difficult concept or question is quick and easy. If a child cannot find their answer from a quick search online or Scratch’s online discussion forum, many companies sell books with a lot of general instructions and tips for children looking to find extra help for their questions.
Millions are already using Scratch in schools with thousands of teachers building the language into their curriculum.
3. Learn fundamental coding principles
Being devoid of complex and challenging code syntax examples might make you wonder if it means they aren’t really learning to code. Despite this, what sits behind the drag and drop interface are many of the same principles found in the other, more complex languages. Examples include simple concepts like the order of operations, to more challenging ideas like loops and parameters. Scratch’s ability to teach children these concepts without confusing syntax and in a simple manner has been shown to be effective in the past.
A study conducted by a group of researchers from the Weizmann Institute of Science demonstrated that inserting Scratch based learning into the curriculum for middle school students saw them successfully learn many important coding concepts. Even though the results did show some children struggled with some concepts like repeated execution and variables, the researchers concluded that those problems were fixable by making changes in the lesson plan rather than being due to Scratch. Thus, despite its unassuming interface, Scratch manages to teach kids about universally applicable principles which can set a solid foundation for future learning.
4. Scratch can be used for different things
Besides being entirely free, one of the primary reasons why Scratch is very popular is the tools it provides. Ignoring the excellent code editor, Scratch features tools for animating sprites, creating 3D objects, video games, music, and story animations or cartoons. All of these resources accompany appropriate instructions and the ability to share them with the community with a Scratch account. By not limiting its offerings to just computer science, Scratch allows children to hone their skills and shine their creativity in other areas like music and art when they aren’t coding. Not only does providing kids with these tools make kids spend more time on the site and be productive, it encourages them to learn more about coding by being able to integrate their art or other creations in their computer science projects.
5. The Scratch community
Scratch’s lack of a barrier to entry means that it has a vast community with millions of users made up by kids, teachers and adults. They can be found on the official forum, front page, and wiki, with lots of discussions on sub-forum topics providing support for children who are struggling to solve some parts of the material. The discussion forum also contains others sub-forums dedicated to helping kids with creating things beyond Scratch such as developing Scratch extensions. Scratch’s huge community differentiates itself from its competitors by not only doing a great job at helping Scratch users solve their problems but by providing them a with an ample supply of resources for things Scratch related and beyond.
6. It teaches computational thinking
Among all of the reasons to learn Scratch, Scratch’s ability to teach kids about computational thinking is among the most important. For those unfamiliar with the term, computational thinking entails the process of thinking and solving problems in a way that a human or computer can carry out. Scratch manages to instil these concepts in children by giving them the ability to learn and practice concepts used by computers to carry out instructions like loops and events. By using and experimenting with these ideas on Scratch, kids can understand how to interpret problems and then solve them via their knowledge gained from the games and activities. Scratch helps teach computational thinking by providing children with the ability to break problems into smaller parts or think of different ways to reach a solution.
7. You can share your creations online
Scratch encourages productivity and creativity by allowing children to share their creations online. Whether it is an animation, song, story, tutorial or game, everything children can create in Scratch can be shared easily with a free Scratch account. Once shared, user-created projects pop up on Scratch’s explore page with more popular projects and creations garnering a spot on the top of the page. Just like with YouTube videos, kids can like, favourite, or leave comments and other helpful suggestions for their peers. This helps kids to learn and take inspiration from other projects shared on Scratch’s explore page.
8. Other products are leverage Scratch
Scratch’s widespread popularity has led to other companies using its ideas as a foundation for their learning tools. One such example is Tynker which provides a paid platform (website and app) for children that mirrors a lot of Scratch’s properties like its visual drag and drop coding interface and game design. Other collaborations include the ability to combine Makey Makey’s kit with Scratch, giving kids the option to build physical projects that they can also code.
9. Many schools use it
Millions are already using Scratch in schools with thousands of teachers building the language into their curriculum. The Scratch website provides educators with specific tools like curriculum guides and teacher meet ups, and this has extended into the teacher community with people sharing their own teaching ideas online. As a parent, it’d be worth asking your school about Scratch to see if they are using it and if not, suggest they get involved.
10. It’s easier than trying to start with another language
Unlike conventional programming languages that require a lot of prior knowledge, getting started with Scratch is straightforward and easy. The colourful drag and drop interface, error-free controls, and step-by-step beginners guide all make this a fantastic introduction for kids to the world of coding. With the risk that some children might be turned off by other languages if they initially find them too hard, Scratch is an easier way to develop confidence and hopefully a long term interest.