Cloud computing hard truth No. 3: Hours turn into eternity
Was it several weeks ago that I built up a machine just to try something? The machine only cost a few cents per hour, so I said, "Why not start with a clean slate? It's just a few pennies."
But by the time I got done installing the software and configuring everything, I didn't want to shut it down. This was something neat that I built. Pushing Delete hurt my insides. Now it sits on the back burner waiting for me to get around to find the time to do more -- and the meter keeps clicking.
One of the biggest dangers for the bean counters will be making sense of these long lists of cloud instances that are all running up the bill at a few cents an hour. Simply auditing the lists of machines will take longer than the cost of leaving them up for another month. I think the cloud companies will make plenty of money on servers that sit there waiting, like those mythical primitive islanders, for the plane filled with gods to descend again with instructions.
Cloud computing hard truth No. 4: Software services are hard to price
Software as a service is another temptation from the cloud. You don't need to purchase, license, or install anything. You just ship your bits to an API and it does everything for you.
The prices seem simple. If you're going to store N things, you'll pay the basic price N times. If you have K customers and they each generate M things, you'll need to pay to store K times M bags of bits. Who cares how big K and M happen to be? The prices are always quoted in millipennies.
Ah, but will you really have K customers? Will they really store M things, even on average? The danger is that your neat new project will be wildly successful and 3,000 or even 10,000 people will show up. That means your data budget just went up by a factor of 3 or 10.
The problem is that the bean counters aren't budgeting a flexible amount. They gave you $X and told you to make them last. They're going to be happy that you're getting 3 or 10 times as many people, but they won't be happy when you tell them your data storage budget will be 3 or 10 times bigger.
In these events, buying a fixed infrastructure is a simple way to limit your spending. If you're wildly successful, the server will probably be able to handle it by just slowing down. This sluggish behavior may not make your customers happy, but it is better than the bank shutting you down for overdrawing your account.
Cloud computing hard truth No. 5: Totally integrated solutions are scary
When Google first announced App Engine, it looked like a great appliance that would make cloud computing simple. Upload some Python, and Google would do the rest.
Alas, hand-holding is also handcuffing. The neatest features are proprietary, and that means you'll be locked into the proprietary solution until you can rewrite your software. Who has time to do that?
The smartest clouds are pushing flexibility and openness. The OpenStack standard is gaining traction because everyone is leery about locking themselves into one provider, no matter how good the provider happens to be.