Founding Monocle Studios.
Waiting to hear if I would be hired by Yahoo! in 2008, Luke Hatcher and I founded Monocle Studios. Between June 14th and November 7th, we designed and released our iOS game touchDefense. Unlike the story of Digg V4, this story has no industry relevance.
However, it’s a period I personally look back on rather fondly.
The opening menu included animated towers and creeps that would periodically spawn and be vanquished. This was my favorite feature.
In 2008, I had just completed my year-long contract teaching English in the Japan Exchange and Teaching Program. While my contract had lapsed, my desire to pay rent had not. I saved most of my earnings during JET, which is much easier when you live in nearly-free municipal housing in the Japanese countryside, but I still needed to start making money.
I had three valuable cards in my hand.
I arguably knew how to write software. I was naive and fortunate enough to think health insurance was an optional expense–it was an era of my life punctuated by a deep excitement when I finally felt I could afford to buy six packs of Samuel Adams instead of the Champagne of Beers. Most importantly, I happened to know Luke.
Luke and I attended Centre College together and would later work together at SocialCode, but at the time we didn’t know each other too well. We were both excited by Processing.js and we, along with our friend and classmate Peter, created Processing Tower Defense (source), or PTDef for short. Peter was interning at Metaweb at the time while completing his masters degree, and he was the only Computer Science graduates from Centre I knew who’d made it to Silicon Valley; still a small cohort today.
Amazingly, this game still works perfectly a decade later. Modern browsers and JavaScript are an amazing platform to develop on. At the time I believe it only ran quickly enough on one or two browsers to be playable.
Once we got the JavaScript game working, we started to wonder if we could participate in the principle gold rush of 2008: the Apple App Store. Luke was ready, he already had an iPhone. I did not, so before I drove up to my new living situation in New Jersey, my father and I drove three hours to the closest Apple Store in an upscale shopping mall in Charlotte, North Carolina, and I bought an iPhone 3GS shortly after its release. That phone was the most expensive thing I’d ever bought, and nestled within its curved black edges was an ethereal ticket to participate in the App Store.
Somewhat ironically our first commit to our nascient iPhone game was made by Peter, who got busy with graduate school and work, never making a second commit.
Implementation had begun. Before we got too far along, we had to figure out a few things: the name of our company and a name for our game. Luke came through with what would become our name, Monocle Studios.
By October 1st, we were fully formed.
After we formed the LLC, we got a complimentary session with a business advisor who must have been about as experienced as we were, and this meeting of the minds was ill-fated. I have no memory what this guy’s name was, so I’m just going to call him Chad.
Chad started the call with the demand that we define “monocle” for him. It turns out, neither Luke nor I were fully prepare to define monocle to Chad’s exacting standard. Disappointing Chad with our feeble explanation soured the mood. Chad further demanded that we lay out the full extent of our business ambitions, framing the question by first regaling us with the significant number of successful businesses that he was personally already running in his spare time, and the intensity that one must approach the game of financial gain to operate on Chad’s level.
Chad was not there for hobbyists without a business plan, and Chad wanted to know if we were just doing this as a hobby, because we ought to know “the IRS has classifications for hobby businesses, they’re called hobby businesses.”
Is that a real classification? I have no idea.
I do know that Luke doesn’t know either, because at roughly that moment Luke, bewildered at our free consultation turning into a Chad-led Chad-celebration, went on the aggressive. Luke provided Chad with what one might choose to describe as very concrete feedback. I started backpeddling, attempting to salvage a very clearly unsalvagable situations, and shortly thereafter the call ended.
We did not engage Chad’s services.
Now that Monocle Studios existed, our game needed a name. Sometimes you’re struck by a lightning bolt of inspiration, and sometimes inspiration is generating generic names and then filtering out existing trademarks. We took the later path.
From start to finish it took us 568 commits to finish the game, including the very simple marketing website we developed in the same repository.
We hosted the website on Dreamhost,
which was the only host I felt comfortable paying for at the time. Today their
hosting costs $2.59/month, which seems to accurately reflect what I recall paying and
is a fair price for the underlying product: hugely oversubscribed shared hosts
gleefully configured to support mod_python
and Ruby’s Passenger but without the memory to run either.
The last feature we got working was serializing and deserializing game state. Early iPhone were notorious for firing low memory alerts, after which you had a short time window before your application was forcefully terminated, so we needed to be able to save and restore state quickly. Each save wrote and each restore read a recursive XML file with all the relevant state. I got stumped by some aspect of serializing inflight missiles, and which we never ended up implementing that functionality. Fortunately this looked morelike a rendering blip than a loss of state, and never came up.
I like to think we had a creativity in many of our small details, hindered by a total lack of game design experience and questionable execution decisions. I can only stress how little we knew about graphics transformation, iOS, or game design when we started.
Luke on his favorite feature: “My favorite feature by the way: because mobile games didn’t exist and we didn’t know any better, I added a menu option for “Exit Game” and called the appropriate system.exit(0) or whatever. It took me years to realize it “worked” only because it led to a EXC_BAD_ACCESS
crash.”
We were getting close to our launch when Fieldrunners released, which was a vastly more polished game than ours. Some might have responded by rethinking our graphics or gameplay, but we took the must easiest route, and dropped our price to $3.99.
“We have a better name,” and other rationalizations.
We did end up finalizing on $3.99, and by November 7th the game was live and folks were buying it.
Launch day had two highlights. First, folks actually bought it! Second, I got into an internet argument with someone because I thought they were insulting our game until Luke pointed out that our game’s name was so generic–and I was so on edge–that I had mistaken our game’s name for another similarly named tower defense game. Oops.
“Regarding your last post… the guy was talking about another game… your defense was admirable though.”
It was a truly nervewracking moment. Hope springs eternally, and I went to sleep that first night expecting that some kind of App Store magic would gather, bless our creation and culminate in a swell of $3.99 payments.
Was it a financial success? Well, no.
I’ve often summarized the aftermath as Luke and I making thousands of dollars, attempting to clarify just how badly we did. After digging into the numbers, it turns out that I was wrong. While I might have been comfortable describing us as selling thousands of dollars of product, I believe a certified accountant would call it “one thousand.”
The final 2008 revenue was $974.41. We spent $99 of that on an Apple developer certificate, and another $500 buying music from my friend Jesse Lord that we planned to use in our next game. I loaded up Jesse’s music while writing this, and I must say that it’s quite good, in the vein of Alpha Conspiracy.
I forget how much of that revenue went to Apple, certainly not much went to taxes at that level of revenue, and I haven’t the faintest clue which GPG keys we were using to encrypt files back then, so they’ll remain lost to history.
What I find especially funny reading the emails a decade later is that at the time we weren’t content to just build one game. While we were trying to get touchDefense out, we started a bridge builder game, and I was working on a project called Codernote (src), which was sort of a programmer-optimized note writing and filtering app with a very bad color scheme.
We also started and wrote much of a second game, Conquest AI.
We kept working on Conquest AI off and on through the following March, until our lives got too busy for the follow up game to come together. Nor did the dozens of other ideas get the time they deserved. We were both working full-time and we destined to stay that way for the following decade. We haven’t entirely given up on but haven’t necessarily done anything to move forward lately either.
This business was a total disaster in most senses, but it was also a very formative experience for me, I learned so much along the way. Luke confirms a similar experience, or was at least too kind to correct my historical revision.
It’s quite funny to compare the lack of marketing strategy behind launching Monocle Studios and TouchDefense with the comprehensive rollout of An Elegant Puzzle. We really did not know what we were doing, but somehow we still sold a few hundred copies at $3.99 a pop, learned the process of starting (and shutting down) a small business, and actually finished something with just our two laptops and minimal financial resources.
I’m grateful to have gotten to build this terrible little iPhone game and even more grateful to have gotten to do it with Luke. In many ways this was just a six month detour, but it’s a detour that I’ll never forget.
If there’s anything that makes me a bit sad looking back, it’s the rate of digital rot that infects modern software development. Every few years Luke pokes around to get it working again, and a couple years later it’ll stop running. In the future we’ll regret the planned obsolescence created by the churn of public APIs.
If you’re still reading, here is some gameplay footage.