Teaching your child to code in the age of remote learning

Interested in finding something worthwhile and entertaining to teach your children for free while they are participating in remote learning at home? Why not teach them about computer programming. This is a skill that will serve them well in life no matter what path they take.

When I decided to start researching resources for my children, I had a few specifics in mind. First, my kids are 5 years apart, so they are at very different levels of education. I knew they would need very different programs for learning coding.  When my teenager was 5 we started with some coding games, so she already has some familiarity with the logic involved and would need a different level of instruction than my youngest, who would be starting this for the first time.

Here are a few answers to common questions about teaching your child how to code – and then we will look at which resources are good for your child no matter what age they are.

Why would you want your kids to learn to code?

Why might kids want to learn to code? They can learn how an app works and how to build their own cool games. Coding skills will also teach them to make cool animations for videos and improve their video game skills. 

The skills your child will gain from learning to code will help them throughout life. From problem solving skills, increasing creativity, improving analytical thinking and reasoning skills, understanding computer programming and communication skills, to future potential job opportunities. Even if your child never pursues a career in computer programming having an understanding of basic coding is a big advantage.  

What coding language should you choose?

Many of the resources below start by using visual block platforms. This is a good early format to get kids interested and engaged in learning visually how programming works.

Once your child’s skills have moved beyond this type of instruction it is best to follow a path that caters to your child’s interests to keep them engaged. Moving from learning visual programming languages based on blocks directly to most development languages would be a stretch. It would be a good idea to start with a language like Python. Python is a very modern language and can teach all the important object-oriented concepts. It is super versatile for so many applications, and it is extremely easy to learn. Once you have mastered Python it will then be very easy to learn new and more complex languages. For example, to learn C++ after you’ve mastered Python is a piece of cake, and Python is one of the primary languages used for AI, robotics, and many other areas, so it is a great language to also use – not just a teaching tool.

From Python you would want to continue based on your child’s interests. For instance, if your child is interested in gaming you could continue their coding education based on languages used in gaming such as C, C++, C#, Java, and JavaScript. If your child is interested in robotics you might consider Python, C++, or Java. If building a website is of interest to your child then you would consider JavaScript, HTML, CSS, C++, or SQL. It is important to research a language that is appropriate for your child’s specific interests to continue to keep them engaged and motivated.  

What should I keep in mind when choosing a starting point?

The most important thing in getting started is to ensure your child has fun doing it! If your child isn’t having fun they will lose interest and not want to continue. The list below is based on age. You don’t want your child to start using a teaching resource that is too advanced for them or they will get frustrated easily and not want to continue. Start with an age appropriate teaching tool first and then move up or down depending on your specific child’s skills and interest. Most of these programs cater to a range of skills.

Free sites for kids to learn to code

Ages 4-12 (elementary school)

Code.org is a free resource that is based on game-like lessons for grades preK-12. The company is a nonprofit dedicated to increasing access to computer science. On top of their lessons and courses, they have options like “hour of code” for people who only have a short time to dedicate to increasing their knowledge and interest in computer science.

Scratch is also a free resource, good for beginners interested in game development and graphic design. It uses a visual block interface. Scratch was developed through the MIT media lab for kids aged 8-16 with a ScratchJR version designed for ages 5-7. Scratch is a programming language as well as an online community where students can share the projects they create such as stories, games and animation with other people who use Scratch.

Blockly is a free resource, that is ideal for beginners. The games offered can be downloaded and used off-line, which are very convenient. Blockly introduces JavaScript in game-like lessons. These games are designed for children who have not had prior experience with computer programming.  When children finish the series of games, they will be prepared to use conventional text-based computer languages.  

Tynker offers a few free and many paid options. They claim they are the #1 coding platform for kids, with 60 million kids worldwide utilizing their services. The flexibility in the program allows you to move at your own pace, making it easy for students to advance when they are comfortable and have mastered the concepts before adding more complexity. This program is good for beginners, and offers game like lessons. Tynker mobile apps can be used on iPads or other devices to make it easy for kids to access it when convenient. This is the program we started with for both of my children as a first resource. It held their attention and they both (boy and girl) enjoyed the challenge and progression of the lessons. It kept them engaged and wanting to continue learning.

Ages 11+ (Middle school)

Code Monster is a free service and is a good supplement with other programs. Code monster teaches Java. Opening this link brings you right into a program with a cute little blue monster that starts giving you instructions in one box and in the adjacent box you can see the results of your work instantly. The program encourages you along the way and you can move at your own pace. 

App Inventor is a free service focused on teaching users to create apps quickly using a visual programming environment. The format is a block-based coding program. App Inventor was created through an MIT project.

Code Avengers offers both free and paid options. Their courses teach foundations of: Python, HTML and CSS, JavaScript, Web development, and design. Programs for older kids (ages 5-16) have foundational, intermediate, and advanced courses. You can upgrade your account to Pro for courses teaching theoretical knowledge in computer science and design.

Code WizardHQ is a paid service with 12 week long,  live taught courses for kids and teens. CodeWizardsHQ says their curriculum is more comprehensive and structured then any other online coding program available. They offer options for learning HTML, CSS, JavaScript, WordPress, App development, Python, Git and MySQL.

Scratch mentioned above in the elementary school section is also a good choice for this age group.

Ages 13+ (High School)

Glitch is a service for building fast, full-stack web apps in your browser for free. They offer a subscription option as well. This program does not appear to have “lessons” per se as much as you just jump in and start playing around with creating an app. Multiple people can work on the same project at a time (similar to Google Docs). There is no set up and you can see changes live on the web as you type.

Khan Academy is a nonprofit with a mission to provide free, world-class education for anyone, anywhere. Your child may already be familiar with the platform, which is also popular for learning mathematics and is being widely used during this period of remote learning. They have options for courses in Computer Programming for learning JavaScript Drawing and animation, making webpages with HTML/CSS, intro to SQL and many more options.

Code Wars offers many language choices (JavaScript, Python, Ruby, C#) and is an educational community for computer programming with similarities linked to Karate martial arts. Training challenges are called kata. By completing the challenges presented you can achieve Mastery in one of 28 languages. To sign up you must “prove” your skills by selecting a language and solving a problem in that language.

Vidcode offers limited 10 hours of free activities. The company focuses on reaching teens (especially teen girls and underrepresented groups) through computational media. In other words the platform allows teens to connect computer programming to interactive media (photos, illustrations, videos, and audio) that they are already comfortable interacting with on a daily basis. Vidcode utilizes a drag and drop environment to teach computer science principles that moves into text-based programming with JavaScript.

Scratch mentioned above in the elementary school section is a good choice for this age group also.

These are just a few of the resources I have come across. We have no affiliation with any of these programs and they were chosen and evaluated without these organizations’ knowledge.  This is by no means a comprehensive list. We encourage you to dig into other resources you find and drop us a line about your favorites for your children.

Tags: , ,