Not all children are created equal i.e. they are not the same. Some are outgoing and even boisterous, easily making friends on their first day of school. Others, not so much. They are fine just sitting at their own little corner, anxious at signs of change or potential social interaction. There are many factors that affect a child's level of confidence, including family upbringing, social environment, and just a child's natural propensity to be confident or withdrawn.
I’ve worked at nine schools in Brisbane and Ipswich and have had hundreds of students go through the Coding Kids program. I’ve also had numerous conversations with parents and teachers and the fortune of them sharing their stories about their children and students with me. I would love to share these stories with you, and show how children’s coding program may be the confidence boosting activity your child is missing.
Real-life Scenario 1
I was teaching a coding class at a primary school in Brisbane. It was a Year 5 class but in the group was also a Year 6 male student. The class teacher mentioned to me that he’s not an academic student and he has struggled a bit in the past. So she included him in this coding class to see whether he would take to it.
At the end of the first month, in the middle of class, whilst all the students were working on their computer games, this student jumps up enthusiastically off his chair, punches the air and says, “I did it! It works!” His teacher walks over to me and says, “You know, he’s not an academic student, but he’s really taken to coding.”
That has been the highlight of my year. I could see that he was so engrossed in his project and I could empathise with the feeling of satisfaction when you fix the bugs in your code and it finally works exactly as you want it to. I hope he continues with this journey that he has just started.
Real-life Scenario #2
I've also had a couple of conversations with parents of children with dyslexia. I recognise I am not qualified in the area of dyslexia, but let’s look at this anecdote in terms of finding a confidence boosting hobby for a child who is not able to find that in a traditional school environment.
The parents come to me with this story. Their child has dyslexia and does not have much confidence at school. They are looking for an activity where the child can build some confidence, feel that they can build something and experience the satisfaction of solving problems.
I’m not an expert in dyslexia so I let parents know that we can only have a go and see what happens. I also email them a screenshot of what Scratch looks like and the level of reading required.
The good thing about Scratch is that there are a number of visual cues that can help a child to use it. The blocks are colour coded. ‘Motion’ blocks are coloured blue, ‘Looks’ blocks are purple, “Sound” blocks are pink, “Pen” blocks are green etc.
Learning to code requires you to be ok with not knowing everything. Even professional computer programmers do not know everything. Whether you are a beginner coder or a professional, your approach to learning is the same. Have a go, make an educated guess, test your code, if it fails, try again, if you succeed then there you have it, you have found your solution.
If you don’t know which block to use, make an educated guess, test your code, see if it works as you want it to. Keep testing your guesses until you get it right. Don’t be afraid to write code that doesn’t work as you want it to. It’s not a big deal if your first attempt at writing code doesn’t work. This is standard practice, even in the professional computer programming world. Code is never right the first time.
Making mistakes is how we learn
At Coding Kids everyone is allowed to make mistakes, and even encouraged. This is how we learn and improve our skills.
For the rest of our careers whether as computer programmers, problem solvers or entrepreneurs, we will forever be developing new ideas and testing our hypotheses so that we find a solution that works. This is the nature of human work as technology starts to take over menial or repeatable tasks and the only work left for humans to do is to push the boundaries of human knowledge.
How do we build this skill to develop new ideas and problem solve?
From the age of 7, Scratch is a useful tool in learning computer programming concepts, problem solving, algorithmic thinking, logic, graphic design and user interface. When building projects in Scratch we use this method to give us a robust approach to problem solving.
- Define a vision of what we want to create
- Create a plan to make it happen
- Work on one step at a time
- Test each step along the way
- If this step does not work or behave the way you want it to, fix it before moving on
- If you are not sure how to solve a problem, have a guess, then test it to see if it works (This is how one progresses through these career as a computer programmer. This step never stops.)
- Repeat point #6 (above) as required.
- Make sure the current step works before going on to the next step
- Finish project
- Show your family and friends and get them to try out your Scratch project.
- If you like, incorporate the feedback you get from family and friends into your project.
This methodology is different to traditional academic studies e.g. learning maths. In traditional schools a student does the maths exercise then in red pen gets marked correct (tick) or incorrect (cross). This creates:
- A behaviour of “Is this how you do it?”
- A fixed mindset
- a perception that my intelligence is based on how many I get correct out of 100.
- “I’m scared to make mistakes” because if I get things wrong it means then I won’t get a good mark and that means that I am not smart.
- “I always get good marks. That means I’m smart. But I don’t want to try things where I might fail, because failure means that I’m not smart anymore.”
At Coding Kids when students ask “Is this how you do it?” we always respond with, “I’m not sure. Shall we test our code and see how it works?” This encourages:
- Collaborative exploration, “It’s ok if we do not know, so let’s explore together.”
- Growth mindset, “I don’t know it right now, but I believe I can work through it and figure it out.”
- Not knowing right now does not mean that I will not be able to know it in the future. All I need is to have a go.
- I’m trying to solve a problem. I’m not sure how to solve it. Let me try this and see if it works. If it doesn’t work then I can always try something else.
Move fast and break things. Just have a go. You’ll find out soon enough if your code is not working.
Work to your individual strengths
When programming in Scratch, your code might not work, at least not at the moment, so the consequence of this temporary failure is negligible. But it allows you to explore ideas, test hypotheses, and discover ways of solving a problem. The great thing about computer programming is that there are different ways of solving the same problem and each child has the ability to develop their own solution. And that’s ok. We don’t all need to arrive to the exact same solution to be ‘right’ or to get good grades. Let’s all create an educational environment that encourages individuality and develop one's personal strengths.