Read Next

Having Your Algorithm's Ass Kicked by the Internet

TL;DR: Once upon a time, there was a Problem. And lo! I did create an Algorithm to solve it. ‘Twas an imperfect hero, greedy and brutal at heart, yet virtuous in its straightforward character. I spent, like, two hours on it, and I was well-pleased. Then came a hundred hundred Programmers from the Internet to annihilate the Problem and make my poor Algorithm look dumb.

The Legend of Monetization

In CodeCombat’s original pitch that got us into Y Combinator on stage, we said we could make money from employers by finding jobs for our most talented players. That way, we can keep the game free to play for everyone. Last month, the YC partners challenged us to test our assumption and find out whether we could actually get hirable players interested. We set out to make a hard developer challenge level as a proof of concept, and eventually came up with last month’s Gridmancer challenge.

The Wicked Problem

We wanted something we could put together quickly with the CodeCombat level editor that would be hard enough to test players’ programming fu, not just their Stack Overflow fu. I thought back to a problem I had struggled with while working on the CodeCombat world simulation performance. We’d have these dungeon levels with hundreds of Dungeon Wall Thangs, and even though each wall would hardly interact with any of the other Components, there were still places in the code with O(walls * frames * properties per wall) or O(walls * frames * thangs) interactions. Box2Dweb’s collision handling, though smart, also started to slow down with so many walls.

CodeCombat in Y Combinator

On nickwinter.net

Originally posted on the CodeCombat blog.

What a crazy weekend! We launched our beta on Friday morning by posting to a few subreddits hoping to pick up a few more interested users who could play through our levels as we started to release new ones with the level editor we just finished. But we were not prepared for how many people would come check it out. We stayed #1 on all three subreddits for over a day, amassing 1466 points, 384 comments, and far too many players for our real-time multiplayer server to handle (forcing us to shut off the multiplayer and all server code synchronization). And that’s all before we were crushed the next day by what appeared to our beleaguered Scott as all of Brazil, or at least every Brazilian on Facebook. (Olá!)

With all the chaos trying to keep the server up and the bugs down, we slept little and prepared for the next day’s Startup School even less. We had been tapped for on-stage Y Combinator office hours with Paul Graham and Sam Altman. We watched a video of previous on-stage YC office hours and concluded that “office hours” really meant “eight minutes of two of the smartest startup guys in the world demolishing your idea in front of 1700 entrepreneurs and a live video stream”.

See the video. Fortunately for us, they liked our startup and were much nicer than we expected. In fact, as we were walking off stage thinking, “Hey, that went well—maybe we’ll get an interview!”—then Paul whispered something to Sam, who nodded, and they called us back.

Rendering New Theme...