As many of my colleagues know, education is something I’m deeply passionate about. The right education on a global scale can be the catalyst for solving the most complex and deeply rooted social problems that we face as a society. The most exciting development on this journey towards improved education is the introduction of basic programming to young children, and I’ll highlight a few reasons why I believe that to be the case.
Public schools are not good at producing leaders
The reasons are obvious. There are very limited avenues to foster the following key attributes needed for a leader to have impact in today’s society:
- Courage to take risks
- Abstract problem solving
- Conscientiousness (grit, determination)
- Creative ability
Unfortunately, the rigid structure of public schools in America makes students more prone to accepting smaller challenges to secure higher grades, as opposed to taking risks and giving themselves greater challenges to promote cognitive development. It’s unsurprising that over the years, people develop a fear of failure that persists for many years later. Taking risks is rarely encouraged and even more rarely rewarded in traditional public school systems.
How programming bridges the gap
- Programming requires establishing discrete logic and reasoning abilities, otherwise programs won’t work
- Programming requires a lot of trial and error (failure) in order to end at a working product, and will change a child’s relationship with failure to be more positive
- Programming requires diligence, attention to detail, and determination so that the function being developed outputs the desired results
- Programming opens up a world of creative possibilities, and is a sandbox for children to experiment with new ideas and functionality
- Programming requires merging several components, libraries, and procedures to create the final solution, which means that they must learn to delegate instead of reinventing the wheel
There are many more advantages, but the beauty of these benefits is that they are intrinsic to programming and thus are not easy to avoid. Doing well in programming means you need to accept a degree of trial and error and you need to hone these skills to consistently produce working applications.
The science seems to agree that the benefits of teaching programming to young children is similar to the benefits of teaching them a second language. The additional benefits are that programming can change the way people think for the better, make them better problem solvers, and open up a world of possibilities for them at a young age.
Connect with us on social media!