Coding is science. Chez Vivian made this important discovery and explained to me that the steps to coding are the same as the scientific method. You put forth a hypothesis, you test your hypothesis, formulate your discoveries and then come up with a new understanding. You try to create something in code. You test out your idea, it either works or doesn't and then you have a new understanding and can try a new hypothesis.
So what better way to incorporate coding into the classroom then in science. My students were studying electricity. They had already had a couple of lessons where they played around with various materials circuit materials. They had made several important discoveries and developed questions related to which materials would make a circuit work. Which was perfect because one of our lines of inquiry was:
I had the perfect tool to help students test this hypothesis, a MaKey MaKey. I bought a Makey Make over the summer because they looked awesome. I loved the potential they had for creativity. Basically it works by plugging it into the computer and then attaching the crocodile clip to a conductor. That conductor then acts as the controls for a computer. So for example if you clipped the Makey Makey to a paper clip, every time you touched the paper clip you could have it act as the space bar.
The MaKey Makey was perfect for my science lesson because it basically is a circuit which controls the computer. If it is hooked to a conductor it will control the computer. If it is hooked up to an insulator it won't work. My students had predicted what would conduct and what wouldn't. They then gathered various materials around the room to test. For example one group of students chose paper clips, pencils, a stuffed animal, an eraser, water, and a whiteboard marker.
They then hooked up the Makey Makey, wrote a very basic program in Scratch and tested to see which objects made their program work. In this example the group wrote a program where if you press the space key, the cat turns 15 degrees. But what really happened is the character turned when the student touched a paper clip but he stood still when the student touched a pencil. As the students tested various materials they kept track of their findings. They were super engaged and in the end they had a great understanding of what a conductor and insulator were.
They also had the chance to make some basic programs in Scratch. I did this as a whole grade 5 rotation so for many students, this was their first time using Scratch. I loved that the kids got to dabble in what could be possible with Makey Makey and coding. I really hope to give them more time to design and create something really cool with it such as a Powerpad style pong game or a piano like the one from the movie "Big". Their are all sorts of possibilities. And as the kids work on creating some of those possibilities the scientific method will be how they figure it out.
Two of the biggest questions that need to be asked about coding are when and who. When do we teach it? Who is responsible?
Anytime we learn something new we must be taught explicitly how to do that said thing. We must also be given time to apply that skill. I believe this also applies to coding. We need time for kids to learn it as a stand alone subject. This can be done in after school coding clubs, lunch clubs, specialist classes or in the classroom. At my school three teachers (including myself) and the Elementary Tech Coordinator started our own Elementary Coding club and I know of other schools who have done similarly. It has been a fantastic place to introduce kids to coding concepts and let them begin to create with their knowledge.
However, I believe that we can't stop there. Coding must be integrated into the curriculum. To teach it only outside of the classroom is similar to teaching someone how to write an essay but never giving them an opportunity to write an essay about something they are learning in school. Knowledge must be relevant to students in order for it to be retained. Our job as classroom teachers then is to figure out how it can be integrated into our classrooms. We need to stop thinking of coding as something that just the "tech" people teach. It is something we can teach. It is something we can use as a powerful tool to enhance student learning.
The more I learn about coding the more opportunities I find for incorporating it into my class. Here is a link to a document which lists various ways that coding can be brought into a classroom. Anyone can edit the document so please add any lessons or ideas that you can think of. Thanks to everyone who has contributed so far. I hope that as we all begin to learn from each other, coding can become something that is not just an extra subject to teach, it can become embedded into our teaching practice.
Mindy Slaughter is a classroom teacher at UNIS Hanoi. She started learning to code when some of her students wanted to study it for the PYP Exhibition. She has since help start the Elementary Coding Club and is a founding member of the Global Codeathon. She believes coding opens the doors for student creativity and is working to integrate it into the curriculum.