I know what some of you might be thinking—”Coding? I wasn’t giving any thought to coding even before 2020 came about...and now I have to get kids ramped back up to regular education levels while also thinking about teaching them to code?"
If that sounds like something that just entered your brain, let’s use this time of "reset" to seize the moment. To realize that sure, kids maybe weren’t learning coding even when in school before, but now that education looks a bit differently, it's the perfect time to get them going with something new.
(And for the rest of you who are here because coding has in fact been on your mind and already a topic of conversation, and now need some help getting your kids learn even more, that’s great!)
Either way, I’ll tell you right now—I don’t have all of the answers.
But, I have a lot of answers!
Teaching kids to code
Parents don't need an extensive programming background to teach kids to code.
Here are seven tips and resources to help teach your child to code.
1. Define coding
Through all of this, one key piece of advice I can give is to understand the boundaries of what you know and what you don’t know. Many of you might be more in the “there’s a lot I don’t know” camp, and again, totally fine! No judgment here.
But in knowing that about yourself, don’t try to be something you’re not, and more specifically, don’t try to communicate something without conviction or confidence. Meaning, it’s OK to go basic. It’s OK to explain through analogies. It’s OK to use examples.
In fact, all of these tactics are encouraged. If your student is a coding beginner, then all of these methods are only going to make it easier for them to grasp the foundational concepts required to build to the more complex.
So, what is coding?
Simply, coding is instructing a computer to do something through step-by-step commands. The goal with this code is for the computer to carry out what it’s being told in order to reach a specific outcome.
And what is coding used for?
Coding is used to tell apps to run on smartphones, and to execute games on consoles. Coding powers much of what your children interact with through their laptops, on their visited websites, and in their social media.
Some people say computers are smart, but without code, computers would sit lifeless. It’s the code that brings everything to life, and the computer is simply an obedient rule-follower.
2. Talk about coding languages
So if coding is the act of telling a computer what to do, there must be a specific way to communicate, right?
Yes! And that’s the primary task of the coding language—to pass along instructions to a computer. The only wrinkle here is that languages take many forms and functions.
So, just as would be expected and required when speaking with people from different parts of the world, different coding languages are needed in order to sufficiently communicate with different machines.
Java is one of the most popular and widely-used languages. Actually, how about this...Minecraft? Heard of it? It was built in Java, and with Java skills, kids can learn how to build and incorporate their own Minecraft mods.
More on kids coding languages.
3. Get kids interested in learning to code
I think the above language breakdown provides a very good first step in terms of getting kids excited about learning how to code:
Connect coding to those things kids already enjoy. Java and Minecraft, Lua and Roblox, and other pairings like Python and artificial intelligence, visual coding and LEGO, or C# and augmented reality.
Between all of the above, it’s a good bet that your kid is interested in at least one of those things, no?
What’s that? Your child is only interested in something like soccer? Don’t worry, there’s still a connection to tech, and a connection to coding, specifically.
Just ask Marco, who at the age of 13 has played soccer for most of his life, but is now developing an interest in data science as it relates to soccer through sports stats and eSport Management. It's one of countless examples.
With all of this, whether tech-interested or not, coding has a hand in a lot of things, making it easy for us parents to connect those interests to the power of coding.
So, how do you get things started? Here are a few tips:
First, have kids learn something. Anything. Coding basics, preferably.
Just like we explained through the definitions above, it’s hard to learn how to do something if you can’t really formulate in your mind what that something might be.
So, have kids start with some light reading. Have them learn the basics, or watch a short video. Get them to a point where they can tell a friend or a family member about coding in a couple of sentences.
Then, have kids talk to someone to learn a bit more.
What really helps something new stick in your brain is being able to talk to someone else about it. Encourage kids to talk to a friend about how the video game they’re playing couldn’t be possible without coding. They can also ask a robotics teacher from school about how programming powers bots.
Never underestimate the value of learning through conversation. It gives children a chance to recall what you’ve already learned while potentially learning something new by listening.
If you simply can’t find anyone in your immediate circle who cares to talk to them about programming, branch out. When we are fee to go out and about again, visit a tech museum, have them join a related club at school.
For now, it could be a small learning group like that of a Virtual Tech Camp. These venues not only offer the chance to learn a new skill, but they also facilitate being able to talk to like minded individuals.
Next, have kids do something. Again, even if it’s something small—that’s OK.
Another potential roadblock to learning a new skill is trying to take on too much right out of the gate. Kids have just learned that programming is the basis for their favorite video games, movies, robots, and more, and they’re all in, ready to develop the next Candy Crush.
Well, while it’s certainly possible, it’s important to maintain realistic expectations.
So, start small. Have them get a feel for programming visually through a program like Scratch or something similar before they dive in to learning how to code. Or maybe they can find an app that introduces them to programming (see the resources at the end of this post).
These types of activities are perfect for anyone who wants to take baby steps towards learning how to program. So again, if practicing time management with your kids, be sure to slot in time not just to learn, but to "do" as well.
Now, have them do something bigger.
Your child has now laid the groundwork and dipped their toe into the programming waters. And while it still isn’t quite time for them to shoot for the stars, they can now begin to set sights on bigger things.
To help facilitate the learning process, help them to stick to something with which they’re already familiar and enjoy. Look into creating a simple iPhone app, or Facebook game. Have them take an online course.
By sticking to areas of familiarity, they’ll be able to more easily see how different pieces fit together and are brought to life through programming.
More on the best coding classes for kids.
4. Ease kids into coding
As you begin to check off the above foundational tasks and start to earn buy-in from your child, you’ll be close to actually getting them hands-on with introductory coding platforms. Here are a couple examples:
As mentioned above, Scratch is a visual programming language, but also an online learning platform and community for beginners. In it, kids can “create stories, games, and animations,” and then share those project creations with like-minded peers from around the world.
If you’re looking for a few self-paced coding learning options, Code.org features a number of computer science opportunities, both in the form of full-length courses and one-hour tutorials.
And tying this opportunity back to what was mentioned above about connecting with already-established interests, much of what Code.org offers is rooted in things like Angry Birds and Minecraft, or coding a dance party with Katy Perry, Ed Sheeran, and others.
5. Make coding tangible
Any parent is well aware of the different learning styles and needs of children. Some can absorb all that’s presented in a book or written on-screen, while others are simply better at learning from listening or watching a video.
And from there, some are just better at grasping concepts when they can physically put their hands on something. For this type of learner, certain coding “toys” like LEGO coding sets and other objects might be good options to introduce different concepts.
For a different spin, the micro:bit is a small programmable computer—about half the size of a credit card, but jam-packed with amazing features like a radio to connect with other micro:bits or smartphones, and an accelerometer to sense movement and rotation, like a Magic 8 Ball!
6. Get familiar with coding terms
At this point, you’re hopefully thinking that this all looks pretty cool and fun, right? But maybe somewhere in the back of your mind you’re also wondering about how all of this works and how you can begin to intelligently talk about how all of this works.
To be fully transparent, there is a lot in the way of coding vocabulary you’ll want to familiarize yourself with when trying to explain coding to kids! We won’t get into them all, but you can kick things off with these.
Variables are like boxes; they hold important information, or data. A variable can hold different data types, such as numbers or words. Think of it like a chest. You can store items inside it, and give the chest a name to help you remember what you put in there.
A conditional statement helps direct the flow of a program. It does this by having some portions of code only run under specific scenarios. Conditionals always use the keywords if, else, and elif (short for "else if").
Loops allow you to repeat a block of code a number of times. For times when a block of code needs to run an uncertain or non-specific amount of times, you use a while loop. On the other hand, for loops run a specific or set amount of times.
Last, functions allow for coders to perform a series of actions rather than writing each separate statement over again and again.
7. Enlist expert help
Try as we might, it’s inevitable that parents are going to encounter some type of roadblock when it comes to teaching kids to code. It might be an advanced concept or simply difficulty keeping your child engaged and motivated to continue. Perhaps you already have encountered such challenges, and that’s why you’re here.
Either way, what are your options?
Well, there is all sorts of information online, so you can continue to research in hopes of finding the answer that fits your situation. You can also simply let your child off on their own to explore different learning tools for kids.
Either option might suffice, or they might fall flat. While there is no shortage of information and self-paced learning options online, there are certain drawbacks when it comes to strict online learning when compared to face-to-face.
One big factor is the absence of 2-way communication. Meaning, most online learning options are passive, and even if interactive, provide no means for students to let a real human on the other side know where they’re struggling, and for that human to then tailor curriculum to address those needs.
It’s a big piece to keep in mind when searching for help.
Should you teach kids to code?
Coding already powers so much of our everyday lives, and it's only reasonable to expect coding to play even a larger part in the future. Thus, coding is looked at a valuable skill that's growing in popularity, yet, access to coding courses for kids and teens might be limited, or simply, not full explored.
For those reasons, it could be fruitful for parents to look into teaching kids to code; at least giving it a chance to see if it's something their children enjoy or not.
Let's approach the topic a little differently; not by diving into the importance of coding, but rather, by talking through some common objections to coding for kids.
Taking a step back to a more general view, if you were to look to the headlines for reasons to do or not do something, you’d find yourself in a perpetual state of limbo.
The Keto diet is good for you! Keto is terrible!
Water is wet! New studies show water isn’t actually wet!
Kids should learn to code! No way—kids should not be coding!
I have some thoughts on keto, and I’m in the wet water crowd, but let's stick to coding, and why it seems, for as much traction and positivity there is around it, there are just as many arguments against it being something kids spend their time learning.
So, here are a few things I’ve heard and picked up on when it comes to why kids shouldn't learn to code, along with my own personal commentary on where I agree and disagree, for what it's worth.
Coding isn’t for everyone.
Just because something isn’t for everyone doesn’t mean that everyone won’t or shouldn’t be encouraged to participate.
For instance, I was a good student, but STRUGGLED with trigonometry. Just didn’t like it. Wasn’t for me.
Unfortunately, though, my personal preferences just didn’t matter at that time, and trying to opt out because I didn’t enjoy this particular math angle wasn’t a plausible scenario.
So, I 100% agree that coding isn’t for everyone—how could it be? (Here is additional info and points to follow when answering if coding could be right for your child.) But that also doesn’t mean we should refrain from encouraging the masses to dive in.
From the segments of kids who give coding a shot, some will end up liking it and pursuing it further, and some won’t. Both outcomes are OK.
Coding isn’t what it’s all cracked up to be.
Some say that coding shouldn’t be pushed so hard because there aren’t any promises that someone who learns to code will be successful in finding a well-paying job, and will end up doing that job well.
I can definitely understand the root of this argument, as pretty much anything you see or hear about coding for kids will certainly be positioning coding in the best possible light.
So, I don’t disagree that coding might not be all it’s cracked up to be...for some. But for others, coding can be all that and more. This is the case with pretty much every other skill and attached future occupation out there. Success is never guaranteed, and at times, might not be tied at all to how much effort someone puts into learning and doing that thing.
But even so, it doesn’t mean we shouldn’t be encouraging kids to code. It can be said that developing skills in one area is better than having no skill at all, right? And in terms of opportunity cost, you’d have to think holding coding skills is pretty advantageous comparatively speaking.
So, will it always work out? No. But there isn’t really one skill area and career occupation where that’s the case.
Kids have better things to do than to learn how to code.
This is one where putting resources into crafting a detailed response just isn’t worth the effort. Really, it’s a completely subjective statement that has no mass application due to the fact that every single kid is growing up in different environments with different circumstances. Not to mention that “better” is also based on one’s own personal view on life.
Some kids might have “better” things to do, and some might see learning to code as the most valuable thing their kids can be doing.
Forcing kids to learn coding might take the joy away from it
So, I can only use my own personal experiences to really help explain a few things with this point.
Growing up, I did a lot, and I felt fortunate to have parents who saw the value in me getting involved in something like team sports.
All of it started for me at a very young age, and so really, the conversation around whether or not I wanted to play went something like, “Ryan, do you want to play baseball?” to which my response in some form was as simple as “yes” or “sure;” a head nod, whatever. I mean, I was 5 years old, you know? I’m not even sure there was a conversation. I just started playing.
So looking at it that way, I was more or less forced to play baseball, and I loved it; it’s still a huge passion.
And I was more or less forced to play basketball, and enjoyed it a lot.
I was also more or less forced to play soccer, and. I. HATED it. Well, I actually enjoyed it for a few years but then just really lost interest.
Point being, I was “forced” to play three sports and ended up playing two of them for years and years, with those sports still being a primary interest and a big part of my life. Soccer, though, wasn’t enjoyable, but it wasn’t because I was being forced to play...it’s because I just didn’t like it, and thus being forced to play from that point on made it that much worse.
So, coding might not be interesting to everyone, and that’s what we just went through with the previous point. But pushing a kid to try coding might not be the root of them eventually not enjoying it at all.
Kids spend too much time with technology already.
Ok. Again, this really depends on the student we are talking about...and “too much” is subjective. Not to mention that all technology isn’t created equal.
I won’t go through all of the different scenarios, but the kid who is playing video games instead of doing homework might be spending too much time with technology in their parents’ eyes. The kid who won’t put their phone down at the dinner table might be spending too much time with technology in their parents’ eyes. And so on.
But the kid who goes to school all day, comes home and gets their homework done, visits with the family, and then plays video games a bit before bed—is that too much technology time? It’s really up to that child’s parents to decide.
Not to mention there is plenty of “good” in video games - and benefits of tech for kids in general - and that’s just a sliver of the different technologies a kid or teen can interact with throughout their days...some of which have a more obvious educational connection, and others that are purely for entertainment.
Either way, there are way too many variables wrapped up in such a statement that it can’t really be used as a reason for kids not coding.
At what age can a child learn coding?
If you're still on board with teaching kids to code, at what age is it even possible?
Kids can start learning coding as kindergartners—that is, they can start the process of learning coding concepts at a very young age. In terms of coding courses for kids, there are many options for children as young as 7-years-old, mostly revolving around something like Scratch.
So, when it comes to whether or not kids should or shouldn't be coding, the reasons for and against will vary by age; knowing that kids as young as seven can start putting the pieces together.
And if that time is now…
For those of you ready and at the point of needing assistance, consider the fact that iD Tech has 1,500 tech rockstar instructors ready to teach; right now.
It’s not just the fact that these are people with a passion for coding and unmatched expertise, but also that they possess the personality and uncanny ability to to bring out the best in your aspiring coder.
These iD Certified instructors are available through private online coding classes for kids and teens known as Online Private Lessons, where students ages 7-19 can learn to code, discover AI, or mod Minecraft via 60-minute, 1-on-1 sessions tailored to your child’s interests and skill level.
And for those seeking the now-missing social aspect, these same instructors are leading the way in our Virtual Tech Camps; structured, weeklong sessions for students to learn coding alongside other students in an online camp of 5 students max.
Whichever way you choose to go from here, take comfort in knowing that you have options! For additional learning and potential next steps, check out the many coding resources below.
- Online learning programs from iD Tech
- Made with Code by Google
- Experiments with Google
Coding Blogs & Organizations
- Coding terms
- Best coding apps for teens
- Computer programming for kids
- How to get coding experience
- How to improve your coding skills
- Is coding for me?
- Is coding a good career?
- Homeschool coding course options