Festival2012/Submit/Play-My-Code

From MozillaWiki
Jump to: navigation, search
  • Title of Session: Build and publish games within the browser!
  • Your name & affiliation: Joseph Lenton, Play My Code.
  • Session format: Learning lab.

What will your session or activity allow people to make, learn or do?

We will show how to build a game, using our browser based tools. This includes being able to edit art assets, and publish it online.

The session will show:

  • How to create a new game from a blank slate
  • Many of the basics that make up the game
  • Ways in which they could take this further

Participants will also be able to publish their game online, to share with others.

By the end,

  • They will have a complete game
  • The means to go away and build future games online
  • An understand of the concepts behind building a game, which they can apply to other languages

How do you see that working?

The instructor will present a lesson that starts with a blank project, and slowly build this up showing features as we go, until it becomes a complete game. Students following along, with us explaining features and concepts as we go.

As we do this, the students will follow along, allowing them to not only be taught, but also learn through implementation.

A big factor is that students can run their code at any time, and we encourage them to be constantly doing this. It allows them to see the effect of every change, giving them constant feedback from their programming, and a deeper understanding of what they have done. At times this is even if we just change 1 line.

Most of all, it allows them to quickly experiment as they are going through the lesson, because they can run the changes directly. We will also be experimenting with small changes as we go through the lesson. It is very common that students end up with their own customized version of the material.

Students will each need access a modern browser (Firefox, Chrome, IE 9 or Safari), and with that they can go to the Play My Code site, and use the tools for building a game. A projector is also required for the instructor. Students can also build without requiring an account for Play My Code; however sign-up will allow them to save their work.

How do you deal with 5, 15, 50 people?

As many people are welcome to join as they want. We would aim to have mostly beginner and intermediate programmers; however more experienced programmers are welcome.

We have run similar classes in the past, involving as many as 30 to 40 children between the age of 10 to 16 years old. The class is run as one group, with all students following along with the instructor.

We use a number of strategies to help cope with such a big single group:

  • The instructor also builds a game on a live projector, allowing the students to see what the correct result is. This allows students who get lost, or don't understand a section, to use this as a reference to get back on track. It also allows them to still follow along with the work, giving them more time to understand, without being left behind.
  • Short breaks are made every few minutes, to ensure students can keep up with the instructor, answer questions, and resolve major issues.
  • We have the students re-run and test their code after every small change, so any problems that do arise, are typically minor, and relate to what we taught seconds ago.
  • Running their code instantly after every small change also helps to enforce what that change just did, along us to move on to the next part. Running after every small change also helps to avoid the student feeling overwhelmed by a new piece of material.

On top of the prior teaching experience using Play My Code, I personally also teach introductory programming in Java to University students. I also have experience teaching on other introductory teaching events, such as teaching using Greenfoot.

How long within your session before someone else can teach this?

The whole session is one hour to cover everything.

However we usually find participants start being able to experiment, and throwing in their customizations, after the first 10 minutes.

After 30 minutes, most of the basics are usually covered, and it's at this point a student could go and experiment on their own. The second half is done finishing the game, which helps to bring all the work together into one piece, and give them something to show.

Someone with programming experience should be able to teach this to someone else after the first 30 minutes, whilst everyone will have the ability to use the tools and show others after the full hour.

What do you see as outcomes after the festivals?

Building games!

Play My Code is all about quickly prototyping, so you can have something fun built and published quickly. Many programmers and non-programmers want to build small games as a hobby, but don't have the spare time to really commit. By introducing them to Play My Code, it will give them an outlet to build and share their work.

They will also be able to publish their work online, which they can share with others, including the ability to view the source code and fork each other’s work.

So we hope those that joined us will be able to go away, and have fun building games, and sharing their creations.