Even in the midst of the computer age, surrounded by a multitude of forms of computers, few people know how these black boxes work. However, computers are much more accessible than we think, especially for children and teenagers. Computers are evolving at an exponential rate, but learning the technologies they use is not keeping pace with this evolution. Instead, word processing software is taught and these courses are labeled “Computer Science”. Students thus develop a false idea of computer science and are deprived of the advantages of programming and technological knowledge that would allow them to develop their creativity and logic.
You might think that programming is too complex to be taught to young children. However, in the 1980s and 1990s, primary and secondary students learned to make Logo, Pascal, Basic and Visual Basic. They were taught by telling them that computing is the future. Yet, although this technology was constantly evolving and becoming more and more ubiquitous, in the late 1990s, rather than adapting computer science courses to new advancements, they were transformed into Word and Excel. While spreadsheet and page layout software undeniably have their uses, they are not the ones that will occupy more of a place in the future. The next generation of workers came into the world with at least one computer at home, so they are already, at a very young age, familiar with this type of software, which is more and more intuitive and easy to master. This ease of use calls into question the relevance of offering a complete course on the subject.
Why teach programming?
There is a whole range of valid arguments! Did you know that…
- Various educational tools have been developed to initiate programming without launching the learner into its pure and complex form. For example, Scratch, the most popular at the moment, is an educational language developed at MIT that has been allowing both children and adults to let their imaginations run wild since 2005. The purpose of teaching programming is not only to train developers for the future, but also to show children a modern way to harness their creativity.
- Along the same lines, teaching programming is a way to show kids a new way to express and communicate their ideas. “Coding is an extension of writing,” says Mitchel Resnick, professor of Learning Research at the MIT Media Lab. We transform our ideas into code and it becomes a game, an animation or an interactive story. Programming is a powerful creative tool, the only limit is the imagination.
- One of the most important aspects of computer science is computational thinking. It is a method of solving problems, creating concepts and understanding phenomena by using the theoretical concepts of computer science. It is a crucial way of thinking in this field, but it is equally useful for observing human, social and economic behavior and for solving problems in the labor market.
Computational thinking is...
- Abstract the problem to analyze it, organize it and segment it into several steps to arrive at the solution;
- Develop solution approaches using simple algorithms;
- Identify and correct possible flaws in the algorithms;
- Generalize the final solution in order to make it a reference for a possible similar problem.
These key attributes allow the child to solve any situation in almost any area. Computational thinking is more easily acquired through programming than through Word or Excel.
By learning to code, children indirectly learn how computers work. In a world where technology is becoming more and more important, they need to understand how information is processed, where it can go and who has access to it. Without this learning, we create a black box effect where the functioning of these machines remains a mystery and where companies can take advantage of the lack of computer knowledge of their consumers and give them a quick bite!
Finally, programming should be taught in schools, because it opens the doors to an open, vast and barrier-free world where creativity and collaboration are encouraged!
Some educational programs: