To Code Or Not To Code – 2020 Year in Review #9

To Code or Not to Code Year in Review 2020 by Rajiv Maheshwari

To Code or Not to Code – A Controversy

In the ninth part of this Year in Review series, we will be looking at kids and coding. Let us turn our attention to a controversy that evoked millions of sentiments on social media. I am talking about the massive uproar against the practices and marketing campaigns of White Hat Jr. This is a platform for coding classes for children in India. Since I have not interacted with them, I will not comment on the controversy per se. We will restrict the debate to whether To Code or Not to Code, from the kids’ perspective.

Decoding My Experiences

Before I get into the debate, let me share my experiences relating to children and programming. I am the proud father of two teenagers and have been a first hand witness to their journey. The elder one, my son, has shown a keen interest in programming from his middle school days. The younger one, my daughter, is not so keen on programming. She is a creative soul, interested in writing, reading, public speaking and all things crafty!

As I draw upon my experiences with both the kids, I hope to give balanced views on this debate! Since my son has more experience with programming, he will be the protagonist of this post. My daughter will take center stage in a separate post, where I will talk exclusively about Artificial Intelligence.

On a side note, it is critical to be aware of one’s biases and prejudices, that come along with our experiences. We often hold on so tightly to our positions that we believe that everyone should share our views and perceptions. Hence, my views represent only one perspective and are certainly not the final word on this subject.

Programming Journey with my son

My son, Tanish, was selected as the Vice President of Robotics at school, earlier this year. But, his journey of programming and robotics goes back several years. The journey began over 5 years earlier when he was first introduced to QBASIC programming in middle school. He enjoyed it so much that within a month of being introduced to the subject, he wanted me to teach him more. In 2-3 weeks, he picked up everything I knew from whatever I had learnt in 2 years at school. Since then, he has (or rather, we have) picked up several programming languages and environments. In his case, it was apparent that to code or not to code was a no-brainer from the very beginning.

The Debate on whether To Code or Not to Code

Here are a few relevant pointers and my experiences and insights on whether To Code or Not to Code.

#1 – Early Indicators of Ability and Inclination

The early signals relating to the child’s ability and interest in the activity need to be read carefully. These can be gauged from how they go about building or assembling things using components and logic. Building in this context could be in any form – physical building blocks, building logical arguments and debates or of course, building programs using software and code.

But, the question is how does one find out these things about the kids? You can’t ask these questions to a middle schooler and get very helpful answers. Thankfully, you can extrapolate based on observations from other disciplines and fields. Or else, you can try some great tools built by the top educational institutes globally.

Scratch by MIT

For instance, you can expose a young child to MIT’s online programming platform, Scratch. It costs zero money and has no associated risks. Moreover, this has been developed by one of the best engineering colleges in the world. In light of the recent controversy, it helps to know that they won’t hound you for buying anything either!

The experience for the children on tools such as Scratch is just like playing a game. However, it will provide you rich insights about your child, if you have the listening antennas to catch these signals. You can determine both the inclination and the ability related to coding, programming and building logical systems.

This feedback and information is worth its weight in gold. The child can do very well in areas where they have both the ability and the inclination. These are the two key pieces in the puzzle of Ikigai – a Japanese term, loosely meaning ‘a reason to live’. You achieve Ikigai if you do something that meets all four conditions. You must do – what you are good at, what you love doing, what the world needs and what you can be paid for.

#2 – Creativity

One of the aspects where opinions get polarized is the relation between creativity and coding. One school of thought believes that programming encourages children to be creative. The other school of thought finds this thought process ridiculous, even laughable. Let me share my experiences with my son when he was in middle school.

Coding and Painting

Upon learning the basics of programming, my son could capture keyboard inputs. So, he asked me how we could capture mouse inputs using QBASIC. I didn’t know the answer, but thankfully Google did. I learnt the process and we started playing around with some code.

We started coloring the screen and making patterns that followed our mouse. In the same week, he asked me a simple question. If we can make shapes of different colors and sizes, why can’t we build something like ‘Paint’ software? Sure enough, I said, that seems to be fairly logical. We quickly built our own crude version of Paint, during the summer vacations. The rest of his class was still learning the introductory syntax and was saying ‘Hello World’.

Creativity – It’s all in your mind

The above anecdote illustrates how a child can take a series of creative leaps. In this case, programming was a tool that amplified his creativity. I think the debate around whether coding leads to creativity or not is misplaced. The correct debate is how to use programming as a tool to amplify one’s creativity.

This logic applies to any other tool such as building blocks (think Lego). A child can either re-create designs provided in the instruction manual or creatively build something new.

The creativity is not a property of the programming language or the building blocks. It is a property of the human mind! The creativity is within you. Or, maybe, it isn’t! How creatively you use the tools is a function of your aptitude.

#3 – Attitude towards failure

From aptitude, let us turn our attention to attitude. This is one of the most interesting aspects that I found in our journey of programming. It builds certain life skills that are essential. I am not talking about obvious things such as logical thinking, attention to detail, etc.

One of the ‘features’ of coding is debugging. When the program does not function as desired, it is known as a bug. The process of identifying and rectifying the issues is known as debugging. Even seasoned software developers sometimes spend hours in debugging their own programs.

Can you now guess what life skills the children gain when they learn programming. The first life skill is resilience. The second one is approach to dealing with failures. For them, failure is just another ‘feature’ that is part of the journey. When I shared the below video with my son, he immediately associated this with programming. He found it very relatable and said that even he doesn’t think of ‘failed attempts’ to create a working program as failure. Rather, he views these as a process of arriving at the solution.

What an amazing way to learn such a vital life skill!

Coding – An Essential Skill?

We have seen few pointers above relating to the debate of whether to code or not to code. Another polarizing argument during this year has been on whether coding is an essential skill for the coming future.

One set of arguments revolve around how technology is omnipresent and everything is being driven by software. Hence, they argue that coding is an essential skill.

If we extend that argument further, a lot of things can come under the category of essential skills. Since the world around us consists of physical objects that obey the laws of physics, even knowledge of Physics and related skills are essential. The same argument can be extended to Biology and Chemistry as well. And of course, the same applies to Finance and Economics also. As citizens, aren’t we all supposed to know the laws of the country too?

However, these arguments miss the main point. You can have knowledge about something without necessarily having the required skill. If the world is being increasingly driven by software, it is important that we have conceptual awareness about it’s principles. However, this does not imply that we will become third class citizens if we don’t know how to program as a 10 year old!

Outlook for 2021 and Beyond

A lot of money is being pumped into these ed-tech ventures that teach kids how to code. The investors and venture capitalists have all the intention of generating handsome returns on their investment. Consequently, I would imagine that the aggressive marketing practices for online coding classes will continue in the future. Parents need to be aware of the pros and cons of enrolling their kids for these classes.

I hope the above pointers helps in bringing some sanity and order to the proceedings. Unlike the (in)famous ads, a six year old does not need to learn coding. And certainly not with the objective of becoming a millionaire by selling apps that he / she has developed.

However, if a child (or adult) has interest and abilities, then there is absolutely nothing wrong in jumping right in. There is no cookie cutter approach that can be applied universally to everyone. The answer to code or not to code has to be determined at an individual level.

All of us have to find our own ‘Ikigai’. In case you haven’t thought about it, the turn of the year provides you a great opportunity to do so!

Year In Review 2020

Check out the master article for the Year in Review 2020 that contains links to all the other posts in the series. Also, bookmark the master article on the browser to read more about each of the 20 thoughts from 2020 and lessons for 2021.

Rajiv Maheshwari - From The Experts Mouth
Rajiv Maheshwari

About The Author

Rajiv Maheshwari is a business and start-up advisor, and the co-founder of From The Experts Mouth. He is a management professional with over 25 years of experience, and worked as CEO for a decade, and in leadership roles with NYSE listed companies such as Accenture and WNS.

He is a Chartered Accountant and MBA (Director’s Merit List from IIM Bangalore) and an autodidact, who is on the path of self-directed life long learning and sharing. He is a thought leader, author and keynote speaker and has developed several frameworks to bridge the gap between academia and industry.

Share this now

Responses

Your email address will not be published. Required fields are marked *

  1. I think coding is now initial part of study like Mathematics, English, Science etc and mandatory also. it gives ability to solve problems is a trait that is useful in life in general. We all want our children to become excellent problem solvers so that they can overcome any adversity they face. Learning to code gives children the chance to learn this type of skill while they are young and it can help them along the way in life. This is one of the big reasons coding is important to learn.
    Also when you fail and try again you can learn from your mistakes. Coding helps not only children but everyone to learn the skills to try and try again until they succeed and produce the result they are looking for or until the program get run.