You probably already know that computing is required in every industry from farming to commerce, from education to medicine. It is also very likely that you have also heard that a career in coding can be both lucrative and it is often covered as one of the best jobs in the market by the media.
But why learn to code? On one hand coding can be looked at as the creative process of telling a computer what to do and on the other as Steve Jobs famously said "Coding teaches you to think". The process of instructing a machine on how to solve a problem or perform a task forces a level of reasoning and structured thought that very few other endeavors require. Coding is also a skill that you get better at the more you do it, so the earlier you start and the more consistently you code the better you develop.
Steve JobsCoding teaches you to think!
Coding makes creators
That coding involves logical thinking is obvious, but many miss the fact that when you code you create, and just the process of striving to solve a challenge is a creative endeavor. If you were to ask two people to write code to do the same task the code they produce would most likely vary significantly to each other because it is the result of a creative process.
A NASA study on creativity found that, 98 percent of 5 year olds were at "creative genius" levels. Ten years on only 12 % of the same group scored at the same level. The same test on adults above the age of 25, found that only 2 percent scored at these levels. According to this research, the focus of our education systems on convergent thinking drains our creativity by reducing out natural ability for divergent, generative thought. Coding when approached correctly can potentially arrest this slide in creativity and the decline in being able to think out of the box.
Coding is relevant to non-programming interests
Coding is no longer a skill that you require only to become a professional software developer. In much the same way as children learning to play music, a new language or a sport add a host of invaluable supplementary skills, coding enhances creativity, improves problem solving, sharpens attention to detail, enhances logical reasoning, and improves the ability to take/give instruction while working within teams. These real world skills that children pick up as part of learning to code sets them up for success not just the career of their choice but also for life in general.
While children who have a flair for logical thinking, spatial awareness will especially benefit from coding consistently. Coding also helps hone mathematical ability and visualising physics concepts apart from creativity, teamwork, communication and problem solving skills improve tremendously.
Most schools, teachers and parents are unprepared for teaching children to code
Unlike most subjects in schools where teaches and parents usually have a reasonable understanding of the subject being thought, coding poses a real challenge. It is rare to find instructors with the right combination of real world experience with coding and the ability to impart the subject in an engaging and practical manner. Especially to children, who more often than not, have been exposed to more technology at a much younger age. So while coding might be part of the curriculum in some schools, schools struggle to transform their teachers into experts in the field.
Parents looking for all round development in their children, should seriously consider adding coding as an activity to supplement pursuits like sports and music. It is a key skill to help turn children from "Consumers of technology" to "Creating with technology". While children who have a flair for logical thinking and spatial awareness will especially benefit form coding consistently, coding will also help improve creativity, communication and teamwork in general. As coding gradually gets added into the core curriculum in schools, learning to code should not be a treated as a choice, but instead as a crucial skill like reading , writing or learning a foreign language.