Coding has been the centrepiece of my classroom this year. Everything we have done revolves around it in some way, shape or form. We have introduced it to our Prep students all the way up to our Year 4's. When I talk about coding to other teachers, I always sense a fear that they too would have to one day do this in their classroom. The reason I have created this list is to help those teachers that are new to coding to relax a little and to just give it a go. These are the ten reasons I think everyone should give coding a go in their classroom (in no particular order):
1. Releasing Control
Most teachers would agree that they don't know a great deal about coding. In fact, I would dare to guess that most teachers would have some fear about introducing it to their classroom. The best thing about coding is that everyone, including you, can go on the learning journey together. Coding in your classroom is the best opportunity for you to let go of control and see what the students can learn with only your guidance in the form of questioning.
2. Problem Solving
Students very quickly learn that because they are in control, that they need to solve problems themselves. It's a great way for the teacher to explicitly teach some new problem solving strategies that students can utilise if they get stuck. I tell students they can look up similar games and see their code, look up tutorials on websites or YouTube, ask classroom experts, etc. There are many ways to 'debug' and we need to help our students work out for themselves ways to do it.
Some people think that because a child is engaged with a device that they still can't collaborate. In my experience, this couldn't be further from the truth. When children are coding, the conversations in the room become very constructive. There are always questions like "What are you doing?", "Wow! How did you do that?" or "Can you help me fix this?". I have noticed new friendships form with students that normally wouldn't interact much and I have noticed students respect each other more for the hard work and knowledge they have learnt. The chatter in a coding classroom is productive and an important part of their learning process.
4. Creating Experts
I love how students become 'accidental' experts when they code. You can have an expert on creating backgrounds, creating a scoreboard, creating lives, characters, movements, levels and the list goes on. The best thing about these 'accidental' experts is that you can talk about them when discussing problem solving strategies. List those experts on the board that are willing to help others and students won't need the teacher to solve these problems. It makes learning more student centred.
5. Student Choice
It's wonderful to see students engage with coding because they are the designers of their own learning. When coding with my Year 4's, it has been great to see the variety of games/ programs students make based on their own interests. I've seen students make simple games but spend a lot of time on appearance because that is important to them. I've also seen some students create amazing games with varying levels of complexity based around their own themes. Kids love to express themselves creatively and this is one way you can engage them in coding; giving choice.
Here, students have used code to program their robot to become a basketball player. They even used sustainable materials to create a basketball court.
6. New Learning Opportunities
One of the best games I've seen one of my students make this year was a simple Maths game. The game was a basic quiz with multiple choice answers all to do with addition and subtraction. When I asked this student why they created the game, she answered, "Well, I don't ever feel very confident in maths, so I wanted to make a game to help me". This has been one of my favourite 'teaching' moments (and I use the term 'teaching' loosely here because I didn't do much teaching; she worked it out herself). Imagine the possibilities for other Mathematical concepts or other learning areas? Students creating their own learning games holds them accountable for the answers being correct. What a great way to strengthen learning.
A simple maths game.
7. Developing Resilience
I have found coding to be a constant problem solving task. Everything is trial and error right from the start. Students begin to realise that the mistakes they make are an integral part of their learning journey and as a result, develop resilience and coping skills. I haven't seen one student give up yet because it's been too hard.
I like to think of coding as a tool for learning. I've already talked about the student that made her maths game and this is one example. I've seen others use code to publish a procedural text (they made a 'goo' making game); what a great way to publish a text. Think of other text types you could publish with code; narratives (coding characters to act out a story), persuasive texts (make a game with code and create a persuasive text to get others to play it). What about other curriculum areas? History and Geography (code a game about a historical event or geographic location), Languages (make a language learning game), Science (re-create scientific experiments with code). The possibilities are endless and as long as you can see that, then you can understand how code becomes a 'tool' for other learning.
A procedural text, published with code.
9. Embraces all Levels of Learner - Creates an Even Playing Field
I remember a teacher being surprised when I told him about one of his students creating such a great game with code that linked to literacy. He was surprised because this child struggled with reading and writing generally. This highlighted to me that when students get to code, because of the student driven nature, students are able to succeed in ways they normally can't. Students are all learning this together for the first time and it creates this new, level playing field. I think it is one of the reasons students love my classes so much; there is less pressure on them to perform academically.
I think when you consider the first nine points, you can gather that students enjoy coding. They love the freedom to explore and the choice to program what they want. This is fun to them. We don't always afford our students this level of choice, so when you do, they love it. I am constantly told that my classes are their favourite. Fun is the best way to engage anyone in learning and it's part of why I love what I do.