It’s official, from now on, teaching to kids the basics of computer programming, or coding, is on the agenda of the French National Education … But why teach a so complex and so obscure discipline, to our children?
Let us agree, even with all the enthusiam we see for coding today in France (with a bit of delay compared to the US and China), learning programming is not vital, we can always live without it! If your kid did not do coding in school, he will not be less educated or less “smart” later. Many skills that coding allows to acquire can be acquired elsewhere, for example while playing chess, music, or doing sport.
But then, why has coding become so important to the point that it’s introduced into school curriculums starting from primary school? To answer this question, we must not stop at “coding” itself; i.e. the idea of your kid in front of a computer doing things you don’t understand 🙂 We need to dig a bit more to understand the phenomenon as a whole!
But what exactly is coding?
Concretely, programming (or coding) is a manifestation of computational thinking, a problem-solving process that involves intellectual abilities such as logical data analysis, visual representation of problems, and creating solutions using organized sets of instructions, or algorithms. Understanding how a computer works is essential for developing computer applications, but it can also be used to support problem solving in other disciplines, such as mathematics or engineering.
Argument #1: learning coding provides the same cognitive effects as learning a second language
When we learn a new language, we use it to express ourselves. The same is true with the code. Coding allows children not only to consume digital media and technologies, but also -and above all- to create them. Instead of just playing a video game or using an application, they can imagine how to create their own video game, or imagine what their own website or application might look like.
Argument #2: learning coding is acquiring rigor in writing
Since a computer language is a formal language (which does not support ambiguities), writing code imposes a certain synthactic rigor: for example, if we forget to close a bracket in a program, the whole program no longert works. In the case of compiled languages (an extra step is needed to translate the human readable program to binary code), anomaly detection is more difficult because it takes place only when the entire code is translated to machine language. On the other hand, interpreted languages (evaluated on the fly) report errors instantly while the programmer writes the code.
Argument #3: learning coding helps to overcome the fear of being wrong
Programming is essentially an experimental process, it is a discipline where learning by mistake is essential. Even the greatest programmer on the planet must test his code, correct mistakes, and test again. So we hear a lot about “debugging”; it is the process of following the execution of code step by step in order to detect anomalies, also called “bugs”.
Argument #4: Learning programming helps develop visual thinking
Programming allows visual intelligence to be developed by stimulating pattern recognition. For example, a well-written code is organized into functions which are blocks of instructions isolated in one single place (function definition), and which are later invoked from various places (function calls). Pattern recognition is not only useful in programming: this faculty is also useful for finding one’s way, recognizing words and structures in text, associating a meaning with a visual sign, etc.
Argument #5: learning coding means being in tune with the times
You have probably heard about the disturbing fact that predicts that 65% of future jobs are not yet invented. The transformations that drive the world today thanks to -and because of- technology, are also cultural, and it affects even our way of life. Therefore, teaching the language of computers allows our children to become aware of what has been surrounding them since thy’re born. It’s about understanding what’s a computer, a tablet, or a smartphone, and especially how to use these new objects constructively and safely.
Argument #6: learning coding develops creativity
Whatever the reason we code, whether to develop an application, a game, or simply to solve a problem, the process always requires a lot of imagination and creativity: to implement a solution to a problem, to improve a rendering, or to make a computer perform specific tasks. A computer program is like an invention of the mind; but unlike a craftsman who needs raw material to create a work, a programmer just needs neurons and inspiration.
Argument #7: Learning coding increases the chances of finding a job later
One argument we often hear, especially in the USA, is that people should learn to code to find a job. The explanation is straightforward: as the job market is increasingly demanding software development skills (an estimated 2 million IT jobs in the US by 2020), learning how to code remains one of the ways to acquire these skills.
Argument #8: Coding is a literacy to understand our increasingly computational world
In the world we live in, it is essential to understand how software can manipulate our behavior, violate our privacy, and violate our rights. The CSForAll consortium, which emerged from Obama’s initiative in 2016, makes a similar argument in seeking to empower young people to “create businesses in the digital economy,” not to just be consumers, but to be active citizens in an increasingly technological world.
Argument #9: Coding values teamwork
Apart from developing technical skills, coding also helps to acquire non-technical skills, such as getting along with colleagues, because most projects are extremely collaborative. Later, whether you are interacting with bosses, subordinates or with external stakeholders, these soft skills are essential to succeed in any environment, both professionally and personally, as they can also help you to better get along with friends and family.
Argument #10: Coding opens up to new possibilities!
Whether for personal development, career advancement, career change, or simply for the desire to improve one’s digital culture, the knowledge of how software works and the ability to develop new software is a form of expression that provides inner satisfaction. Like the feeling of an artist who completes his work, the feeling of having coded an application that simplifies the management of your football club, a showcase site for your neighbor, or any other application likely to make the world a better one, is simply rewarding!
So what now ?
Before onboarding your kid on a coding adventure, make sure he/she likes it, otherwise don’t waste your time; it should be a pleasant activity above all. Also, remember that the purpose of teaching coding at school is not to make your child a future computer developer or “coder”, the goal is to give him a certain curiosity to understand the world that surrounds him, a world increasingly computerized.
If your kid has already played with Scratch, the MIT software that allows to build programs visually by assembling blocks, you may consider switching him to a real programming language. But, you probably asked yourself “what language to choose and why”. There are more than 400 programming languages, more or less general-purpose, some are interpreted, others are compiled, each of them comes with its own syntax and semantics, with diverse and different application domains. The choice of this or that language is a kind of specialization before the time.
At Coding Park, we propose an intermediate language before the specialization, a textual equivalent of the blocks of Scratch that focuses on plain algorithmics. The Play language has a simplified syntax, it allows to discover the algorithmic concepts found in most programming languages, such as loops, conditional expressions, variables, functions, etc. Play is an interpreted language, which means that code is analyzed instantly when typing text. The editor returns errors, warnings, and content proposals in real time, so that the user is guided throughout the writing. Try it now!
Many good things have been happening at your Coding Park!
We had been working on getting your feedback, advertising Golden Quest, and creating more and more levels with pedagogic value.
In the middle of last November we participated in a big event for kids at Paris. https://startupforkids.fr/startup-for-kids-2017/ During 3 full-days we had a lot of fun looking at the reactions of our users and getting a lot of feedback and nice comments. Two of these days were open to the public and the third day was dedicated to school groups, so apart from hundreds of kids, we met both educators and parents. We love to hear from different points of view 🙂
Some weeks before this event, we had a good news! We were selected and nominated as finalist of the Startup for Kids 2017 contest in the “Tools for Educators and Students” category. For the selection of the three finalists, they took into account the votes of the community and the opinion of a specialized jury.
Unfortunately, we did not had the prize, but the experience was enriching and we had the opportunity to pitch our platform to a large audience during the event. It was very satisfactory to hear that our work on the students progress dashboard has been appreciated by educators.
In December, we continued working on the game based on users feedback and we added new lessons and challenging puzzles.
Then, this January 2018, we were happy that others started to talk about Coding Park and our first game Golden Quest. Geek Junior, a well-known online magazine for kids and technology, wanted to talk about us! They made a review of the game and they highlighted its capability to be a perfect candidate as a transition from block-based languages to real world programming languages. Apart from their personal review, they included a long interview where we explained our opinion about this subject. You can read the complete interview here: https://www.geekjunior.fr/coding-park-golden-quest-coder-18624/
In the meanwhile, we had another nice surprise. Phaser World, a community of game developers, selected Golden Quest as the “Game of the Week” and they made a very inspired review highlighting both the educational and entertainment values of the game. You can read the complete review here: https://phaser.io/news/2018/01/golden-quest
As a summary, after these months, we gathered a large list of testimonials from different perspectives: kids, parents, educators, and specialized individuals. The feedback about Coding Park and Golden Quest was very encouraging, so stay tuned!
After three months of hard work, we have released the very first beta of Golden Quest!
This coding game is the natural evolution of the Adventures of the Pirate Robot, but this time, it’s gonna be huge! The killer feature is the level designer, an interactive graphical designer that allows to design challenges from scratch. Start from an empty level, drag and drop land, monsters, bridges, teleporters, and so on. Then, start writing the algorithm that solves the challenge, and debug it in real time!
We would love to have more feedback on this beta. We have already started a closed testing campaign on September 30th, and we think to put more people in the loop. All you have to do is to register here and we will send you an invitation by email. During the beta testing campaign, you will get a free access to the game, so hurry up 😉
Yes, we did it! Our very first coding session happened today. A group of ten kids from 8 to 12 years old, have experienced the adventures of the Pirate Robot. The event took place in Ullink, a software company located in Paris. Together with employees from the company, we scheduled a coding session for a half day. The kids really enjoyed the game, they were focused on the mapping of keywords and their french translation in the white board; that was a double challenge for them. We were encouraged to translate the Play language in other languages, in particular the French language.
Knowing how to code, or more generally speaking, how to think computationally to solve a problem, is going to be a must for our society independently of the professional field.
As such, learning to code from an early age is the first step towards being tomorrow’s programming rock star. We, as today’s rock stars, know this because we used to play with code when we were kids. Do you remember Logo? (yes, the turtle drawing squares and crazy spirals!). It is a game for learning to code where you give instructions to a turtle. The Pirate Robot, just like the Logo’s turtle, is based on a programming language which has been developed specifically for kids.
We invite everybody to join the adventures of the pirate robot and help him find incredible treasures. New levels and improvements will come soon. The game has been tested in Chrome, Firefox, Internet Explorer and Safari. Please do not hesitate to give us your feedback.