[Education] Why your child should NOT learn a programming language

Young coders in action. (Scratch Facebook Page)
Young coders in action. (Scratch Facebook Page)

by Marcus Goh and Adrian Kuek

Young coders in action. (Scratch Facebook Page)
Young coders in action. (Scratch Facebook Page)

The emphasis on teaching children coding to prepare them for the future has led to many students learning programming languages en masse. However, that’s the very last thing a child should do, especially those who are much younger.

Instead, you should ask your child to learn block-based programming using Hourly or Scratch instead, since they serve as a gentler and easier introduction to programming concepts.

Think of it as learning Maths using number blocks versus using algebra. For a young beginner, number blocks would be easier to understand and less daunting, hence making it easier to cultivate a love for the subject. Plunging a Maths beginner straight into algebra would probably kill off any interest they have in the subject, and they may end up not learning anything at all.

Similarly, learning block-based programming would be a less frightening prospect. It eases the student into the basic principles of programming, and once they’ve had a few successes in block-based programming, they will have the confidence to start coding on their own.

Happy coders. (Pixabay)
Happy coders. (Pixabay)

What’s block-based programming?

Block-based programming consists of putting together “blocks” of pre-written code, instead of having to write the code from scratch. It’s also known as block-structured programming.

In block-based programming, many functions are already prewritten. Each prewritten function is a block, and these blocks are often colour coded according to their categories. So, for example, instead of having to type out a line of code to instruct your app to open your browser, that line of code has already been written as a block, so you just need to drag and drop it in the necessary positions.

What a student has to do is to fit different blocks together and change the variables accordingly. For example, if you would like to build an app that switches on the air-conditioner when it’s too hot, you would use the block that detects temperature to trigger the block that switches on the air-conditioners. You would have to set the temperature at which the air-conditioner is switched, which is the variable in this case, which might be 30 degrees, for example.

The best part about block-based programming is that the blocks are designed to fit together like a jigsaw puzzle, so if two blocks don’t fit it means that the string of functions potentially does not make sense.

Face-to-face with code. (Pixabay)
Face-to-face with code. (Pixabay)

Benefits of learning block-based programming vs a programming language

One very tangible benefit is that you can see the effects of block-based programming immediately. If you were to use a programming language, you would have to compile the entire string of functions together in order to test it. For block-based programming, you can see the effect of a change in a line of code almost instantly.

The second benefit is that debugging, or troubleshooting problems in the code, is much easier. For block-based programming, you only to need to spot logical errors, since the code is already prewritten. To debug a program using traditional programming languages means looking out for errors that could come from typos, such as a wrong character tucked in the middle of a long string. You’d need to look out for both logical and typographical errors in that case.

The world at your fingertips. (Pixabay)
The world at your fingertips. (Pixabay)

Finally, since block-based programming teaches the basic principles without necessitating the learner to learn specific syntax (think of it as the spelling and grammar of a programming language) , it gives you the foundation to learn any other programming languages later on more easily, since they all follow the same general principles.

Not sure where to start learning block-based programming? Check out MIT’s Scratch or Hour of Code which is simple enough to be used without guidance, and see if your child likes it!

Never too young to learn coding. (Pixabay)
Never too young to learn coding. (Pixabay)

This article was written for and first published on Yahoo Singapore’s Grade Expectations.


Grade Expectations is a weekly feature on education in Singapore. Expect fun activities, useful tips and insightful news on learning. It’s not just about your child’s grades — it’s about raising a great child!

Marcus Goh runs Write-Handed, a creative writing studio. At the same time, he teaches English at The Write Connection. He has been a specialist tutor for English and Literature (Secondary) since 2005.

Adrian Kuek runs Joyous Learning, an enrichment centre that specialises in English, Mathematics, Science and Creative Writing for Primary. He previously served as the academic director of one of Singapore’s largest enrichment centre chains for over seven years.

If you liked the article, follow me on Facebook and Instagram for more updates!

To get in touch with me, send an email!

 

Be the first to comment

Leave a Reply

Your email address will not be published.


*