Why and how I teach my students to code

Recently I read a great post on Craig Kemp’s blog (mrkempnz.com) written by Kim Vernon, called The Key to Coding. It is a great read about the benefits of coding for students, and I couldn’t agree more with the points that Kim makes. Importantly, Kim notes that the main skills that coding develops in students are:

  • Problem Solving
  • Logical Thinking Skills
  • Collaboration

These are all essential skills for a learner in the 21st century, and I would also add the important skill of Creating to this list.

I began encouraging my students to code six months ago.  During this time, I have been amazed at how my coding lessons promote all of the four skills mentioned above, as well as integrating other subject areas such as maths.

I have no doubt that coding is going to be an increasingly important skill in the lives of our students (and it probably is already), so the more we can encourage students to code, the more opportunities we will be giving them for future career paths.

I am not an expert coder, so I am undoubtedly more of a facilitator for my students rather than a teacher. But with the amazing range of online resources, any teacher can integrate coding into their lessons. If you haven’t tried already, I would encourage you to take the plunge – your students will love it!

My students are usually at very different levels with their coding ability, so I try to have a wide range of online activities that they can choose from. I use the following online courses, all of which are free, to give students of all abilities the opportunity to improve their coding skills:


Code.org is a great website where I can choose from a range of activities/courses and have my students enrol in the course. The great thing about this is that I can see the progress that my students are making through my teacher dashboard on the site. A lot of the activities on code.org focus on the building blocks of code, so I include it for the students that are starting out. The activities are really engaging and my students love trying to get through the different levels.

Code Academy

Code Academy is a great website that teaches my students the language of coding. The have the opportunity to learn a range of code such as HTML, CSS, JavaScript, jQuery, PHP, Python and Ruby. Students learn the different types of code through tasks such as making interactive websites. I generally encourage my students to start out learning HTML as this is one of the more common coding languages.

Code Combat

Code Combat is a great site that allows students to learn to code in a game-based setting (you can even have multi-player). Teachers can register and enrol their students so that you can see the progress being made. My students get really engaged when they play Code Combat as it is challenging and they are always trying hard to learn new skills to progress to a new level.

Make School: Build an iPhone game

Make School is a great site that I encourage my advanced coders to use. One course that students can enrol in is the "Make your own iPhone game" course. This is great as they can really show their creative side and practise their coding skills while they are doing it.

Below is a flow chart I have created with all of the courses I have mentioned above, as well as a quick look at coding by BBC Bitesize, and a video that has a range of celebrities talking about the importance of coding. I embed this flowchart onto my class blog and give the students the freedom to choose the courses they want based on their previous coding experience.

I would love to hear some ideas about how other teachers are encouraging their students to code, so please feel free to comment and share!