Programming is increasingly being introduced to primary schools. This is an initiative that is recognized all around the world - many kids are being taught programming.
Stop! We're wrong! Do not teach children programming!
The assumption is wrong. What we are doing is observing the present and noticing the rising trend of the need for developers. We extrapolate this fact and base the future on it, assuming that the same rules will apply in 10 or 20 years from now, at the time our children become old enough to work.
If there is something we do not know, it is what the future holds for the world. The dynamics of change in the digital industry are so extensive that there is no pattern which can be applied to them. The amount of information is multiplying; requirements change faster than ever. The truth is that we have no idea what the world will look like in 20 years. In such an environment, programming is, unfortunately, not a "joker" wildcard that will give our heirs a chance to master the world of the future.
Moreover, the type of programming the IT market is looking for is mercilessly monotonous and stumbling. It is all about the skill; programming today has been reduced to being more about the framework timing, and less about the science. Do we really want to involve children in such an anaemic world of programming?
Programming should not have a meaning in itself. Programming should be a tool - in fact, only one of the tools that will be available to people. The technical knowledge which we boast of and so passionately wish to put into young brains should not be taken as the primary source of knowledge.
Instead, we need to teach children critical thinking. In a world without censorship, but with fake news, a critical attitude is more important than programming patterns.
We need to teach children communication. A world in which everyone has a voice and an opinion about everything requires precise and clear communication skills and the ability to exchange ideas and thoughts.
We have to teach children to work together. In a world where there are more screens than people, cooperation becomes a necessary ingredient of progress.
And finally, we have to teach children creativity. Creativity is a part of what it means to be human. Creativity is something we need to constantly stimulate, now more than ever before, because that is the only way our children will discover how the world of tomorrow will function. Do not teach children programming. Teach them that they can and should change the present - that is going to be our future.