by Marcus Goh and Adrian Kuek
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.
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.
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.
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.
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.
To get in touch with me, send an email!