I've only recently been run over by the 'learn to code' bandwagon, and I can safely say, if your kids aren't "learning to code" then they probably should be.
The reason? Because learning to code is the last thing that children are actually learning when they are "learning to code". It's a little bit like The Karate Kid, with a little less creosoting and polishing. Our Y5 students have started learning to use Scratch; the simple programming language developed at MIT and they are loving it... and learning!
Confidence
The first thing they are learning is that they are in charge of the computer and can make it do whatever they(this is the main objective of the codeclub.org.uk). want; rather than the other way around. For the app generation, where creativity is downloaded from an online store, this is a huge shift. With Scratch, children learn to move a cat across the screen, but after a quick internet search for "Scratch Pac Man" you can load up a fully functional game written in the same language; and then 'open up the hood' to look at the code underneath. Their response? Wow!
The first thing they are learning is that they are in charge of the computer and can make it do whatever they(this is the main objective of the codeclub.org.uk). want; rather than the other way around. For the app generation, where creativity is downloaded from an online store, this is a huge shift. With Scratch, children learn to move a cat across the screen, but after a quick internet search for "Scratch Pac Man" you can load up a fully functional game written in the same language; and then 'open up the hood' to look at the code underneath. Their response? Wow!
Problem Solving
It takes a while to go from making Felix the cat slide across the screen, to making your own game... sometimes it takes a while to make Felix walk across the screen... but it is possible. And it demands problem solving. Ken Watanabe (2009) argues that problem solving "isn't just an ability; it's a whole mind-set, one that drives people to bring out the best in themselves and to shape the world in a positive way." Watanabe goes on to say that "The experience kids get from having an idea, taking initiative, and learning from both their successes and their failures is invaluable." Programming with Scratch is all about problem solving; being methodical and organised and checking the script blocks to make sure everything is in the right place.
It takes a while to go from making Felix the cat slide across the screen, to making your own game... sometimes it takes a while to make Felix walk across the screen... but it is possible. And it demands problem solving. Ken Watanabe (2009) argues that problem solving "isn't just an ability; it's a whole mind-set, one that drives people to bring out the best in themselves and to shape the world in a positive way." Watanabe goes on to say that "The experience kids get from having an idea, taking initiative, and learning from both their successes and their failures is invaluable." Programming with Scratch is all about problem solving; being methodical and organised and checking the script blocks to make sure everything is in the right place.
And when the problem is solved? Listen out for the "Yesssss!" from the children.
Teamwork
Teamwork
If you want to see teamwork in action, ask children to help you solve a problem. People work in teams to solve problems quicker, but if the teacher already knows the answer then it's not an authentic problem... I asked for genuine help from a Year 5 class to enable me to program a second script to run after the first had finished. Before long I had three students up at the whiteboard with me. We haven't solved the problem yet, but we worked as a team... and with a different kind of energy. In the classroom too, children are working out problems between themselves. Asking others for help and volunteering their help.
Persistence
When the answer isn't with the teacher at the front (or at the back of the book) children will have to be more persistent if they want to solve the problem. If the problem is authentic, and they have the support of a team they are going to be more persistent. Of course, the cycle can't go on for ever, but that's where the next attitude comes in...
Creativity
There are plenty of step-by-step activities already written for Scratch, but after that quick look at Pac Man, or Space Invaders you can see that there is a lot more that can be done with a little imagination and creativity. Creativity doesn't have to be difficult either. The code for these games is shared, and can be modified easily. There are many starter projects to open and build upon too! One tip, however: don't try replacing the 'Pac Man' sprite with your own photograph and expect the reaction to be quiet and measured...
Write an adventure story? Make a game? Animation? Children can program pretty much anything to do anything with Scratch, but learning to code is much more than learning to write applications for iPads. It is about learning to work in a team, to solve problems with creativity and persistence. It's about building confidence and thinking skills... that's a lot of desirable attributes - it just so happens that computer programming can help.
Reference:
Watanabe, K. (2009) The Importance of Problem-Solving Available Online at: http://goo.gl/9YGAja Accessed: 6 March 2014.
There are plenty of step-by-step activities already written for Scratch, but after that quick look at Pac Man, or Space Invaders you can see that there is a lot more that can be done with a little imagination and creativity. Creativity doesn't have to be difficult either. The code for these games is shared, and can be modified easily. There are many starter projects to open and build upon too! One tip, however: don't try replacing the 'Pac Man' sprite with your own photograph and expect the reaction to be quiet and measured...
Write an adventure story? Make a game? Animation? Children can program pretty much anything to do anything with Scratch, but learning to code is much more than learning to write applications for iPads. It is about learning to work in a team, to solve problems with creativity and persistence. It's about building confidence and thinking skills... that's a lot of desirable attributes - it just so happens that computer programming can help.
Reference:
Watanabe, K. (2009) The Importance of Problem-Solving Available Online at: http://goo.gl/9YGAja Accessed: 6 March 2014.