Catch them Young: A Short Plea for Programming at an Early Age.
I’ve had the privilege of learning how to code at an early age of 12. Our mission now: enabling today’s children to get this chance as well.
At any given moment and any given location on this world, a quick glance around you will undoubtedly show at least one aspect which has been affected by technology. To be a rather specific: affected by software. Even if it were the groceries you just paid for (by card), the carefully calculated flight path of an airplane flying over or the fading EDM music playing in the background: if it wasn’t for software, our world would be a completely different place.
And although arguably software could be used for doing bad as well as good, one can not go around that fact that software plays an important role in our society. And this is not new. We’ve seen throughout history before that certain disciplines played a growing part in our lives over time. There was a time in which religion was not that important, after which it became a guiding discipline. There has been a period in which calculus wasn’t that big of a deal, now, it unmistakably is the most important pillar of modern science. Understanding physics has been neglected for a long time, but nowadays you can’t get around it. And every-time something became “a thing” in our lives there was always one (logical) thing we’d done: pass it down to the youngsters of that generation. In this plea I argue why we feel that we are on the verge of changing again: programming deserves to be passed down as well (as standard part of the curriculums in high school courses).
“If I were a French student and I were 10 years old, I think it would be more important for me to learn coding than English.” ~ Tim Cook, CEO Apple Inc. (source)
Code is an universal language: teach children to write too
The language behind programming languages is universal: it’s logic. It is logic which forms a gateway to all the other people on this earth. Children, starting from very young ages, grasp this concept. How many kids have you met who clearly are more digitally skilled than you are? You could say that the children of today are digital natives… Well, actually, not quite yet. Although they seem to understand technology perfectly, most of them aren’t able to create (creative) technology. It is if they can read, but not write. (Mitch Resnick, MIT Media Lab).
It is imperative that we give our children the toolkit to be able to participate in shaping the world as well, rather than only consuming of it. We should enable them to create and express themselves in new technologies through coding.
Preparation of the future
If you are stuck in the mindset of previous generations and just desire your children to have good job perspectives: this in itself is a perfectly valid reason as well! Almost all employers require their employees to have fluent digital skills. This doesn’t necessarily mean that one should be able to write a script, but believe me when I say that it makes everything a hell of a lot easier.
As a teenager, in high school, this one time we had to solve the same math problem over and over again (I believe it was as simple as calculating the surface of figures). I figured that investing time in a simple program to calculate it for me, would give me loads of spare time (which I again could spend on programming websites for the neighbourhood butcher). To date, in our company, we all share this mindset. If you have to do a task twice: consider automating it. If you have to do it three times: definitely automate it.
Regardless of the branch you’ll we working in: programming will prove to be a useful tool.
Computational thinking: stay calm and solve
I personally believe that happiness is closely linked to the development of ourselves. If today is the same as yesterday, we feel like we’re stuk and not making progress. This doesn’t mean that we always have to strive for the best, but just for a little better everyday.
Children are professionals when it comes to learning. Their are senses capturing input, their untouched brains are processing them, withwhich they create their own version of the world. For a long time now, we successfully thought them language to communicate their view with the rest of the world. But the concepts we are talking about are of increasing complexity. Whereas just a while ago we’ve had to explain to our children the concept of a stone, nowadays, children in high schools learn the basics of quantum mechanics.
Computational thinking is a way of breaking large problems into smaller ones, solving and creating explanations for these small problems, and translate them back to the larger problems at stake. Being able to generalise solutions for specific problems to fit for more general problems, being able to think step by step (sequential) and being able to think critically about every (sub)solution, are skills a computational thinker would have. Do you see how these abilities would fit your children, growing up in today’s world?
Learning-by-doing (trial and error)
A large part of coding, and learning to code, is just doing it. Try, fail, try, succeed. As many things in life, we learn by trying and we learn from our mistakes.
“If you want to learn to swim, jump into the water. On dry land, no frame of mind is ever going to help you.” ~ Bruce Lee
Our society to date is shaped in such a way that children fear “doing the wrong thing”. This is dangerous. Being afraid of failing can be lead to a burn-out and an unhappy life. We should always tell our children to just try, and figure it out. Not every step along the way has to be a disruptive one. Not every thing you do has to be great.
Learning to program thought me this mindset, which helped me to understand bigger challenges (“the real life ones”) as well. I learned that failing isn’t the end, but simply means that I’m great on track. Of course, many teachers, self-help books, etc. will tell you this; but learning to code is a process in which you experience this firsthand.
Wrapping it up
Today’s world required our next of kin to be able to code. Not for the sake of programming itself, but for it’s implications. Children will understand the world, which they intensively use, better and will be enabled to create and shape it as well. Children will be prepare for the future, for being able to write simple scripts eases work. Children will acquire the skill of computational thinking, which again, helps them to gain a better understanding of the world. And lastly: children will allow themselves to fail.
We do not settle for pretty words. This article explains our motivation for setting up CodeSkillz. A (Dutch) social enterprise with the mission: bringing 21st century skills to high schools in the Netherlands. I won’t decrease the value of this article by promoting this concept further, so for more information, click away!
Joris W. van Rijn
Founder Dutch Coding Company
About the author:
My mission is simple: develop software which supports the technology of tomorrow. Today and tomorrow I’ll continue to learn how to maximise a team’s potential, how to successfully develop ideas into products and train myself in seeing possibilities. In a few years I’ll be ready to take on that one long shot and help this world to be a better place.