#coding #earlylearners #learnthroughplay
I co-authored this article with Ms. Felicia Cheah and Dr Emily Chung-Moya last year. We are passionate about our kids and how they learn. We are sharing some pictures of the coding activities that we have run with our kids and their friends and what we have learnt.
What is coding? We asked an early learner. His answer: “Coding, is like… with the Cubetto board, you put chocolate cookies on it, and then you can make Cubetto go!”. He has been exploring coding using a robot called Cubetto which allows off-screen coding. From a professional point of view, his answer will not be technically correct. However, if you tell other early learners, they will resonate with the core concept embedded in this statement – you make a robot move by putting commands on a controlling board. That is the basic concept of coding. Simple and pragmatic. Kids as young as three years old can have a good grasp of this concept, and they want more! However, the approach of teaching young kids how to code could influence and motivate them to continue learning as they grow.
What coding is not?
While there are supporters and opponents of teaching early learners coding, we leave this debate to other forums. What we are going to discuss below is what coding is and is not in early childhood education. We hope to shed some light on coding becoming a curriculum in schools for early childhood educators as well as parents.
Coding is not just about learning a specific programming language. It is strange that some parents enrol their preschool-aged kids in Python-coding classes. Kids at this stage are learning their alphabets. Why do parents expect their kids to be capable of writing word-based programs?
Coding is not about discovering a gifted programming genius. Although there are many gifted children among us, we should not limit our scope of teaching coding to young learners with the focus of one day they will be the greatest coder in the world. We do not teach our kids English and Mathematics expecting everyone to become the next Shakespeare or Albert Einstein.
Coding is not about memorising and copying what others have written up. Classes that merely show young learners existing codes and let them copy and repeat as a learning outcome will deter their creativity. In the long run, these young learners will develop a fixed mind about coding and form the impression that they know it all; and then stop learning altogether about it.
Coding is not just about developing software on a computer. Computer science specialists write software as part of solving a problem. Therefore, without an understanding of a context, one cannot develop useful and effective software. Coding is a problem-solving tool; it is (a part of a) a means to an end, rather than the end in itself.
What is coding?
One can see coding as literacy, similar to English and Mathematics, which helps build a strong foundation for us to achieve specific goals, communicate and collaborate with others, and make rational and informed decisions. What exactly is coding?
Coding is about solving a problem. For every coding task, there is an issue to address or a problem to solve. In early childhood education, this is an integral part of learning. Young learners focus on solving different problems, rather than learning a specific method or programming language. Furthermore, educators and parents should link every coding exercise to things and matters in our daily lives that our kids can make an easy connection with, resulting in more effective learning.
Coding is about developing algorithm thinking. The approach to teaching young learners how to code should involve the development of algorithm thinking. Educators and parents can use story order to motivate kids to think step-by-step how to solve a problem in order to introduce the concept of an algorithm. For example, ask them the order of tasks they perform when they get up in the morning. By building algorithm thinking, kids can approach a problem more effectively.
Coding is about developing computational thinking. One important aspect about teaching young kids about coding is helping them to achieve one learning block at a time. In learning how to code, we should teach young learners how to break down a problem, identifying patterns, recognising pattern groupings, using data and information, and developing an algorithm. Developing computational thinking is the foundation for solving complex problems and deriving pragmatic solutions in adulthood. Therefore, when young learners can build a strong foundation in computational thinking, they can be effective and independent life-long learners.
Coding is about creativity and innovation. Coding in early childhood education, if taught with the right approach, will promote the building of flexible mind, as coding focuses on problem-solving, development of the algorithm and computational thinking. Allowing young learners to approach every coding exercise in their ways will promote creativity and innovation, which in turn will nurture them to become independent and original thinkers and decision makers.
Back to our early learner’s description about coding. It is not hard to understand that he is free to develop his understanding of coding by linking what he likes in his daily lives, chocolate cookies. Also, we can also imagine from his response that he is exploring coding through play and using tangible (touchable) concepts, such as a robot called Cubetto, some physical command blocks which he likens to chocolate cookies. The concept then concludes with he can control a device by using a board with inputs (chocolate cookies) on them. This just shows how young learners mind’s work!