When email app Mailbox launched in February and instituted a wait list to usher in new users, the company unleashed the hellish fury of hundreds of thousands of people left waiting for the app. Mailbox’s controversial launch seemed to signal a clear warning to upcoming startups that digital wait lists will incite angry tweets and blog posts — bad PR, by most standards — but the wait lists show no signs of stopping. Calendar app Tempo launched a week later with a wait list and people pulled their hair out. Last week Loom, a cloud photo-storage app launched with a velvet rope as well. The bitter tweets followed, just as they had before.
You can order a pair of cargo shorts in less than 30 seconds, so why can’t you download the latest email app?
In 2013, you can order a pair of cargo shorts from across the globe in less than 30 seconds, so why can’t you download the latest email or photo app to your phone? "Can’t they just add more servers, or throw more money at the problem?" you ask. The answer isn’t so simple.
Most apps go through months of bug testing before launch, but it’s impossible to foresee the user behaviors that will throw off your servers on launch day, like when one early Mailbox user moved 40,000 messages into his inbox at once. "We didn’t plan for that," Mailbox CEO Gentry Underwood says. "Two hundred and fifty [beta testers] is a decent data set, but when you increase that several orders of magnitude you find edge cases."
Even with a thousand servers, one user’s actions can gum up the works. "It’s a complicated system with lots of moving parts," Underwood says. "We can test each of the pipes between them but we won’t know until we scale it if everything can handle the load.
Today, an increasing number of apps and services require massive cloud backends to work, whereas in the past, most processing was done locally. The iOS mail app, for example, fetches email on its own, whereas Mailbox checks your email from the cloud, then delivers it to you. To paraphrase Underwood, processing 50 million emails (and sending all the right push notifications) during the app's first week wasn't easy, and isn't predictable.
"Scaling unfortunately is more than simply adding new machines," says Jan Senderek, CEO of Loom, which uploads all your photos to the cloud, compresses them, and serves them back to your mobile devices. "For us, we have many unique users creating many unique files, which means we have a ton of put / pull requests to unique items in the database," he says. "That holds a lot more potential for bottlenecks [versus] a lot of users pulling the same items in a database (like on YouTube). In particular, writing to a database (which our service does a lot with every new user) is trickier than distributing content."
Even with a wait list in place, Mailbox experienced several periods of downtime in its early days. "A company like Google has a higher chance to do this simply because they have the experience of launching products to millions instantly," says Senderek. Yet even some newer companies, like cloud photo and video storage service Stream Nation, went into battle guns blazing and sans wait list. Stream Nation, which launched the day before Loom, is also arguably more complex, since it also stores and streams 1080p video to users.
"If you build a cloud storage company and you don’t have a contingency plan in case you’re a huge success, then you have a problem."
"If you build a cloud storage company and you don’t have a contingency plan in case you’re a huge success, then you have a problem," says Jonathan Benassaya, CEO of Stream Nation. His confidence in part stems from his work as co-founder of the music streaming service Deezer, which sustains millions of simultaneous user connections and streams. "You really need to understand what is going on with your platform — move some CPU-intensive process to machines that are not using CPU, upgrade your network to make the data transfer optimal, increase your RAM, even move [the] machine closer to make a more direct connection," he says. "It’s a permanent tweaking process." Benassaya spent months tweaking his servers to make them "photo-processing machines" capable of handling 100 pictures per second.
To Benassaya, it’s possible to predict the future — as long as you can understand the complexities of the problem you’re trying to solve — and perhaps also have control over the entire experience. "I think [Mailbox] couldn’t have done better as they rely heavily on an external API (Gmail) and they have to deal with the email protocol, which is really slow," he says. "Working with so many moving parts and dealing with them in almost real-time is one of the trickiest technological challenges." Another challenge is handling support requests, which Senderek and Underwood say is a critical part of the launch process. "It definitely would have been 'possible' for us or other similar companies to scale well technically, but scaling customer experience is a whole different thing," Senderek says. "It's something many startups disregard."
Best practices for scaling will emerge as new cloud-powered apps launch, but until then, wait lists will likely become more and more common. Part of the consumer frustration is rooted in the fact that most consumer apps today launch on mobile, so consumers expect instant gratification. "In the web era you could sign up for a service and then get an email when the service decided to let you in — waiting felt like making a reservation for a restaurant and you just wait until it's your turn to show up," says Underwood.
In a blog post early on, Underwood reminded users that this is the same way many of the services we use today, like Gmail, came to market. The difference is that today, we’re accustomed to downloading an app and seeing it appear on our home screen, ready to use, in less than a minute. "In the mobile app era, things get more complicated," he says. "For a service that is mobile-only, the only ‘location’ of that service is an app that anyone can download. When that app is downloaded it 'comes to you' — it’s on your phone — and it feels really weird to then have to wait to use it. People don’t get it."