Thursday, 27 June 2013

Part 4: How Can You Get Started with Programming in Schools?

By now you should have an appreciation of how programming can help children and also potentially help reduce the skills deficit, which could benefit the wider economy.  You may be thinking that teaching programming in schools is difficult.  But it doesn’t have to be.  We have compiled a list of ways that you can get started below, from tutorials, to programming games and real life robots.  games-ED also offer services which can help, which I will discuss later in the series.

Image courtesy of Gijsbert Peijs on Flickr.

Online courses/tutorials:
  • Hackety Hack – Teaches Ruby, ideal for teens.
  • LearnStreet - Courses in JavaScript, Ruby, Python, HTML, and CSS where students can practice coding in their browsers. 
  • Lynda.com - A collection of video tutorials covering a wide variety of formal coding languages. 
  • Udemy - Covers a wide range of programming languages including: Java, Ruby, C++, PHP, HTML, CSS, and more.
  • Crunchzilla Code Monster – 59 hands-on lessons to teach JavaScript.
  • Codecademy – Courses in HTML, CSS, JavaScript, Python, Ruby, and PHP.
  • Code School - Courses in JavaScript, HTML, CSS, Ruby, and iOS.

Child-friendly programming languages/tools:

  • Scratch –Drag and drop, media-rich interface.
  • Alice – Enables programmer to see real-time affects of actions.
  • EToys – Media-rich visual programming environment.
  • Waterbear – Drag and drop programming language.
  • ToonTalk – Teaches programming through puzzles.
  • Ruby – Allows beginners to create impressive games.
  • RoboMind – Learn to programme a virtual robot.

Apps:
  • Daisy the Dinosaur – Learn basic, drag and drop programming.  Ages 4+. 
  • Robo Logic (iOS) – “You have to "program" a robot's movements by dragging commands to the memory of the bot”.  Ages 4+.
  • light-Bot (Android) – Similar premise as above.  Ages 4+.
  • Cargo-Bot (iPad) – Similar premise again.  Ages 4+.
  • Move the Turtle (iOS) – Teaches children the basics of programming.  Ages 5+.
  • Kodu (xBox, Windows) – Design a 3D game world.  Ages 8+.
  • KidsRuby – Learn Ruby programming.  Ages 12+. 
  • Hakitzu – Teaches the fundamentals of JavaScript by programming robots to compete in arena fights.

Making Apps:

Image courtesy of Cea. on Flickr.
  • App Inventor – Learn to make Apps for Android devices.
  • Codea – Programming for the iPad.

Making websites:

  • Mozilla’s Thimble - Guides students to change variables to impact aesthetics and usability of sample websites. 
  • Code Avengers – Courses and exercises to teach JavaScript, HTML5 and CSS3.

Programming hardware:
  • Arduino – Hands-on code that interacts with the real world.
  • Lego Mindstorms – Create and programme physical robots through a visual programming language.
  • Raspberry Pi – Designed specifically to help kids learn to program like their parents may have done on computers like the Spectrum ZX and Commodore 64.
  • Brick Pi – Raspberry Pi programming Lego.

Mark Lassoff, founder of Learntoprogram.tv argues however, that when the individual has learnt the basics, it will be their portfolio which will stand them in good stead, “People think you have to go back to school to learn programming and other computer skills, but you don’t…There’s also the myth that you have to be some kind of math or science genius to learn it. Not true. You just need to learn the process, and then practice it. You can build a portfolio by doing volunteer work for a church or charity.”

Please follow @paulladley on Twittergames-ED on Pinterest and like games-ED’sFacebook and Google+ pages for blog updates and interesting games based learning findings.

Monday, 24 June 2013

Part 3: What Skills Does Programming Impart?

This blog post is part of a series.  We have discussed how programming might be able to help children acquire jobs and be better suited to the 21st century ('Part 2: Learning to Program: An Easy Way to Get a Job?'), but how?  Obviously learning to program teaches children programming skills, however, it can also teach and develop much more than this:

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 Twittergames-ED on Pinterest and like games-ED’sFacebook and Google+ pages for blog updates and interesting games based learning findings.

Friday, 21 June 2013

Part 2: Learning to Program: An Easy Way to Get a Job?

Due to the current developer shortage, teaching children to program could be a way for young people to secure themselves a job in a difficult economic climate.  While normally brand new developers would be less desirable than experienced ones, the shortage means that there aren’t enough programmers to fit the number of programming jobs available and to put it bluntly, beggars can’t be choosers.

Image courtesy of Paul Inkles on Flickr.
The number of coding jobs is also expected to increase in the future.  There were 913,000 computer programmer jobs in 2010.  That number is expected to jump 30% from 2010 to 2020 whereas the average growth of other U.S. jobs is predicted to be 14% (predictions from the U.S. Bureau of Labor Statistics).  They are well-paid jobs too.  In 2012, according to the BLS, the average salary for a computer programmer was about $80,000, compared to the average wage of American workers at $45,800.  For more job statistics see Code.org’s stats page.

Mark Lassoff, founder of Learntoprogram.tv says,“There aren’t enough people to fill these jobs because technology and the job market are moving much faster than education in high schools and colleges.”  Many computing curricula are outdated, teaching children skills they can easily pick up themselves, such as how to use Microsoft’s PowerPoint.  In most cases, computing courses are optional and are usually an afterthought.  They are more likely to be lumped in with subjects like home economics and textiles than maths and English.  In the U.S., only nine states have made computer science courses a graduation requirement.

In the UK, chair of the hi-tech industry campaign Next Gen Skills, Ian Livingstone OBE said: “High-tech, knowledge-based industries are major generators of jobs and growth for London, and need skilled computer programmers to maintain their growth. At the moment London’s schools just aren’t producing enough students with the right knowledge and skills that industry needs.  Creative industries, for example, are crying out for graduates who know how to programme and are forced to recruit from abroad.”
 
According to Mozilla's YouGov Survey, three quarters of young people in the UK want to learn how to make games, apps and websites but only 3% of children have the programming skills required to achieve this.  This skill deficit is, to some extent, because traditionally the computing curriculum concentrated on word processing and spreadsheet packages and not on more creative and advanced skills like programming.  However, the UK is in the process of creating a new computing curriculum to try and combat this.

Image courtesy of Steve Jurvetson on Flickr.
Schools that do offer computer science usually restrict the course to students who excel at maths and teach only Java.  “What the computer science community has been slow to grasp is that there are a lot of different people who are going to need to learn computer science, and they are going to learn it in a lot of different ways,” says Mark Guzdial, a professor of interactive computing at the Georgia Institute of Technology.  And of course, along with a shortage of programmers in general, there is a shortage of programming teachers as anyone who can programme is likely to get a better pay elsewhere.  However, as I will discuss in the next part of this series, teaching programming can be easier than expected.

Some companies are taking matters into their own hands.  For example, Living Social (a daily deal site) could not find the programmers it needed.  It ran an experiment (Hungry Academy) to train 24 people to program in just 5 months.  The students all graduated and became full-time developers for the company.

So, to conclude, learning to program at any age could be an advantage in the difficult climate that we find ourselves in.  However, it seems about time that curricula started to change to fit into the 21st century world (of work and in general).  It is also something that is appealing and even 'fun' for many young people that could help them advance their careers from a young age, what have they got to lose?  In Part 3 of the series, I will discuss some of the skills that learning to program can help generate.

Please follow @paulladley on Twittergames-ED on Pinterest and like games-ED’sFacebook and Google+ pages for blog updates and interesting games based learning findings.

Tuesday, 18 June 2013

Part 1: Why is Teaching Children to Program so Important?

This post is the first in a series of several blog posts about teaching children to program.  The first few posts will discuss why it is important, how it can help children get ready for the future (is it an easy way to get a job?) and what skills it can impart.  I'll then give you some ideas about how you can make a start and tell you how other people are teaching children to program.  I will also discuss how it can be an excellent way to introduce Project Based Learning (PBL) - see our post '10 Benefits of Project Based Learning (PBL)'.  Stay tuned, this post is a bit of a teaser and a short introduction to the posts over the next few weeks.

Image coutesy of Fort Meade on Flickr.

The ability to program has the potential to become another essential 21st century skill that children are said to need to have a successful career in today’s world.  Along with being a 21st century skill in itself, learning to program also imparts other 21st century skills in learners such as systems thinking, logic and problem solving.  To learn more about 21st century skills see our post, '21st Century Skills and Games Based Learning'.

Developer and mentor to aspiring programmers Joe O’Brien believes that programming skills are important even in non-technical jobs.  "Not that we want everyone to go out and create Web programs and write the next Twitter, but I think having a base understanding of what happens behind the curtain can be huge,” he said.  “Even if a CEO never codes for her company, just understanding what is happening is going to be huge for her from a risk standpoint, from an understanding standpoint,” he added. “CEOs need to have a lot of knowledge of a lot of different things and programming is a large part of that.”

According to Maurya Couvares, co-founder of ScriptEd, “Coding will be the key to innovation in the future but many students, but especially low-income students, aren’t exposed to it.”  Bill Gates, Google’s Eric Schmidt and Meg Whitman from Hewlett-Packard along with other tech icons agree.  They have developed Code.org, a non-profit producer of programming videos.  They firmly believe that coding, programming and computer science will be the language of the 21st century.  Code.org’s Hadi Partovi argues, "In a world that's increasingly run on technology, computer science is a liberal art that every student should be exposed to, regardless of their path in life.”

That is why teaching to children to program could be so important.  Check back soon for our article 'Learning to Program: An Easy Way to Get a Job?'  The links below will become active as the posts are uploaded.

 
Please follow @paulladley on Twitter, games-ED on Pinterest and like games-ED’s Facebook and Google+ pages for blog updates and other interesting games based learning findings.

Monday, 10 June 2013

The Gamer Disposition and Education

The Gamer Disposition is a collection of five key attributes that gamers possess that make them great employees.  They were thought up by John Seely Brown and Douglas Thomas in 2008 and published in the Harvard Business Review.  The traits are not simply attitudes or beliefs but aspects of character and personality that players bring to game worlds and that game worlds reinforce.  Brown and Thomas argued that these traits make employees better suited to the 21st century workplace than non-gamers.

So what are the traits?

  1. They are bottom-line oriented – gamers like being evaluated and their goal is not to be rewarded but to improve.
  2. They understand the power of diversity – in online games, having a diverse make up of skills and expertise in a team is an asset and often a necessity.  Teamwork is very important.
  3. They thrive on change – gamers expect change; they go beyond simply managing it and actively create it, thrive on it and seek it out.
  4. They see learning as fun – for most gamers, overcoming obstacles is where the fun of a game lies.  Their reward is new knowledge and turning that knowledge into action.
  5. They marinate on the “edge” – gamers are innovative, they think out of the box even when a simpler, more mundane way of doing something would suffice.  They explore the ‘edges’ to deepen their knowledge and understanding of the game.

The authors conclude, “Together, these five attributes make for employees who are flexible, resourceful, improvisational, eager for a quest, believers in meritocracy, and foes of bureaucracy.

What could the education system take from this?

I imagine you can see where I am going with this.  If these traits make for great employees, perfectly suited to the 21st century workplace, should we not be doing more to help this process?  Many children will play games in their own time, however some won’t.  Games based learning in schools could be a safe, monitored and educational way of helping them develop these traits.  The belief that video games are bad for children (whether at home or in the classroom) is simply outdated and there are a myriad of skills that can be gained and developed through playing games.

The traits are also not simply useful for work either.  Being able to cope with and thrive on change, seeing learning as fun, appreciating the power of diversity, being innovative etc are all great traits for people to have in general.  They are important life skills that cannot easily be developed and practiced in such a fun way.  And there are plenty of other 21st Century Skills that games and games based learning can develop (see ‘21st Century Skills and Games Based Learning’).  For example, our educational products are designed to not only support the curriculum and develop subject-based knowledge, but to develop collaboration skills, problem-solving skills, systems thinking, strategic thinking and so on (see the games-ED tab above or visit our website).

Please follow @paulladley on Twitter and like games-ED’s Pinterest, Facebook and Google+ pages for blog updates and interesting games based learning links and resources.

Thursday, 6 June 2013

Gamification Blog: 5 Excellent Articles


Earlier this week, I came across a blog, which is operated by Technology Advice.  They have several blog topics, one of which is gamification and they have a great selection of articles for you to get your teeth stuck into.  I have highlighted a couple below that are particularly interesting and introduced them briefly, just to whet your appetite.

  1. The Debate: Gamification and Education - Discusses the positives (e.g. focus and planning skills and personalised instruction) and negatives (e.g. expensive and limited content) of gamification being used in education.
  2. Not Just Fun and Games: 5 Uncommon Applications of Gamification - Includes making customer support fun, promoting social welfare and more.
  3. Gamifying Healthcare: A New Trend - How gamification is being used in healthcare (in workplaces, not just hospitals) including results such as a 50% drop in smoking prevalence.  For more information on how games can improve health (Cystic Fibrosis, Post Traumatic Stress Disorder, Dyslexia, Depression and more), see ‘Games Based Healing’.
  4. Gamification Fostering Workplace Competition - Discusses the pros and cons that workplace competition could bring to the organisation and its employees.  Pros include productivity, profits and team competition and camaraderie.  Cons include stress, sore winners and losers and reduction of team spirit.
  5. Big Data, A Side Effect of Gamification - A less discussed aspect of gamification but one which pixelfountain (the company which brings you this blog) is very interested in.  Gamification produces a huge amount of data, which can offer insights into employee or consumer behaviour.  This knowledge can be very useful and potentially profitable.

For more interesting gamification articles from Technology Advice (about 12 in total), visit http://technologyadvice.com/gamification-blog/.

Please follow @paulladley on Twitter and like games-ED’s Pinterest, Facebook and Google+ pages for blog updates and interesting games based learning links and resources.

Monday, 3 June 2013

Gamification World Championships

This week I thought I’d bring your attention to the inaugural Gammify 2013 Gamification World Championships, which will be held on October 13th in San Fransisco.


Gamification has been big over the last few months on our blog and this event is definitely worthy of your attention.  The Championships are an innovative, professional competition that celebrates world standard gamification amongst students and professionals.  Three world-renowned judges will decide the winner: Mr. Mario Herger, Ms. Marigo Raftopoulos and Mr. Yu-Kai Chou and the champion will receive $25,000.

Skilled, innovative professionals and students from diverse backgrounds, across the globe will compete in two online rounds, starting on September 1st 2013.  The two rounds assess competitors’ understanding of gamification strategy, experience and mechanics under extreme time-pressures.  Questions will test skills and experience from serious games design techniques to enterprise gamification and will take the form of multiple-choice questions and case studies.

Example Round 1 questions could include: prizing, point scoring, developing rules of play, instant rewards, virtual currency, and creating paths to consumer mastery and autonomy.  Participants will also require familiarity with human behaviours such as creativity, self-expression, social recognition, logic, calculations, achievement and ownership.  Round 2 questions will be similar but more advanced.

The Live World Finals Event will take place in San Fransisco on October 13th 2013.  The top 16 finalists will be flown to the event to be judged by the world-leading judges mentioned above as well as the biggest sponsors in global Gamification and Games Design.  Finalists will be tested on Speed, Innovation, Risk, Gamification Best Practice and more.  There will also be an exhibition Group challenge to help a leading global non-for-profit institution.  The winner will receive $25,000, second place prize is $10,000, third place prize is $5,000 and there is also a ‘Most Innovative’ Award.

Visit gammify.com for more information (and to register).

Please follow @paulladley on Twitter and like games-ED’s Pinterest, Facebook and Google+ pages for blog updates and interesting games based learning links and resources.