In December, Computer Science Education Week hosted The Hour of Code. Through this initiative, a one hour module was developed as an introduction to coding. A number of short videos about coding featuring a number of celebrities were also produced. The statistics around computer programming are very interesting and it is going to be an in demand skill for success in the coming years.
Following the success of this introduction, I decided to use the ‘tribe activity’ time in the Lower School schedule to offer a coding activity. The program ran for 4 weeks and we primarily used iPads and computers to continue our exploration. Most of the programs we explored used visual programming – symbols to represent words.
Here are the tools that we used to explore:
Coding Tool Kit
Tynker (computer) : Age 8+ http://www.tynker.com/hour-of-code/
Lightbot (app for iPad or android device): Age 8+ http://light-bot.com/hoc.html
Scratch (computer): Age 8+ http://scratch.mit.edu/
Kodable (iPad) : Age 5+ https://itunes.apple.com/us/app/kodable/id577673067?mt=8
Hopscotch (iPad): Age 8+ https://gethopscotch.com/hour-of-code
Hopscotch Curriculum Resources: https://www.dropbox.com/sh/o4vo921f15fjluz/yQQXV6RG-z
Daisy The Dino (iPad): Age 5+ https://itunes.apple.com/ca/app/daisy-the-dinosaur/id490514278?mt=8
Bee-Bot App (iPad): Age 5+ https://itunes.apple.com/ca/app/bee-bot/id500131639?mt=8
Lego Mindstorms Fix The Factory (iPad): Age 8+ https://itunes.apple.com/ca/app/lego-mindstorms-fix-factory/id671493323?mt=8
One of the boys in my club, was quickly able to turn his iPad into an Etch-A-Sketch device using the Hopscotch programming and some basic instructions in approx. 15 minutes. The online module doesn’t work because you cannot tip the screen to make it function but if you have an iPad and Hopscotch installed you can see how it works.
Eventually, I think that once students have developed the basic skills they could start to design iPad/iPhone apps for a specific purpose. It would be interesting to have a summative tasks for a unit of inquiry be related to creating a real-world tool using these skills.
Programming is a great way to teach thinking skills as it requires problem decompositions (breaking down the task into smaller parts to solve one step at a time), pattern recognition, algorithmic thinking (strategic thinking), and abstraction. It is also done in a real world environment, where students are able to try their thinking and get immediate feedback if they are successful or not.