As coding becomes an increasingly coveted skill, schools all over the world are deciding to teach their students how to code. This is a excellent idea, as having coding skills could pay huge dividends later on in life. However, pre-service teachers do not usually learn how to teach coding in their college teacher education programs. Many teachers have difficulty learning and then teaching coding skills to their students. In response, I decided to write an article that gives teachers some practical suggestions on how to teach coding in a classroom.
Do your research:
There are literally thousands of organizations that promote or provide resources for teaching coding in schools. To find resources and support for adding coding to your elementary school curriculum, do a basic google search. Just type in "coding resources" or "coding in the classroom," and you will get hundreds of thousands of articles. Also, the cool thing about a Google search is the fact that Google search results are listed in the order of perceived importance. Meaning, if you click on the first 30-50 search results on coding, you can be sure that collectively these sites will provide a comprehensive view of the subject.
Your students can handle it:
Some people operate under the opinion that teaching young kids to code is not a developmentally appropriate activity. This could not be further from the truth. Teach your students the basics of coding, guide them through increasingly challenging activities, and get out of the way. Do this, and you will be surprised at what they can accomplish.
You don't need a 1:1 classroom:
To teach coding in your classroom, every student does not need a device. This should be good news for schools that are short on funds but want to provide a top notch coding experience. As a matter of fact, several coding activities don't require a device at all. Coding is a skill that relies on problem-solving, so it is fine for students to work in pairs. This is actually an excellent way to teach teamwork and develop leadership skills among your students. Collaboration and teamwork is a skill that is needed in the adult world, so you actually kill two birds with one stone.
Don't be the Lone Ranger:
If you are a teacher who wants to add coding to your curriculum, don't go it alone. Ask around and see who else in your school is teaching or is interested in teaching coding. This way you can share ideas, resources and celebrate successes. The road to becoming an innovator is lonely, but with the support of your colleagues, that changes.
Learning to code should be fun and engaging:
We all know that kids learn best when what we are teaching is fun and engaging. When most people think of coding, they think of monotonous repetition. Thankfully, there are a lot of online resources that turn coding into an exciting activity that kids can't get enough of. All of a sudden, something boring and monotonous is transformed into an amusement park activity.
Don't just talk it, do it:
We know that it takes a lot of brainpower to learn how to code, but the skill is fully realized without hands on practice. That is why when teaching kids to code involves one part teaching and one part hands-on practice. After you teach them about variables, functions, and loops, staring at a blank editor is a bit scary. You may have to hold their hand and teach them how to code line by line. If you choose to use online resources, find the source code for simple games. Find something with less than a hundred or so lines of code.
Once you take the training wheels off, leave them off:
When teaching students how to code, you can provide them as much one on one help as possible. However, once you take the training wheels off, and allow them to practice and complete problems on their own, keep them off. Why, because if you are always coming to the rescue when they get stuck, it will take them longer to learn how to code. Something magical happens when we tackle activities and problems that are just outside of our comfort level. We usually rise to the occasion and push through until we conquer the task. This doesn't mean that you cannot offer advice and intervene occasionally, you will know when it's appropriate.
Remember, kids, learn at different rates:
In a normalized classroom, you will have students who at different levels intellectually. Some students are gifted, and learn to code quickly. Most students will be of average intellectual ability and will learn to code at a steady pace, just not as fast as the gifted students. The below average students in your classroom, some of whom may have one or more learning disabilities. Can they learn to code? Absolutely. However, you will need to be patient with them. This also means that to pull all of this off, you will need to know how to differentiate instruction. This just means that you will need to provide instruction, activities, and assessments to at least 3 groups at various times. Differentiating instruction is a requisite skill for any teacher who wants to teach coding or anything for that matter. This is easier said than done.
Don't position yourself as an expert:
It is very easy for teachers to think of themselves as experts. As a matter of fact, it's the reason why we entrust them with educating our children. However, when teaching children how to the code, you should not position yourself as an expert. Instead, position yourself as a guide or even better a coach. Teach them the fundamentals of coding, and let them play the game. Think of the activities that you assign them as plays, and when they complete them, everybody wins.