Perhaps the concept of programming for kids might seem a bit odd to some of us. I would be guessing that the older generation for the most part would be wondering why on earth kids would need to code. On my part, I was encouraged to do this and allowed to take up programming classes from a very tender young age.
In today’s digitally connected world, it is perhaps inconceivable that any of the younger generation be technologically illiterate. By that I don’t mean unable to code, but at the very least they should be at least familiar with certain terminology as well as proficient in the use of certain things, such as computers, smartphones or tablets.
Naturally, the tools available to teach children have developed by leaps and bounds. What you choose might often have different impacts on your child’s development, since the object lesson of each tool varies widely.
As an example, consider LOGO, a rudimentary programming language that simplifies a child’s first foray into programming with the use of a tiny turtle as a drawing device. By using limited commands such as forward, back, right, left and digits to represent distance, kids can learn to use commands to draw things, such as houses.
It’s simple and imparts some of the basic skills of programming; logical thinking and progression. It’s also cure enough to retain some manner of interest. LOGO is practically as old as I am, although it has improved slightly, in visual terms.
What to Know Before You Begin
It is important to step into a programming foray for your child much like any other activity – with an open mind. Although learning programming started me off on a journey deep into technology, it doesn’t work the same way for everyone.
Getting started with LOGO brought me into contact with computer games. During my time, early personal computers were plagued by limitations and it took considerable technical skill to work around those. My initial interest was sparked by programming, but a strong desire to be able to play the games I wanted led to deeper skills exploration out of necessity.
Today I have friends and family who choose to teach their kids in a variety of ways.
Some introduce them to programming ad-hoc, some send them for classes, while others – well, they introduce them to technology by letting them play games on their tablets.
According to Carolyn Taylor, a resident of New Jersey and home maker of more than 20 years, her husband introduced both their children to programming at a young age. One was interested, while the other showed no interest.
These are explorative years for your children and anything new you introduce them to has the chance to spark enthusiasm. With that in mind, let’s take a look at a great new thing to introduce them to: Scratch programming!
Scratch: A Comprehensive Learning Environment for Kids
Scratch is in some ways like LOGO, but much more advanced and has greater potential. Rather than just simple concepts, Scratch is LOGO on steroids, adapted to the kids of today who are already much more familiar with technology than in the past.
Cooked up by the folks in MIT Media Lab, Scratch is more than just a programming language. In fact, it is an entire ecosystem for learning, encompassing an online community where children can not only learn but share and discuss interactive media such as stories, games, and animation.
Basic programming concepts, modular learning, interactivity and a large dose of cuteness that almost completely customizable, what else would the budding programmer need?
According to the developers, Scratch is primarily designed for eight to 16-year olds. However, from personal experience, I find that some kids who are even younger might be able to adapt if they are gently guided along with a personal helping hand.
For those of you who stick strictly to the recommended ages theme, never fear, because there is still an option. Try out Scratch Junior, which is meant for kids aged five to seven.
Getting Started with Scratch
Let me try and explain the Scratch process here to make it a little easier for you to get going.
1- Register yourself for free
First of all, scratch is available online and it’s completely free. You can visit the Scratch site here and just register an account online.
As with any programming language (even one meant for children), be warned that there is a learning curve. The interface is extensive and there are a multitude of options available. Having gone through the basics, I’d recommend you try to teach your child incrementally.
For example, when you start from Scratch (pun intended), you are given a blank background and a cat avatar. Test out the simple things, such as how to make your cat move around the screen. If you are thinking of a cat moon dancing across the Autobahn on your first try, you might be disappointed.
2- Walk thru the interactive tutorials
It’s best if you get help from Scratch itself, since there are step-by-step guides available inside Scratch, or you can download the Getting Started guide. Although the developers think that the Scratch Cards in the guide ‘provide a fun way to learn more’, the tutorials are more interactive.
In a nutshell, Scratch programming should be able to impart some basic skills that would be useful to your kids later in life, even if not for a life of coding. This includes;
Fundamentals of visual programming
Reasoning, structure and logic
Experience with animation, multimedia and interactive elements
Sharing and concepts of Web 2.0
3- Learning the Basics
Rather than have you typing in lots of commands that might be difficult for young children to remember, Scratch works in a building block format. Building blocks of commands such as ‘Move X Steps’ are shaped like puzzle pieces to be fitted together on the screen. All the child needs to consider is how far the Avatar will move.
By dragging that block across the screen, the first command will be in place. Following that, try adding an action, such as playing a sound. Once those two blocks are in place, they are considered a sequence. Sequences are a series of actions that will take place one after the other in order to create some form of story or animation on the scene.
As a first attempt, try to achieve this:
Move the cat right 50 steps
Make the cat play drums for 5 seconds
Move the cat back 50 steps
Simple enough on paper and entertaining enough for a quick first go to gauge your child’s interest. I recommend watching some of the demo videos together with your children as they are quite entertaining. To the kids, they’re like cartoons. Following that, all you need to ask them is if they’d like to try to do that themselves!
The Scratch Online Community: Learning to Share
In almost all educational situations, one of the key aspects of learning we instill in children is the ability to socialize. This usually took the form of play sessions, where kids could interact with each other and learn to ‘play well with one another’.
The Scratch online community offers a virtual form of that. Personally I think this is a little sad since everyone is already walking around with their eyes glued to their smartphones. Yet it is interesting that the developers have brought this aspect into play since its an essential part of learning. Let’s chalk it up to different experiences in different eras.
In the Scratch online community, members can explore and experiment with other Scratch members. This is done primarily through the sharing of work. From this, they can view, collate ideas and discuss them, like the junior league version of brainstorming sessions. It sounds advanced, but picture it in your mind with a bunch of eight-year olds and you’ll get what I mean.
Important Note from the Developers:
“The MIT Scratch Team works with the community to maintain a friendly and respectful environment for people of all ages, races, ethnicities, religions, sexual orientations, and gender identities. You can help your child learn how to participate by reviewing the community guidelines together. Members are asked to comment constructively and to help keep the website friendly by reporting any content that does not follow the community guidelines. The Scratch Team works each day to manage activity on the site and respond to reports, with the help of tools such as the CleanSpeak profanity filter”.
Using Scratch Offline
If you’re ultra-paranoid or simply can’t maintain a stable internet connection somehow (I feel your pain), there is an option for you. Scratch has an offline editor available that you can install on your own computer.
Aside from the direct Scratch community and the site itself, there are numerous other resources online available to help you in your child’s quest towards total world domination through coding. Here are some of them;
Although I think Scratch is one of the best programming languages for kids to learn with, there are a multitude of others that are available as options. Some place more emphasis on the gaming and visual aspects of learning, while others are more traditional.
Try them out and find one that’s the perfect balance for your children;
Where science and law were once prime fields to enter, the business landscape today is vastly different. The world needs many more tech experts in the years to come. Even better, thanks to the Internet of Things, Industry 4.0 and greater cybersecurity concerns, the possibilities are endless.
Even traditional fields such as medicine have increasingly been disrupted by technology such as robotics and big data.
While learning Scratch programming might not end up with your child entering even the hard sciences, it helps to build logical thinking and teach structure and organization. There really isn’t any downside to it and in fact may even be more entertaining than watching cartoons on the television. I highly recommend at least an attempt to draw interest in this area.
Article by Timothy Shim
Timothy Shim is a writer, editor, and tech geek. Starting his career in the field of Information Technology, he rapidly found his way into print and has since worked with International, regional and domestic media titles including ComputerWorld, PC.com, Business Today, and The Asian Banker. His expertise lies in the field of technology from both consumer as well as enterprise points of view.