My father once said that one of the worst problems any business can have is growing too fast. Start Google Plus may not be a business, but I finally understand what he meant. Sure, it is a wonderful feeling to have a product which people like and want. But there is a dark side, too.
Last week, a couple days after the blog post, I though I had our server issues for Start Google Plus finally cleared up. We had moved onto a dedicated host and everything seemed good for a while. There was a temporary dip in numbers, due to the server issues, and then…
Yesterday, someone submitted us to Slashdot. Ouch. This graph is just visitors to the homepage – not even users of the extension. I had been struggling to optimize the code all week, caching everything I could, and in one fell swoop the server spiked to 95% RAM consumption. No matter what I did from a technical angle it became clear that the one dedicated server simply was not going to cut it. We had to get onto the cloud, and fast!
The Mystical Cloud
I cut my sleep short last night and began the process of setting up Start Google Plus on the cloud this morning. For those who do not know, the essence of “the cloud” is the fact that it can scale up to meet demand. In other words, instead of us buying a single computer for the service, we lease many computers as they are needed. Think of it like a timeshare on computers. When demand drops, we give the computer back to the cloud. When it rises, we commission a new one.
In other words, once the service is on the cloud, the only concern is having enough money to lease enough processing power for what we need…
I intend to have a beta version of the app that uses the cloud server available to beta testers later today, if not by midday PST. The site is already running on the cloud, I’m just working with Amazon now to make sure that our configuration is good and that everything gets migrated properly. Development of the Firefox version of the browser extension has been going great and should be completed within a day or two. All said and done, both should be live very very soon.
The Price of Success (part 2)
In the last article on Start Google Plus on this blog, I mentioned that I had decided to pay for the server upgrade out-of-pocket and that it ran me about $200 / month. I fully expect a functional cloud setup to cost me at least $400 a month on its own. Ouch.
I am devoted to keeping this service free in its most essential form. The features will always work for everybody as it currently does. However, I clearly need to begin bringing in some money from the service. I say this in order to prepare the community for this eventuality, so that people understand why it must be done.
My current plan is to implement what is called a freemium-throttling method. Right now, all users are “equal” – they all wait in line to use the server the same. My plan is to allow devoted users to pay a small monthly fee ($1-3) in order to “skip the line.” Their photos will upload faster, their feeds will update faster, and so on. There may even be special “business” features for premium members, aimed at those using Start Google Plus to manage their company’s community.
Ultimately, this benefits everybody. The revenue stream (should) allow us to have significantly increased server capacity. Instead of everybody waiting 10 minutes per person for their feed to update, as they are now, normal users should be able to wait a few minutes while premium members wait mere seconds. Make sense?
What I Ask of the Community
Many of you have been great. Several people have reached out in offers to help, many people have beta tested new versions of the software, and a few have even donated via PayPal using the button on the homepage. What I am asking from you, oh beloved users, is to assist me in creating the infrastructure around this product that will help expedite development.
I love the fact that people express their opinions about the extension on plus.google.com, for example, but when people insist upon using it as a support channel it actively hurts the development of the application. You see, I’ve set up a community driven customer support channel. Most help and troubleshooting questions are asked multiple times. This site eliminates the need for me to answer them each time by allowing people to see the answers to others’ questions. In short, what I am asking is that you help me by helping each other. Point others at the support site when they have issues and, if you have a few minutes, try to help others with their problems. For those of you who are interested, I can potentially flag you as moderators on the site so that you have increased legitimacy and internet “cool points.”
Cheers, and thanks for sticking with it!