Last Sunday saw another installment of our popular children hackathon at the Tech Museum in San Jose. We get a room full of middleschool students, pair them with hacker mentors, and let them play with all kinds of technology – programming, electronics, robots, that sort of fun stuff.
I had decided that I wanted to show them how to make flash games in <a Stencyl. It turned out to be a super popular station, I feel like I gave a lot of kids the gift of game-making to take home, and feedback was positive. Stencyl got mentioned as a highlight in quite a lot of our feedback forms.
What really worked was knowing the tool that I was teaching, and having a plan for how to introduce the kids to it. Stencyl is a game programming framework, but I figured out that “game” is the fun part of that, and “programming” is more of a necessary evil. Except it’s not immediately necessary: The secret sauce to my table was to use the pre-made example games in Stencyl (particularly the run-and-gun game and the angry birds clone), and use them as a basis for exploring the possibilities of Stencyl.
Very much like the Pong and Chess Javascript games I’d used earlier, this gives you a thing that already works: Starting with a single-level Angry Birds game gives you something you can play immediately, and because the kids have all played it on their phone, they know immediately that it is incomplete and have ideas on how it should be made better. And the first steps to making it better involve making content, not features: Everyone started building their own levels (the built-in physics are fun, that also helps), and eventually got to a point that needed a small bit of programming (transitioning from one level to the next), so by the time they got in touch with the scratch-like language, it was because they wanted to solve a very specific problem, and were already quite familiar with how the game was constructed.
This was totally a recipe for making my life easier, too: I had to install the game on their computer (bringing a USB stick saved my life), get them started with the game and show them the level editor, and they’d be self-sufficient for the next 30 minutes. I will probably run this station exactly the same way again next time. What didn’t work well was when the kids wanted to make their own art: The built-in image editor is not very good, didn’t work at all on Linux, and making game art takes a LOT of time during which you’re not really learning something about making games. I found it was best to steer away from that and make them recycle the existing assets in creative ways.
Almost all the kids at my table installed Stencyl on their own computers, and I feel positive that they’ll work on their game (pun intended) until the next HtF, because they clearly had fun. It was great that Stencyl works on Mac, Linux and Windows, because I had about equal amounts of each come to my table, and it would have been a shame to turn someone away.
Sore point that I want to improve: I didn’t get to show anyone how easy it is to embed the game they were making on a web page. I think that the ability to share their games with friends at school might encourage them even more to keep working on their project between events. Finding an easy way to share games is something I want to do before Hack the Future 7, which is going to be at the Computer History Museum in Mountain View on April 20.