|
How
To Launch Software
By Aaron Swartz
37signals recommends that software developers pursue what
they call the
Hollywood Launch. They don't give any argument for this method, except
perhaps the title (as if Hollywood was a business you should try to
imitate?) -- I guess the idea is that you're supposed to do it since
37signals says to.
The basic idea behind the Hollywood Launch is simple: you
release a few hints about your product to build buzz, slowly revealing more
and more until the big day, when you throw open the doors and people flood
your site, sent there by all the blog coverage and email alerts.
This may work well for Hollywood -- if your movie is a
big hit at the box-office on opening weekend, then the movie theaters are
more likely to keep showing it in the weeks to come and you get credit for
being "one of the weekend's biggest films". But for software developers,
it's moronic. Your software isn't being released in theaters, it's
available over the Web. You don't have to worry about the theater no longer
showing after week one; you can keep pushing it for years, growing your
userbase.
Instead what happens when software developers try the
Hollywood Launch, and I've seen this many times, is that users indeed do
flood to your site on launch day but...
They bring the site down from the load. You scramble to get it back
up and succeed by coding like a mad man, only to find...
They discover some big bug that you never quite noticed before,
which makes the whole thing look like embarrassing hackwork. (What? You
forgot to test that last-minute JavaScript change in IE6 1/2?) So
you're desperately rushing to fix the bug before the traffic dies down,
rush-patching things and restarting the server when...
You bring the site down for everyone because there was a syntax
error in your patch that keeps the server from coming back up. You fix it
while cursing yourself madly. Finally everything seems to work. You take a
breath and decide to see what people are saying about you on the Web, only
to discover...
Everyone misunderstood what your product does because your front
page wasn't clear enough. Now they all think it's stupid and wonder aloud
how you even know how to breathe. So you reply in all the comment threads
and fix your front page to ensure no one could possibly misunderstand what
it is you're doing just in time to find...
All the traffic is gone.
Tomorrow, hardly any of those users come back. Your
traffic graphs look like the sharpest mountain you've ever seen: a huge
climb up and then, almost immediately, a similarly-sized crash back
down.
So what do you do then? Well, you do what you should have
done all along: you grow the site.
I'll call this technique the Gmail Launch, since it's
based on what Gmail did. Gmail is probably one of the biggest Web 2.0
success stories, so there's an argument in its favor right there. Here's
how it works:
Have users from day one. Obviously at the very beginning it'll just
be yourself and your co-workers, but as soon as you have something that you
don't cringe while using, you give it to your friends and family. Keep
improving it based on their feedback and once you have something that's
tolerable, let them invite their friends to use it too.
Try to get lots of feedback from these new invitees, figuring out
what doesn't make sense, what needs to be fixed, and what things don't work
on their bizarre use case combination. Once these are all straightened out,
and they're using it happily, you let them invite their friends. Repeat
until things get big enough that you need to...
Automate the process, giving everyone some invite codes to share.
By requiring codes, you protect against a premature slashdotting and force
your users to think carefully about who actually would want to use it
(getting them to do your marketing for you). Plus, you make everyone feel
special for using your product. (You can also start (slowly!) sending
invite codes to any email lists you might have.)
Iterate: give out invite codes, fix bugs, make sure things are
stable. Stay in this phase until the number of users you're willing to
invite is about the same as the number you expect will initially sign up if
you make the site public. For Gmail, this was a long time, since a lot of
people wanted invites. You can probably safely do it sooner.
Take off the invite code requirement, so that people can use the
product just by visiting its front page. Soon enough, random people will
come across it from Google or various blogs and become real
users.
If all this works -- if random people are actually happy with your
product and you're ready to grow even larger -- then you can start
building buzz and getting press and blog attention. The best way to do this
is to have some kind of news hook -- some gimmick or controversial thing
that everyone will want to talk about. (With reddit, the big thing was that
we switched from Lisp to Python, which was discussed endlessly in the Lisp
and Python communities and gave us our first big userbase.)
Start marketing. Once you start using up all the growth you can get
my word-of-mouth (and this can take a while -- Google is only getting to
this stage now), you can start doing advertising and other
marketing-type things to provide the next big boost in growth.
The result will be a graph that just keeps accelerating
and climbing up. That's the graph that everyone loves to see: solid growth,
not a one-day wonder. Good luck.
--
Since 37signals quotes from people who followed their
advice, I thought I might as well do the same. mojombo:
I find this to be excellent advice. This is exactly the approach we
took at GitHub almost down to the letter. It took about 2 months until the
site was good enough to use to host the GitHub source, another month until
we started private beta with invites, and three more months until public
launch.
Artificial scarcity is a great technique to generate excitement for a
product while also limiting growth to a rate that won't melt your servers.
We worked through a huge number of problems and early users gave us some of
the ideas that have defined GitHub. By doing a Hollywood launch, things
would have been very different and I am convinced, very much worse.
Do not, I repeat, DO NOT underestimate how much your users will help
you to define your product. If you launch without having significant user
feedback time, you've essentially thrown away a massive (and free) focus
group study.
Let me also say that when we finally did our public launch, there was
plenty of buzz, and all of it was the RIGHT kind of buzz. The buzz that
attracts real, lasting customers (and no, we weren't on TechCrunch, that
traffic is garbage).
Until next time,
Aaron Swartz
To read
more of Aaron's work, visit his blog.
|