Sekolah Kebangsaan Sena

Programming For Kids

Computer instructions made easyComputer programming can be losely defined as writing down a sequence of instructions to tell the computer to perform a task as dictated by the programmer. We once wrote about how a programmer can be compared to a chef, mixing up various ingredients in measured quantities and cooking them in a somewhat precise manner to produce a final product (food) that can be used (consumed) by the end-user (customer) without knowing the ingredients in the first place. The questions are, what language do we use to write down those instructions, and how do we learn to use them?

As it turns out, there are many programming languages available in the market today, that listing them one by one in any sorting order will be too tedious. Those interested to know can visit sites like Wikipedia to learn the hundreds of languages in existense, some still in active use today, others going out of fashion a long time ago. There areThe Scratch interface what some would call 'pure' programming languages, such as the C language, Python and COBOL. Apart from those, there are also languages built for the web, such as the ubiquitous PHP which form the basis for many of today's popular Content Management Systems (CMS) such as Joomla!, WordPress and Moodle. The learning curve exhibited by each of the languages depends on its syntax (the written form) and purposes.

Fortunately for young children, there are programming languages created especially to help them learn the concept of sequential instructions and the intricacies of computer programming. There's KTurtle, which was developed as part of the KDE Education Project with the aim "to make programming as easy and touchable as possible". Then there's Alice. Dubbed as "a new way to teach programming", it uses a 3D environment and animations to make the process more enjoyable for kids. Finally, we have the main focus of our discussion for this article, Scratch, a programming teaching tool developed at the Massachusettes Institute of Technology (MIT) with a drag-and-drop programming style and an online sharing network so children can present their products to friends from all over the world.

Scratch is primarily a software used to teach children how to write computer instructions in the sequence that they want the instructions to be Magnetic confinement scriptexecuted. For example, the sequence shown at the top of this article means that the character, or Sprite as they are known in Scratch, will first move 50 steps to the right, then turn 45 degrees clockwise. A reverse sequence will mean that the Sprite must first turn 45 degrees before moving 50 steps, ending up in the South-East corner instead of directly on the East side of the grid (the x-y vectors lie in directions as conventionally used elsewhere). A complete sequence of instructions is capable of producing complex animations, storylines and even exciting computer games.

Moreover, there is a side benefit to Scratch, in the sense that it can also serve to pique the children's interest in various other educational fields such as Physics, English and Mathematics. We have found that done the right way, theoretically difficult concepts such as magnetic confinement in fusion reactions and the particle scattering effect can be rudimentarily visualized using Scratch. And the best part of it is, the children work to produce those visualizations themselves instead of just acting as spectators in a show created by their teachers. Our latest module teaches the kids on one of the basic aspects of computer security, that is, hiding messages behind a password verification procedure.

Some people may argue about the efficacy of using drag-and-drop method as well as cartoon animations to teach kids the values of computer programming. It should be noted that the classes we conduct are not necessarily meant to produce future programmers, or even scientists. The more important objective of the course is to produce young children with a well developed sense of curiosity ("Hmmm, I wonder what this button does...") and are tuned toward intellectual pursuits more than anything else. In a culture where hedonistic tendencies hold a grip on almost all levels of society, being able to teach the next generation to love thinking creatively and critically is a reward unto itself. Furthermore, there is also the added benefit of helping them to create meaningful relationships and interactions with friends from all over the world. To know that we're all not that much different from each other, and that our capabilities and achievements mostly dependParticle scattering effect on how hard and how sincere we strive for them, not who or what we are. It is toward this end that we registered the school as one of the venues (the first in Malaysia) for Code Club World, a worldwide network of coding clubs for children in order to expand our programming curriculum and generate more participation among our students.

Can children actually do it? Are they even interested at all? If a not-so-recent news from Ethiopia is any indication, it seems that kids today can pick-up technically challenging skills without knowing English, or even how to use a computer. Kudos to the people on the One Laptop Per Child (OLPC) project. Our own experience shows that as long as you can capture the attention of the children and keep it with you through a class session with engaging activities, they will not merely perform well, they will also spread the news! Our own coding club has expanded from 40 to almost 200 strong, and the Scratch scripts we use to teach get more and more complex everyday.

As a conclusion, we are in the opinion that teaching programming and any other modern computing skills to young children is not only beneficial, it is also critical to meet the demands for a more intelligent future generation. There are many tools available out there if you're planning to start a children's programming class of your own. Join Code Club World, or the Scratch community to share codes and experience. Let the people around you know about the existense of these tools and networks so that they can be a part of it too.

Scratch scripts and images shown in this article are real scrips used in our programming classes at SK Sena. Click on the thumbnails to obtain the full-size versions.

UPSR 2018

24.09.2018 08:00


Free Software For Education

A Word From The Creator Of Our Favorite Computer Operating System

Q: So, how do you feel about potentially billions of dollars of wealth being created from your creation that you're not necessarily directly cashing out?

A: So? If I hadn't made Linux available, I mean, I wouldn't have gotten a name, (or) money that way either. So I mean, it's a win-win situation. Just the fact that there are a lot of commercial companies, means that there are a lot of Linux people who used to work on Linux (kind of) along the side, and now they get paid for doing what they wanted to do. That helps me in the sense that I wanted them to work on Linux anyway.

- Linus Torvalds



No To Restricted Boot

This work by Erik Steinmann is licensed under a Creative Commons Attribution 3.0 Unported License.

Creative Commons License



Vote for open innovations and competitive technologies. Keep Patent Trolls™ out of education!


Kerajaan Negeri Perlis

Anuban Satun School, Thailand

Laman Wikipedia SK Sena


Unit Pemodenan Tadbiran dan Perancangan Pengurusan Malaysia

Open Source Competency Center

Multimedia Development Corporation

Suruhanjaya Komunikasi dan Multimedia Malaysia

Kementerian Pendidikan Malaysia

Suruhanjaya Perkhidmatan Pendidikan Malaysia

Universiti Malaysia Perlis

Universiti Sains Malaysia

Universiti Pendidikan Sultan Idris

Institut Pendidikan Guru Perlis

Jabatan Pendidikan Perlis

Bahagian Teknologi Pendidikan, Kementerian Pendidikan Malaysia

Bahagian Teknologi Pendidikan Negeri Perlis



Groklaw - Digging for Truth

GNUs Not Unix


The Internet's #1 Education Site for K-8 Kids and Teachers