Archive for August, 2010

Don’t be a NAMCO

Monday, August 16th, 2010

I noticed a disappointing post via Slashdot the other day; apparently Namco has decided to force MIT to remove a PacMan clone made in Scratch. At face value, that probably doesn’t sound like a big deal to you, but that’s probably because you’ve never heard of Scratch. Allow me to explain.

Scratch is the future of programming education.

I’ve been teaching kids to program using Scratch for years (through OCRI). The reason we often choose Scratch is that it was made by MIT with the express goal of introducing students to programming and programming concepts (check out the About Scratch page if you’d like to learn more). The idea is that students who have never programmed before can create real, working software applications and share them online for other students to gain inspiration and learn from.

This is very similar to how real software development works. These students pour their heart and soul into creating something they care about, and proudly share it with a community that reacts to their ideas — adding features, remixing concepts, pushing the boundaries of what can and can’t be done. This is exactly how the web works. This is how kids learn.

Of course, if you’re Namco, that’s less important than preserving the copyright of a game that is older than almost everyone that uses Scratch (myself included).

Why is a Pac-Man clone important?

Several reasons:

First and foremost, it’s something kids recognize and can relate to. The tutorials for Scratch make some pretty bland applications, so to really push them to create something incredible, it’s important to show the students something they find impressive. The go-to applications for this are game remakes like Pac-Man and Tetris. Why? Because these games are instantly recognizable, and get students hooked on the idea of Scratch. They realize that with a bit of hard work, they can make something really cool.

Second, game remakes help the creative process. When you start with a blank slate, the idea of making something fun or interesting can be very daunting. Where do you even begin? For students, this can lead to frustration. Encouraging them to draw from other things they like helps narrow their focus without robbing them of choice. They can make something that they want to make, focus on solving the programming problems for that specific game, and make whatever creative changes they see fit along the way.

Finally, polished games are extremely difficult to write in Scratch (even something as basic as Pac-Man). These examples always contain interesting techniques and approaches to problem solving that show some really neat aspects of Scratch that I’ve never seen done any other way.

What does NAMCO get out of this?

You tell me. Do they really think people were lining up to play a Scratch version of Pac-Man? Are any of these (likely non-existent) people going to go out and buy a copy of Pac-Man from Namco now that the Scratch version has been removed? Other than ruining something that means almost-nothing to them and a whole hell of a lot to people like me, what exactly does Namco expect to accomplish?

What if they took the opposite approach. What if they decided that, copyright be damned, it’s awesome that 30 years later people still find the original Pac-Man fun. What if instead of being appalled, they were honoured that someone chose to learn to program by reproducing one of their games. Can you imagine a world where rights holders and every-day people with no intention of ripping anyone off worked together to promote culture and innovation? Because that’s not what I see here. I see a company that has its priorities so ass-backwards that it’s targeting a platform whose sole purpose is to help children learn.

Don’t they have better things to do?

Elsewhere: HTML5 and Browser Testing

Monday, August 9th, 2010

I wrote a couple of posts for work last week:

Hopefully those will be of interest to you if you’re into techie web stuff.

This week’s post for this blog is a bit more opinionated than usual, and is taking longer as a result. It probably won’t be up until tomorrow. But it’s going to be my first post (ever!) about copyright, which is something I can get a bit touchy about, so you don’t want to miss it.

Be Your Own Ambassador

Monday, August 2nd, 2010

These days, your identity on the web can be quite broad. You might have a blog, you almost certainly have a Facebook account, you’ve probably at least heard of Twitter and LinkedIn, and at the very least, you watch YouTube videos and read other people’s blogs. To make things seem even more spread out, many interactions in these spaces tend to be very short — and I don’t just mean Twitter, I bet your comments on Facebook and several other social tools are usually a few hundred characters or less.

With such a wide set of places to leave your mark, and these interactions tending to be shorter and shorter, it’s easy to make a lot of them and its easy to make them without thinking too hard. Lately I’ve been trying to put more thought into comments I leave on people’s blogs and tweets that I’ve whipped up on the spot, and the other day I realized something: Every tweet, every status update, every forum post, and every comment I leave online, anywhere, is an opportunity to make a good first impression.

Pause and consider that for a moment. Every time you submit any content online, someone else is meeting you for the first time. Sometimes it might really only be one person, but often it’s dozens, hundreds, or even thousands of people. Now imagine meeting this many new people in person rather than through a screen. Would you still just blurt out a quick statement without thinking? What kind of first impression would that leave?

Think of this from a branding point of view. Every time you write a quick, pointless statement online, you’re wasting a chance to properly introduce yourself to a handful of new people. Why not seize every opportunity to make a strong first impression — something people will remember?

Some tips for making those first impressions count:

When you post on a blog or forum, link your name to something. There are plenty of options: your blog, your twitter, your shared items in Google Reader, anything you have that says more about you. If I like what you have to say, I’m going to want to know where I can go to listen to more of you.

Please (please, please, please!) don’t just write “great post!” when you comment on someone’s blog. That doesn’t tell me anything about you. Mention why the post is great: what do you like about it? Do you have a similar experience to share? Does it remind you of something funny/stupid/unique? If you’re going to take the time to leave a comment, leave something worth reading — or better yet, something worth re-reading.

Along the same lines, when commenting on something in Facebook, don’t just say “lol” or “epic!”. That’s what the Like button is for. If you’re going to comment on someone’s status, add a bit of personality. You never know who might gain value from your reply, and something heartfelt and sincere could really make the original poster’s day.

Try to be helpful. This doesn’t just apply to question-answer sites like Stack Overflow; people are asking for help all the time, using every tool available to them. This includes the obvious ones like Twitter and most forums, but the same goes for blogs and Facebook/MySpace/Yammer. You probably know all kinds of things that others don’t — share that knowledge!

Be personal. Remember that you’re interacting with one or more human beings. Don’t spam us to death (I’m looking at you, LinkedIn “power users” and Twitter “experts”) and try to talk like you would talk to someone you’re meeting at a park or grocery store. Be humble and respectful, and don’t just talk about yourself.

Proofread before hitting submit. Those typos and basic grammatical mistakes that ruin otherwise great resumés can also sabotage thoughtful comments. Don’t let easily-correctable errors distract me from what you have to say.

Finally, practice makes perfect. This post isn’t meant to scare anyone away from online interactions. Make lots of them; just remember that each and every one is a chance for you to show the world how great you are.