Hi my name is Oliver, I’m a technology and education expert. In this video I am going to tell you about the 4 different methods of how kids can learn coding.


In this article I’ll not just tell you the 4 methods, but I’ll also tell you the pros and cons of each method, because there is no number one winner, there is no 1 method that’s the best and most perfect method for kids to learn, they all have their advantages and disadvantages.


I believe that this is an exhaustive list of all the methods that exists for teaching kids coding, I don’t think there are any other methods.


Quick disclaimer about that however:


I am also the creator and founder of a website CodeClasses4Kids.com and on that site I’ve incorporated all those 4 methods. So at the end of this article I’ll tell you about a free coding course that you can have your kids try, so that they can see what coding is like and if it’s for them.


So that just as a quick heads up for you, let’s dive into the list, let’s talk about how kids can learn coding. What are the 4 methods that you can use to teach kids?


Method number one: 1 on 1 lessons.


This could be private coaching or one-on-one tutoring. It can be done in person, you can have someone come into your house, or you can meet with them e.g. at a library.

Or you can do it even virtually, over a phone / Skype where you do screen sharing or something along those lines. That's actually the main method I have been utilizing for the last five years.

And I tell you what: This method gets some of the best results. It's very effective because you can custom tailor the lesson to the student’s needs and abilities, or their strengths and weaknesses. You can target exactly what the student needs, what they need to improve and work on, and you can also leverage their strengths at the same time and make it fun and individualized.

Of course the downside is that this is a pretty expensive method of teaching because you need to pay for the tutor’s time and experience. So unless you are getting an entry-level tutor it's probably going to cost you a lot per hour for that tutor to work with your child.

The other downside to this method that I found from my experience is two fold.

Number one: It creates a little bit of a bubble.

You just work with that student in that one environment, in the comfort of their home. You only see them there and always tell them what to do.

So that creates a bubble environment where as soon as you're trying to take them out of it and say “hey can you show me what you've learned”, sometimes they end up being lost, because they don't know how to do things by themselves.

And at the same time, very related, is that dependency that we’re creating. Where students rely on the tutor telling them what to do next. Relying on always having somebody to ask questions and find mistakes in their code, for example.

So because of that, there are other methods that are just as promising and just as important. Which is why I prefer not to just focus on this one method but instead create a blend of these methods.


Next on the list we have group classes.

That's the obvious conclusion from doing one-on-one lesson. You’d think if I can get more kids in the same room then the parents can save money and I can teach more kids at the same time. Kind of a win-win situation.

And of course that's the same thing you have in schools these days in classrooms, and you have it in summer camps as well.

So these classes can be short-term or long-term you can say okay we're going to have an intensive course for a week, like a summer camp. Or we're going to meet every Friday at this time and we’re going to do our class here.

And these sessions can actually also be done virtually. You can set up conference calls where you have screen sharing enabled, where kids can view the teacher’s screen and the teacher can see the kids’ screen. This avoids overhead and traveling costs and allows to get people from different Geographic locations in the same place.

Also these lessons can be done in a seminar style, where you have a tutor or teacher explaining everything to the class. Or you could have more of a collaborative environment, where students work together on their own project and the teacher is just there for backup and for help, and maybe to lead the group, rather than to present information and give instructions.

What's great about these types of lessons: I already mentioned of course it's less expensive than one-on-one lessons.

And also as a teacher what I find as an advantage is that you can create a competitive environment where students have to compare each other and then they get incentivized to level up in their skills and perform a little better, if they see they're falling behind. Or if you tell them whoever gets it done first gets a prize or something along those lines. So that's always a good incentive for kids to be really motivated.

Of course it's amazing if kids can collaborate if they're not just using the skill by themselves but if they can exchange ideas and information with other students.

And not to forget it's also more fun to work with others and to be social and have your friends around, and to make new friends in that type of class.

I already mentioned it's less expensive than one-on-one classes, but that does come at a cost which is in a group class you always, without fail, have this difference in skill level.

You always have one student who's really good, even if it's just in one aspect. You have students that get ahead fast and others that fall behind.

So there's always going to be a little bit of a difference. And of course the more people you have in class the greater this discrepancy is going to be.

To be honest I don't know how public school teachers deal with it in huge classrooms with 20 or 30 kids. And that's why I see a downside to those group classes as well: The pace and the efficiency of group classes.

Honestly it's just a really slow process. You have to take the smallest steps possible, you always have to wait for the slowest student. Which, in turn, makes it frustrating and boring for those kids who are a little more talented, because then they end up being bored and distracted and doing other things. Which then leads them possibly missing some things. So even though they're talented, they might still fall behind because they are talented, in a group environment.

In the same token, the kids who are maybe a little slower get often frustrated if they see that everybody else is getting this stuff really fast, but here I am struggling with it. So that can be detrimental to their motivation and therefore detrimental to their progress.

So it's not perfect, it's not ideal either but it shouldn't be neglected. It's an important modality of learning and for kids to also get used to this type of environment where there is always going to be a difference you don't have somebody sitting next to you and focusing just on you all the time.


Method number 3 are Interactive Learning methods, such as educational games or educational apps in general. What's the difference between an app and a game? It's kind of a grayscale. In an educational app its focus strictly on having you do specific tasks so that you master that task. In fact on my website I'm deploying several off these apps helping kids to learn what special characters to use and to type them faster. Or to get used to certain language patterns and structures in coding.

Because as they become part of your muscle memory and you practice them frequently, obviously it's going to help you to achieve what you want to do faster.

There’s lots of apps and websites out there for free that teach you coding, where you have a little box that you type in your code, and then it tells you instructions on the other side so it's kind of like an interactive learning tool.

On the other end of the spectrum we have educational games that take some of the aspects that we need to use in that skill of coding and create a game around that.

I could be like a board game or maybe some type of graphical interface that makes it feel like you're quoting but it's still kind of a game.

The big advantage of these is that they're fun and easy and they motivate you to do them. They have this gamification built-in, where there is an incentive to move forward. And they are actually very effective at teaching you a particular skill really well and training your brain.

Especially for kids! They figure out these patterns really fast you set them in front of a game that's maybe a little challenging the first 5 or 10 minutes but then the next day they try it again and suddenly they are experts at it and they do really fast.

That also explains why kids are so good on phones and computers and all that. Because at a young age they figured out these devices and the interface and how to use them and now they are masters at them at a very young age. Which is exactly why I think that it's a good idea to teach kids coding before they are teenagers so that they learn this skill early on.

Now even though these apps and games use gamification to make it more motivating, more engaging, and almost more “addicting” to engage in a learning activity, and to use these apps, it still does require the incentive to go and sit down and do the app and learn the skill.

But I guess that's a problem in general about learning. Why do you even learn anything? You need to have a drive. You need to have a reason why you want to learn a certain skill. Going through the work needs to be rewarding in itself. And you need to see the goal beyond that. What do you want to achieve with it?

But also another downside I see to only using apps is that that often their real life application is pretty questionable. The apps that I’ve created, I'm not claiming that these apps themselves will teach you coding and make you ready to work at Google or some technology company, or create your own app or video game.

These apps train you in one little specific skill that's a big part of coding, but they don't necessarily give you the full picture.

Finally, the fourth and last method and without doubt the most important method to learn coding is traditional self-guided methods such as video lessons and tutorials, or books or articles, or any type of online resource to see the information and apply the information at your own pace.

Why is that the most important method for learning? Because that's exactly how coders learn in the real world. So if you are a software developer and you have a job, you’re employed somewhere, there's always going to be something you have to learn. Maybe you've heard this before that technology always evolves and you always need to be learning as a programmer. And that's true to the point that there's always going to be some technology some programming language some type of application that you need to figure out and learn. So it's definitely a very important skill to be able to do your own research and find the right resources to help you solve a problem or acquire the type of knowledge in the type of skill you need to solve a certain problem or to fulfill a task.

So this method is the best way to learn coding because it's most applicable in the real world as a software developer. And also it's so important because it teaches you that skill of learning how to learn. So using the method makes you better at learning which is in itself a good thing.

The two big problems with this method however are that there is nobody available to help you, and that it requires your own motivation to move forward and to get started. There is no gamification, there is no leaderboard. It's not just a simple button you can press, and you will advance to the next level. You have to keep digging through it and just figure out the reward by yourself. Once again: see that greater picture for yourself.

But because this is the best and most important method to learn I think that any approach should be centered around this method.

So that's exactly what I'm doing in my free coding course: I give kids video lessons, instructions, and tutorials and they have to complete it at their own pace. If they get stuck, if they have a problem (which happens a lot when you're starting out to code: You make a little mistake, you didn't even notice, and now you need somebody else to show you). I'll be there available to help, but I also have built tools that can help kids find their own mistakes.

So with these four methods - 1 on 1 coaching, group classes, interactive learning materials, and self-guided learning materials -  if kids have access to all these, they are best equipped to learn coding effectively, efficiently and become super successful.

If you want to try my free computer programming course for kids, check out my website CodeClasses4Kids.com or CC4K.co. Everything you need to know is on that site. I look forward to seeing you there!

If you have any questions let me know below in the comments. Make sure you like, subscribe, and share this video with anyone who could benefit from it or anybody who could be interested in it.

Thanks so much for reading I look forward to seeing you on the other side!