In the aftermath of the launch of our
BlackBerry Call Screener early this week, Andrey decided to share some of his plans for Antair's rise to global domination. It makes for a good read.
What's Antair been up to lately?There were a few questions in the forums and via email about what we've been doing, and about how we're managing this joint venture. You can probably tell quite easily by reading Andrey's post that we're launching the jointly developed products through his company,
Antair. This is fine by me, I never prioritized building a large personal brand or software empire, just some good products and a reasonable income. You can also tell quite easily from Andrey's post that he has ambitions way beyond a small home-based Micro ISV. As the business is growing, I'm supportive and along for the ride, I'm even happy and excited about it, but on a personal level I would have been quite happy sitting alone in my front room working on cool stuff for the next 20 years, as long as it kept paying the bills.
As far as the structuring of our agreement goes, I'm not sure what I can or should disclose, or what value you would get from hearing about it. It's not something set in stone that you could model your own plans on, since it's a moving target that will change and evolve with our plans, products and company. It also assumes an inappropriately high level of mutual trust and respect between the two parties, which could easily lead you to complete disaster. For now, our arrangement is almost as simple as possible, we work on the products together and Andrey sends me a share of the revenue. Before there was revenue it was even simpler, we just worked on the products together. With all the expansion and hiring that Andrey has in mind, we'll need to restructure it, and as the revenue grows, we'll probably need to restructure it again. I'm still planning to move the US at some point, which will probably trigger another restructuring. But that's no big deal for us, we're both reasonable people (actually, who's to say we're reasonable, but we have an understanding with each other ;)). When you know a partnership is working as well as this one, your first consideration is always keeping the other person onboard and happy.
In recent weeks, Andrey has been completely swamped by customer support and admin work for the latest version of his spam filter, so he couldn't spend much time on any of our shared products. Did I care? Yes, totally, but not because he wasn't able to contribute to the projects for a few weeks. All that will balance out in time, I cared because my friend was swamped and unhappy. Fortunately, Ian's
Helpspot seems to be sweeping in to save the day.
That brings us on nicely to how we divide up the work: We don't need to. If you put our task list and codebase in front of each of us at the same time, 99% of the time we'll work on completely different things, and, since we're in different timezones, it matters even less. We rarely overlap in working hours, and even then virtually never overlap in code. If I've ever had to reconcile any changes from Andrey into a file I've edited, I've forgotten about it. With the game projects it's even easier, I tend to spend a lot of time prototyping ideas in Flash, which Andrey won't go anywhere near, while he has an interest in game engines and development platforms (the very thought of which bores me to tears). Then there's tool development, sound sourcing, and any graphics work that we're able to do ourselves. There's so much to do and we're so completely different that it all just takes care of itself. I realize that's not very useful to anyone looking here for advice or a formula for success, but that's the way it works in our case.
We also understand each others personal preferences and motivations. I like the prototyping and early stage development, when there's nothing there yet but there are plenty of fun tricky problems to solve. Andrey seems to work in a more structured way, and will do in one night a lot of the important little tasks that I'd procrastinate over for weeks. Based on that, who would have guessed that I'd be the quiet one who prefers a regular routine and he'd be the outspoken one who regularly works through the night? Andrey also takes on all the administrative stuff too, dealing with resellers, the website, and (until he opens Helpspot to me, or hires a support person) all the customer service and support.
I was also asked a couple of times how we decided to start working together (including once by Andrey himself). There's really no secret gem of wisdom here either. We were aware of each other for a long time, I knew of Andrey's various writings, I guess he'd followed my blog or seen me around the forums. As he was getting started on his game development, I was linking to him because I was interested in what he was doing. He correctly guessed that I'd be quite interested in working on games if I wasn't the only person involved, and he dropped me an email. That was it really, we chose a project and got started shortly after.
No-one asked this, but it hasn't exactly followed the plan we laid out. We
started work on a PC game, but Andrey's BlackBerry Spam Filter project shifted our focus to the handheld device for most of this year. It's been interesting, a very different market to anything I was used to, and it was nice to work with J2ME. The constraints of the platform are part of the fun (as well as a major headache), and I'm sure I haven't written my last mobile phone game. We made another false start on the same PC game, using something called
Torque Game Builder, immediately after the first BlackBerry game (
Asteroid Jane) was released. It started to shape up nicely, and we made some massive leaps in the concept and look and feel of the game over the course of about a month. But, while I found TGB easy to pick up and great fun to work with (it felt very similar to working with Flash, without the performance constraints), Andrey wasn't really feeling it, or the game. He had some valid concerns, and we had a better idea. So now we're making a completely different game using C++, and it's already far and away the most fun project I've worked on.
We already have an artist on board, Craig, who also did some of the last minute artwork for Asteroid Jane, and it's very exciting each time he sends us his work. The gulf between our programmer art and his concept/mock-up art is just insane. As the game shapes up over the coming months, we'll be blogging more details, and probably posting screens or artwork. You'll be able to follow the progress here and at
Andrey's blog.
Before I forget, one final question I was asked was about how we share the source code, but we're still working on that one. Ask me that again in 2008.
I think that's everything covered. Is there anything else you wanted to know?
Tags: micro isv programming casual games blackberry