By: Jonathan So
Jonathan teaches grade 6 at Ray Lawson Public School, in the Peel District School Board, Ontario, Canada. He has also taught grades 2 to 5 and is one of the lead instructional technology and math coaches at his school. He is a proud parent of 2 young children Izzy and Micah. He is always looking to promote creativity and exploration in his family, students and colleagues. Jonathan completed his Masters of Education looking at how his Questions impacted his students’ learning of part-whole relationships in fractions. His interests lie in math and technology (not in any particular order) but he is also passionate about inquiry and the endless possibilities it has for his students. Connect with him via Twitter @MrSoClassroom.
I know this is a hot topic and many educators are talking about it recently. Nonetheless, coding, in my own personal opinion, is one of the most important concepts we should be teaching…
It may happen to be one of the “coolest new buzz words” to get everyone’s attention. Although I am not providing you with any official research to back me up here, I believe coding actually makes our students smarter, based on what I’ve observed in kindergarten to grade 6 classrooms- not “book smart”, but “thinking smart”.
Coding doesn’t teach my students to memorize facts or to follow procedures, but instead it has taught them to consider what they are doing and why. Sure, many of them often follow the ideas of others, but the thinking that goes into understanding code is significant. Coding in my classroom is not just about computer science. My intention is not to produce students who are expert computer programmers. Coding, has, however become a part of my everyday teaching.
For me, coding is a tool- a vehicle for me to teach with. I treat it like I do any piece of technology or paper. It gives students a platform for learning and it is the teacher’s role to bring out that learning. I will be the first to tell you that I only know the basics of coding, however, it is amazing to see children understand and practice knowledge concepts through the act of coding. Coding makes my students think about what is going on. It makes them understand the algorithms that are taught in class and it provides students with a mode to demonstrate their learning, in place of a test or some sort of worksheet.
Coding makes children think and encourages them to be creators and innovators. It teaches them to problem solve, to think. Isn’t this what teachers really want from their students? So the question then becomes, how do I start?
The simple answer is to begin like you would with any other lesson. Consider the big idea that you want to teach, plan possible outcomes, finding ways to accommodate these for various students. Now, think of a way to integrate coding. You see, my experience has been that it is not coding that makes a great lesson, but the planning that you do beforehand. You cannot go into a lesson and say, “Hey let’s code!”, you have to take the time to plan, to anticipate student issues, to consider ways to ensure the learning is meaningful.
Some lessons that I have done:
- Measuring the distance around my hand in pixels: This grade 2 lesson had students program their pixie to move around their hand and count the pixels during the movement. We then compared the distance of our hand to fingers and the width of our thumb to that of our pinkie.
- Designing a game to create a pattern rule: Students made a game for a partner to guess the pattern rule used. I also had them describe the pattern algebraically. Students made use of algorithmic language to tell the computer what to say.
- Using Lightbot and Kodable: These are two great iPad apps that have many great practical knowledge built in. Counting, rotation, spatial sense, Cartesian planes, etc., are some of the ideas that are brought out through the use of these apps.Coding has endless possibilities. It is only limited by your own planning and innovation. Remember it is not the tool that teaches, but the teachers. Coding is a tool but you still need a solid task to teach concepts effectively.