Method of Action

our blog!

Learning made enjoyable

Method of Action is peer to peer education for people who want to get things done. Learn by doing, participating and teaching.

Getting pre-launch traction with web games

by Mark on April 9, 2012 9:57 PM on Advice

The path travelled between an idea and a minimum viable product is often ruthless. Depending on the scope of your project, it takes between a couple of weeks and a couple of years to get anything out of the door. Few people possess the focus and determination required to get-to-launch, and I'm certainly not one of them. I have a graveyard of half baked ideas littering my hard drive, but Method of Action was something that I really wanted to deliver, so I knew I had to set some intermediate checkpoints before launching our own product.

I often describe Method of Action as an intersection between Codecademy and Project Euler, but for design. Every course has a series of challenges that you must achieve to complete the course. Most of the challenges are simple design tasks such as design a newsletter, or design a blog post, but some of the challenges are games that require you to achieve a minimum score.

Even though I set out the games as mini-launches that would help us maintain high spirits, their success caught me by surprise. Never in my wildest dreams I had imagined I'd have 20,000+ people to be notified when we launched, or 9,000 followers on Twitter. So I'm writing this out for fellow entrepreneurs who might want to take this approach for pre or post-launch marketing.

As a sidenote, I have a profound dislike for telling others what to do. Every startup has it's own specific limitations, be it funding, location, market or talent. Your best course-of-action depends on your constraints. Please read this from where it comes: a two person bootstrapped team in the middle of nowhere where the only word-of-mouth marketing is going to come from what we do ourselves. The games are also part of our product, so even if we launch an unsuccessful game we are working towards the completion of our product.

KernType

kernscreen.png

KernType was our first and most successful game. It received more than 625,000 uniques in its first two weeks:

kerntype-uniques.png

It was featured by some big names like Salon, Kottke, FastCo, BoingBoing and Computer Arts. This might seem like the brunt of the traffic, but if you actually look at the referrers, big name blogs don't send that much traffic. Most of it comes from people sharing it on Twitter and Facebook.

kerntype-referrals.png

To promote it we posted it on Hacker News and Reddit, and it quickly made it to the front-page of each site. From there it took life on its own.

A nice surprise was a site I had never heard about: Design Made in Germany. Fortunately they are not too strict about the Made in Germany part, because KernType was actually made in Cancún.

KernType took about two weeks part time to program. I am a terrible programmer and I'm sure any decent front-end programmer could have done it in half the time. Even though I used the Raphael library to get it done (which provides a single API for SVG and VML, which older versions of IE support), I just didn't know how to get around some issues with Internet Explorer 8 and below, so I released it as a modern-browser game.

Funnily enough, I didn't receive a single complaint about IE, but Android users were very vocal about their disappointment because older versions of Android don't support SVG.

ShapeType

shapetyper.png

We were high on the success of KernType, so trying to take advantage of the momentum I quickly mocked up a new game where you control bezier curves to match the shape of a letter. We released it three weeks after KernType and promptly posted it to Reddit and Hacker News. Both tanked.

shapetype-uniques.png

Fortunately it still took life on it's own, and it was a moderate success on it's own right. It had 300,000 uniques in little over two weeks, the big surprise now being StumbleUpon and Dirty.ru.

shapetype-referrals.png

ShapeType took about one week to program. Even though it was more challenging than KernType I had gained fluency in Javascript, but my knowledge about geometry wasn't up to par and I had to spend a lot of time learning about bezier curves and I struggled mightily with simple stuff like the Pythagoras Theorem.

Color

colorsc.png

We took a break from games for some time in order to focus on the actual product, it would give me time to think about the next game. We wanted to create something that unrelated with typography, so I brainstormed a bit with my co-founder (and partner) about our next step. We settled on a game of color.

color-uniques.png

Again, we posted it to Reddit and Hacker News where it quickly gained steam and went viral again. It had nearly 400,000 uniques in two weeks, this time the surprise came from Tumblr, which had even more referrals than Twitter.

color-referrals.png

Color burned me out a bit. We had mocked up the game mechanics for an initial game, and after two weeks I had a pretty functional prototype. The problem was that it was incredibly boring. Our previous games gave the sensation of creation, even if you are just moving letters or nodes around you end up with a nice looking result. With our initial prototype you would just click on colors and get a score, it felt too much like a quiz.

We went back to the drawing board and made some one-day iterations on ideas, but they turned out either too difficult to implement or too subjective to be scored automatically. We settled on what is essentially a timed color picker with some cool features, such as colorblind assistance. This time I used D3 in addition to Raphael. It took me an additional two weeks to push this out of the door, so in total I used four weeks part-time to launch this game.

The aftermath

The job isn't finished once you release a game. There will be a couple of small bugs that often prove challenging to solve, or really good suggestions from users that we can't help but implement. I have learned to set aside at least a week of answering e-mails and fixing stuff once we release a game. Having your inbox flooded and your Twitter popping up with mentions is quite distracting.

We have also received emails from design educators telling us how convenient our games are for teaching design concepts, which is very encouraging as we know we are on the right path.

All in all, we have amassed more than 2.1 million unique visitors; 200K FB likes and 200K tweets and we are very pleased with the results.

total-uniques.png

The accumulated referrals are quite a sight, the amount of traffic that social media sends our way is just mind blowing, it dwarfs the accumulated traffic from aggregators, which come in at a distant second

total-referrals.png

We have 20,000 sign-ups for people to be notified when we launch. The conversion rate is a bit on the low side, but it is deliberate as we didn't want to push too hard on notifications. Method of Action will rely on community generated content, so the quality of our product depends on the quality of our users. I could have easily added a sign up form at the end of each game, but we linked to our landing page instead. By doing this we—hopefully—filter those truly interested learning about design.

What we did wrong

We discussed our last game too much before implementing it. I didn't realize it, but pitching a game is a tricky proposition. If you think about it, Tetris is a puzzle where you must accommodate colored blocks to form lines. Angry Birds is a game where you sling birds into blocks, which then collapse to crush pigs. Doesn't sound like too much fun.

There is no point in discussing how a game will work, unless it's very similar to an existing game. It is better to simply implement your idea as soon as you can and iterate from there.

From a SEO perspective, another mistake was putting the games in their own subdomains. I believe that self-standing content that doesn't share navigation or purpose is meant to have a different Top Level Domain, or if it's related but not within your main audience or purpose then it should reside in it's own subdomain. Domains such as store.diesel.com or developer.apple.com are good examples of this.

However our games are actually part of our product, so we should have used something such as http://method.ac/challenges/kerntype/. By not doing this we are missing out on a tremendous amount of PageRank.

How to create a successful game for your own product

Before Method of Action I used to create small games and quizzes for my personal blog (in Spanish). I'd read, for example, that people have trouble distinguishing people from a different race than their own, hence phrases like "all asians look alike". So I would gather some pictures off a yearbook and implement the experiment in the browser. You can find the experiment here (Flash SWF, in Spanish). At the very least people were engaged with the quizzes and the point made was very clear, even for the most uninterested users.

What I gathered out of these little exercises is that any kind of information asymmetry can be leveraged into a game. Anything that you know and I ignore can be transformed into a pleasant learning experience.

These are contrived examples, but I find them immensely more interesting than what big brands are doing today. They pay creative agencies tons of money for what is essentially a generic branded game that has little to do with their domain.

Show respect for your users

Edutainment has reputation as being boring, and for good reason. Most edutainment is mind-numbingly dull, and when you intersect edutainment with marketing it's a recipe for disaster. One brand of dog food had a game where you had a virtual dog, you could feed it chicken, chocolate, or their own dog food. If you made the wrong choice (you can guess what), the app would lecture you on why it was wrong.

Users don't want to be lectured, they want to be entertained. Even then, users hate wasting time. When I'm done playing a game I often feel remorse. I should have been doing more important stuff. When you throw education into the mix that feeling disappears because you are actually learning something.

You must also try to find the right difficulty level. I must confess we go by feeling, but it might be a good idea to test on a couple of users before releasing into the wild. A game that is too easy is a boring game, too challenging and your users feel annoyed.

Make it challenging for yourself

I have a developer friend from whom I learned one of the best lessons in programming: for every project you do, incorporate a technology or constraint which you haven't used before. For KernType it was CoffeeScript and full keyboard support, for ShapeType it was geometry and seeing if I could produce something attractive with an ugly color scheme (still unsure if I succeeded with this!), for Color it was D3 and color blind assistance.

Incorporating new constraints and technologies added the right amount of challenge to the projects, it made them interesting without being frustrating. I have learned a lot along the way.

If you are a programmer you might be surprised to learn that none of the games use Object Oriented Programming, at all. My mind was damaged by Basic decades ago, and my toolset only includes functions, loops and conditions. I'll make sure my next game uses OOP, even if this is not evident on the font-end it will hopefully improve my delivery times.

Every marketing approach burns out users

You might remember the time when apps used to be invite only, either because of real scaling concerns, policing on community quality, or just plain nasty artificial scarcity. It turned out to be a great marketing tool, people would give them out on their blogs, trade them in forums, or even sell them on eBay. Of course, that approach is now dead, and when I encounter one of these websites I promptly hit my back button.

Nowadays the craze is in the LaunchRock kind of invite: if you share it on Twitter and Facebook, you further along the queue. This approach worked for the first few startups to use it, but frankly users can only get so excited about a product that doesn't exist yet. I get exasperated every time some of this spam shows up on my timeline.

I'm sure that if many startups used the game approach to launch, interest would decrease. A well made game has value in itself, but time is a limited resource and novelty would wear off, making it a losing proposition.

In summary

Make it entertaining for others, and challenging for yourself. Don't lecture, entertain. Don't push too hard on promoting your product, let the context do the promotion.

4 comments

k
April 17, 2012 2:09 AM

I was with you until you said you'd introduce OOP just to learn something new. Stop right there! You make great systems without OOP already, please don't become a mindless OOP-drone just because someone says it's the right thing.

At the very least, read steve-yegge.blogspot.com/2006/03/execution-in-kingdom-of-nouns.html and have a critical mindset.

April 17, 2012 2:14 AM

I can't dismiss OOP without understanding it first, that's part of having a critical mindset :)

April 26, 2012 12:49 AM

Mark, your work is truly an inspiration. This is also a really well written piece with some fantastic advice. I'm a big fan of always incorporating one new element; It's like a safeguard against complacency not to mention the learning opportunity.

I really look forward to what's next!

June 18, 2012 5:10 PM

Hi Mark! I appreciate the element of creation you bring to these games at a very granular level. Type is, arguably, one the most basic and invisible building blocks for any web-based product, so making it entertaining is quite genius.

Thank you so much for sharing the thought and process behind these games!

Write a comment