Robotics and coding enrichment programmes have recently emerged as one of the newer enrichment programme to become a hot topic among parents. The various nationwide coding programmes announced by Singapore’s Ministry of Education have brought such enrichment programmes to the forefront. Many young parents have also worked in a company affected by computerised automation, or seen the fast moving changes brought about by digitalisation.
We are experiencing a shift from computer literacy to computing literacy.Alan Yong, Nullspace Robotics
Robotics and coding enrichment programmes may be one way to introduce computational thinking and programming skills to kids at a young age. But what are the differences between the two? And how young is too young?
Coding programmes focus on software while robotics programmes covers both hardware and software
Most children coding programmes typically involves a graphical drag-and-drop block based programming interface. This helps to remove the need to memorise programming syntax (semantic rules unique to each programming language), and most kids will find it easier to click on programming icons rather than type out codes on a keyboard.
A typical coding enrichment programme could cover animation, game creation, mobile app development, or a general purposed programming language such as Python for older kids. Common among all these programmes is that the student is working on a digital project.
Robotics enrichment class using LEGO Mindstorms EV3
Game coding class using Scratch
A robotics enrichment programme on the other hand involves hardware which at the minimum consists of a microcontroller (brain), sensors, and actuators (motors, relays). Students will too learn programming but they will also spend time on robot construction and even electronics circuitry.
Which programme is right for my child?
With a plethora of course options, this is one of the most frequently asked question.
Choosing between a robotics or coding programme usually boils down to a child’s interest and preference. A robotics programme can sometimes be relatively easier to ease into because of the physical nature of the programme: build a robot that can navigate out of a maze, build a robot arm with precision control, etc. A child can easily see a tangible outcome of their intangible program. A robotics based programme involves hardware and software and this encourages the student to think across multiple domains. They may also learn skills such as hardware tooling and machining, and even electronics circuitry.
Student Project: an Arduino-based safe deposit box with an electronic keypad, LED indicators, and motorised lock system
On the other hand, we have also taught children who are more visionary thinkers; they can solve problems in their head and they get put off when the ideal solution in their head is hampered by real world hardware inconsistencies. Coding programmes are typically separated into two categories: block based coding (e.g. Scratch, Minecraft) and text based coding (e.g. Python). Block based coding is useful for teaching computational thinking skills (sequential commands, logic selection, repetition) while text based coding is closer to real world programming applications (e.g. data analysis, web applications, mobile app development).
Student Project: Recognising handwritten numbers using neural network written in Python
If you are still unsure, take advantage of trial classes or discounted introductory classes to let you and your child have a feel of the content and the instructors. Most enrichment centres will also be happy to provide a tour of the place and for you to interact with the instructors to find out more about their programmes.
What age should I start them off?
Certain programmes have a recommended age requirement. For example we start our Scratch Junior Game Developer Programme at age 9 and our Python Junior Data Analyst Programme at 11. This is based on our assessment of the content difficulty, usually based on the math concepts or logical thinking process that students are taught in schools at their level. With that said, we certainly have had younger kids or even adults enroll in these classes.
Generally we do not recommend any robotics or coding programmes below the age of 8. Most kids are still developing their cognitive abilities (reasoning, abstract thinking, complex idea comprehension). Some mathematical operations (inequalities, algebraic formulaes) commonly used programming may be too difficult and it may kill off any budding interest. However as with any parenting pedagogies, you can always find equally convincing arguments, products, and classes for younger kids.
What can my child takeaway from these classes?
Computational thinking and problem solving are the most direct skills to be learnt from robotics and coding programmes. When students work together for competitions they learn very important collaborative social skills as well.
However the biggest takeaway is actually for kids to be familiar with creating with technology. This generation of kids and the ones after them are digital natives, they grew up with internet, smart phone, and social media. They live and breathe technology. To create, adapt, and innovate using technology is quite a different thing.
The reason we send kids for swimming classes is because swimming is an important survival skill, not so much because we want them to become competitive swimmers. In the same way exposure to technology engineering in kids is an important survival skill in the digital age. Not everyone will be engineers, but everyone needs to have engineering skillsets. You create or you sink.Alan Yong, Nullspace Robotics
In this regard, it does not matter so much which robotics platform or programming language they learn, so long as they learn it right. New platforms and new programs spring up every year. In the past decade alone we’ve seen terms such as big data, artificial intelligence, block-chain, cloud computing enter everyday lexicon. Who knows what the next decade may bring?