How to Choose a Computer Programming Language for Kids

23 April, 2020

  • How to Choose a Computer Programming Language for Kids

    How to choose the right coding language?

    • Grade: Children can learn to code at any age, but some types of coding are only suitable for grade 10+ while others are easy enough for grade 1s.
    • Experience: Like human languages, the ease of learning a computer programming language depends upon which kind of languages your kid already knows. If the languages are related, then they will be much easier to learn.
    • Goal: Though there are some very versatile languages like Python, most languages are limited to a specific field like web programming or android app development. The most important thing when choosing a language is to pick one that best suits your child’s interests and goals.

    “A journey of a thousand miles begins with a single step”

    The world of computer programming can often seem daunting, like that thousand mile journey. Many give up at the first step because they don’t understand the terminology and feel lost. For kids especially, its vital that the beginning of their computer programming adventure starts off on the right foot. Giving them a programming language that’s too hard or not in line with their interests could put your child off coding for good.

    Thankfully, choosing the right programming language for your child isn’t difficult. It’s just a matter of deciding whether a high-level, low-level, machine or markup language will best align with your child’s aspirations and then narrowing down to a particular language (like C++, Python, Java, JavaScript, HTML, XML etc.).

    Simple. Except, of course, to the average parent this sounds like rocket science!
    For your kid’s sake, don’t let the jargon scare you. By the end of this article you’ll be fluent in the A-Z of computer programming and you’ll know what language will get your kid mad about computer science.

    Basic Programming Jargon

    Basic Programming Jargon

    A computer relies on two things: hardware and software. Software is made up of many programs which are saved as files on computers. Inside those files are lines of code, or instructions. To the layman, this code looks like a jumble of words, symbols and whitespace. In fact, the code is made up of keywords and normal words arranged according to rules or syntax.

    Programming languages aren’t actually that different from human languages, which is why they are referred to as high-level languages. There are countless types of high-level languages, so to make things easier we can classify them into four categories depending on how they are written (more on that below). But, regardless of the category, all languages must be transformed into strings of numbers or low-level, machine languages for computers to be able to understand them.

    Main Types of Programming Languages

    Main Types of Programming Languages

    1. Compiled Programming languages have to be written out fully before they can be run. This is because they can’t be processed line-by-line like other languages. Examples of compiled languages include C++ and BASIC and, as a rule, they are harder to learn than other languages because they can’t be tested and edited.
    2. Interpreted Programming languages can be found all over the internet. JavaScript is the most well-known of these languages. It’s a great option for kids because interpreted languages run line-by-line which means it’s a lot easier to pick up mistakes and fix them.

    Programming languages can be further broken down into two additional categories:

    • Procedural Programming is the mother of all programming languages. It’s really useful for understanding the basics of how computers think with its “if this, then that” structuring.
    • Object-Oriented Programming is the language professional programmers use. It’s a lot less intuitive than procedural programming to write because it’s a lot more complex. It consists of many different objects (which are like mini-programs) interacting with each other simultaneously. If procedural programming is like a step-by-step list, then object-orientated programming is like a giant mind-map which can be extremely confusing to follow. Hence we recommend learning an object-oriented language like Java only after your kid has learnt a procedural programming language, like Python.

    Choosing the Best Coding Language for Your Kid

    Best for Beginners

    Best Programming Languages for Beginners

    Visual Programming isn’t really a language because there’s no coding involved. It’s actually more like Lego than a language. Kids with no knowledge of programming can start building programs by dragging and dropping blocks (which code for different actions) in a sequence. While having fun making simple video games, comics and more, kids learn how programs are structured and how computers execute code.
    We teach two types of visual programming, Kodu and Scratch.
    Recommended Grades: 1 - 5

    Best for Aspiring Programmers

    Coding with Python

    Python may sound scary, but it’s actually one of the easiest and most versatile coding languages to learn. Kids love Python because it’s simple syntax and short lines means they get to see the results of their work quickly. Surprisingly, this relatively simple language is used in AI and many other scientific fields. Giants like Disney and Google also use it, as do many other video game developers and web-based companies.
    Recommended Grades: 6 – 8+

    Best for Web Designers

    JS, Java Script for children

    JavaScript is slightly more complicated than Python because it is an
    object-oriented language. Because JavaScript is native on all web browsers, it is really important that your kid learns JavaScript if they want to develop websites.
    Recommended Grades: 4 – 8+

    Best for Gaming Addicts

    Moding in Minecraft with Java

    Java is the language behind your kid’s favorite game: Minecraft. Though you may think that— judging by the blocky, pixelated nature of Minecraft— Java isn’t sophisticated, it is actually one of the most difficult languages to learn. Apart from video games and mobile apps, Java is also used in huge backend programs because it is a very practical language. That, of course, doesn’t matter to your kiddos. What’s important for them is that by learning Java they can create their own mods for Minecraft, in other words, they can hack the game!
    Recommended Grades: 4 – 8+

    Best for Serious Programmers

    Future programmer, CodeAdvantage

    C++ is the language to learn if your kid or, most likely, teen is sure they would like to pursue a career in programming. It takes time and determination to learn such a complicated language as C++ but the results— a solid programming foundation and killer CV— are worth it. The uses of such a powerful language are endless; it’s the number cruncher behind PayPal, the radar eyes of flight scanners and the software running thousands of Microsoft applications.
    Recommended Grades: 8+

    Once your child has learnt the basics through visual programming, they should have an idea of what areas interest them. The future of all programming languages looks bright, so let your kid follow their heart and success will come along the way. Of course, there’s no need to limit your kid’s choices to just one of these languages, but it is important that they start with the basics and then focus on learning one language at a time. CodeAdvantage offers a variety of online coding classes and summer online coding camps.

    Photos by Jessica Lewis, Émile Perron, KOBU Agency, Hitesh Choudhary on Unsplash