This is part of a series of posts that talks about a few things that
schools could invest in to improve and enhance STEM (Science,
Technology, Engineering and Math’s) Education. They each contribute
to the bigger picture of making schools challenging, fun, exciting and desirable
places to be.
In this short post I want to talk a little bit about introducing young people to computer coding and programming with a specific focus on computer games design. Before I do that I want to go back and re-visit some of the history of IVT and Computing in UK Schools.
ICT vs. Computing
As educators and school leaders, our challenge is a simple one. How do we integrate technology into learning and teaching and how do we make sure that all members of the school community, from the policy makers to the classroom teachers, understand that technology is important?
To help us achieve this, it might be useful to think about how technology is often perceived and sometimes retrofitted into schools. At the core of the problem is how ICT is often mistaken for computing and vice-versa.
There was an intense focus on ICT, both in the UK and many other countries, during the first part of the 21st century. This was, at least partly, to equip young people with the skills they would require when moving beyond school to the workplace and, as such, many of the courses taught office-based administrative and productivity skills (e.g. Microsoft Word, Excel and PowerPoint).
In doing this, schools fulfilled their statutory requirement to teach ICT to young people, but this was often to the detriment of children learning real computing or programming skills. The result was a whole decade of children who were unable to code, build and create things digitally; this at a time where many countries were also trying to move from a traditional manufacturing age to a digital manufacturing age. In short, for the last decade we have created a generation of content-consumers, rather than nurturing and developing a generation of content creators.
For evidence of how much of an issue this may be, you only have to look at the UK visual effects industry. Visual effects is the fastest growing component of the UK’s film industry, and the video games industry is the largest entertainment industry in the world, with global software revenues exceeding $50bn (£32bn) per annum.
Unfortunately, in a growing market, the UK is slipping down the global games development league table and the UK’s visual effects industry is reported to turn down millions of pounds in business each year.
Ian Livingston, author of the UK Government’s NetGen Report, states that “A very big part of the problem, common to both industries, lies in their skills gaps and shortages. We simply cannot hire enough computer scientists and this seems madness at a time of such high youth unemployment.”
The political response to this emerging problem in many countries (including the UK) has been very interesting. Almost overnight schools have been instructed to teach ‘real’ computing again. In my opinion, this was the main message from the Minister of Education, Michael Gove, during his 2012 BETT keynote speech. Further pressure has been put on UK Governments following Eric Schmidt's (Executive Chairman of Google) MacTaggart Lecture. Where he said, "Education in Britain is holding back the country's chances of success in the digital media economy". These remarks were mainly based on the facts that computer science was not a compulsory subject in UK schools.
While no one can really argue that the problem needs to be addressed, the sudden switch in priority from ICT to computing also brings with it a number of challenges. Most importantly, children still need ICT skills, particularly those connected with productivity. Second, many within our teaching workforce do no have the professional skills to teach children to code. Indeed, ICT and computing have become so blurred during the last decade that many computing teachers come from an administrative or business background rather than a technical or computer engineering one. Many primary teachers who come from a variety of professional and academic backgrounds will also admit to feeling slightly out of their depth.
Do children actually want to code?
Following Mr Gove’s announcement at BETT 2012, there has been a renewed interest in the teaching of computer science, and specifically computer programming, in schools. This is something that has quickly gained the support of politicians, university computer lecturers and industry specialists. However, many naively thought it might also capture the imagination of young people. The reality is, of course, this is easier said than done. Why would young people be interested in computer programming? Just like any subject on the curriculum, you will only get the majority of learners interested if it is taught in an interesting way. To many young people, computer programming remains an abstract and irrelevant skill.
How do I get children interested?
There is one way that I am absolutely convinced will get most young people interested in programming, and that is to use the context of computer game design.
Before I talk more about some of the game design tools available to schools, it is worth mentioning that the production of a video game makes a powerful cross-curricular project. Projects like this can help break down the subject silos that exist in many schools, promote interdisciplinary learning and develop the essential skills of collaboration, communication and teamwork.
The production of any blockbuster computer game needs market researchers, storywriters, graphic artists, character designers, programmers, marketers, communication teams and even people to design and make the packaging. Then you need to work out at what price the game will be sold, how it will be distributed, and possibly translated into different languages.
There is no reason why a holistic computer game design project cannot be successfully linked to almost every subject on the curriculum. The project will also provide a real and relevant stimulus for students.
Now, let’s look at two of the free tools available for teachers (and another that is on its way very soon).
Scratch has been developed by the Lifelong Learning Group at the MIT Media Lab (Massachusetts Institute of Technology, USA). It is a platform (Mac and PC) that promotes mathematical and computational skills as well as creativity, reasoning and collaborative working.
Scratch can be used to make a number of multimedia applications such as games, animations, simulations, stories and art.
Every object or character (sprite) used in a Scratch project can have one or more ‘scripts’ attached to it. These scripts add behaviours to sprites and allow them to act in anyway the user feels suitable in the context of their project, i.e. move, speak, etc.
The scripts are made up of building blocks that are grouped by category; such as control, motion and sensing. There is very little keyboard input required by the user as all the script blocks are dragged to the scripting area with the mouse and ‘clicked’ together like Lego.
All sprites and backgrounds can be created by the user with the built-in paint editor. However, Scratch also allows users to bring in content from other sources. For example, images you have scanned, photographed or taken from the web. It also comes with a library of sprites and backgrounds to get you started quickly.
Music and sound effects are just as flexible. Either use the built-in sounds, record your own from within Scratch or use sounds you have created with another program.
Kodu is an exciting, easy to use and free software package for game design and programming. You can use it to create elaborate 3D landscapes and build complicated, immersive games.
Kodu is available for the PC and for the Xbox. The PC version of the game allows you to use the keyboard to program the characters and landscape. You can also plug an Xbox controller into the PC version of the game, which is very popular with young people.
The most recent version of Kodu (version 1.2.38) adds a new storytelling feature (ideal for supporting literacy) and a new web-based support community.
Kodu programming involves selecting visual tiles for a condition (WHEN) and an action (DO) – i.e. when this happens, the character does this. It is very simple and intuitive to use. It is a great way to get young people interested and developing a passion for programming and making things.
What do Scratch and Kodu help you teach?
- Scratch and Kodu introduce the logic and problem solving of programming without complex syntax. It demonstrates that programming is a creative medium.
- Scratch and Kodu are objectorientated and introduce conditions and sequence.
- Scratch and Kodu are great tools for narrative creation and storytelling – providing an interesting environment to create stories.
- Scratch and Kodu allow you to change the in-world variables, making it easy to introduce scientific and mathematical concepts.
- Scratch and Kodu build real world essential skills by challenging users to analyse a problem and structure their solution.
Getting started with Scratch
- Don’t re-invent the wheel. There is lots of support available online to help get you started with both Scratch and Kodu.
- Scratch can be used for free (scratch.mit.edu). There are also lots of Scratch tutorials available on the same site, and you can also view other games that users have created.
- Scratch is really popular with schools and each year there is a World Scratch Day (day.scratch.mit.edu).
Getting started with Kodu
- Kodu can be downloaded for free (kodugamelab.com). There are also a number of Kodu tutorials on the same site.
- Kodu in the Classroom is a set of resources that I wrote a few years ago to help you introduce Kodu as either a one-off experience, or as a sequence of lessons. The UK Kodu in the Classroom series is available to download from the Microsoft Partners in Learning (PiL) Network (pil-network.com).
Remember, you don’t have to be able to code yourself; just point your students in the direction of these resources, sit back and see what they create.
Available in the near Future - Project Spark
Players use the Microsoft Kinect and SmartGlass to build environments with mountains, rivers, and towns in part using voice commands. The player can also create events, like inter-character battles. Created Items and objects are able to be shared with other players.
Players choose whether to start from a blank map or a pre-designed level but always have the tools to customize the topography, add plant and animal life, and program behaviors for specific objects, such as a rock that bounces when a player is nearby. Similar to Microsoft Kodu, the topography is modified by pushing and pulling the earth, digging through surfaces after changing the view to adjust a wall or create holes in it.
In his interview at E3 2013 game designer Claude Jerome said that "the game is all about giving players options", like the ability to add a single flower versus a field of flowers just by resizing the flower paintbrush's size. He added that the game is also about "sharing and playing with the community", and that the difference between Spark and LittleBigPlanet or Minecraft is the core ability to customize the game down to the minutiae of the in-game object actions, which lets the players tell more individual stories.
We must help educators understand that computing is science and therefore a STEM Subject.
Please note an earlier version of this article originally appeared in Teach Primary Magazine.