|Image courtesy of Tim McCune on Flickr.|
- Systems thinking – programming requires an understanding of how various inputs, outputs, lines of code and so on affect each other.
- Logic and problem solving - it requires a great deal of logic and greatly develops problem-solving skills to work out systematically what a problem might be and how to deal with it.
- Creativity and innovation – when a problem is found, the programmer will often have to find novel ways of fixing it. They may also try to use code in unusual ways, try to make innovative games and so on.
- Maths and science – while not a necessity, learning to programme can encourage students to learn maths in a real world setting. Their programme may also require physics knowledge such as trajectory, gravity, speed and so on.
- Collaboration – programming is often a collaborative activity, which requires individuals to hone their team working. For example, someone might be game designer, another may be head coder, another would be graphic artist and so on.
- Subject mastery – programming requires knowledge not only of coding but also whatever is to be programmed. For example, a game about the water cycle would require the programmers to learn about the water cycle.
- Media skills – most games involve some pictures and sounds. The programmer may also have to learn how to produce and edit these.
While not a skill, as such, learning to program and the act of programming something can be extremely motivating and provide students with a sense of accomplishment and pride. Sam Blazes, a winner of the 2012 National STEM Video Game Challenge says, “Programming is fun to me… It’s something that I can sort of do and have fun and work on, and I can feel a sort of sense of accomplishment when I start working on stuff and even finish something.” This can allow children to learn things without necessarily knowing it. The act of programming is an engaging project that can teach all sorts of things stealthily, in a very fun way.
The next part of the series will show you how you can get started with learning to program or teaching others to program, from apps for 4 year olds, to making lego robots move and interact with the world. We will cover a range of products, tutorials and so on for a range of ages, price ranges and devices.
Please follow @paulladley on Twitter, games-ED on Pinterest and like games-ED’sFacebook and Google+ pages for blog updates and interesting games based learning findings.