LinkedIn | FaceBook | Twitter
I normally don't go into the economics or pricing side of Distributed Computing, but I've had a few friends that have been surprised by a bill lately and I wanted to quickly address at least one aspect of it.
Most folks are used to buying software and owning it outright - like buying a car. We pay a lot for the car, and then we use it whenever we want. We think of the "cloud" services as a taxi - we'll just pay for the ride we take an no more. But it's not quite like that. It's actually more like a hotel.
When you subscribe to Azure using a free offering like the MSDN subscription, you don't have to pay anything for the service. But when you create an instance of a Web or Compute Role, Storage, that sort of thing, you can think of the idea of checking into a hotel room. You get the key, you pay for the room. For Azure, using bandwidth, CPU and so on is billed just like it states in the Azure Portal. so in effect there is a cost for the service and then a cost to use it, like water or power or any other utility.
Where this bit some folks is that they created an instance, played around with it, and then left it running. No one was using it, no one was on - so they thought they wouldn't be charged. But they were. It wasn't much, but it was a surprise.They had the hotel room key, but they weren't in the room, so to speak. To add to their frustration, they had to talk to someone on the phone to cancel the account.
I understand the frustration. Although we have all this spelled out in the sign up area, not everyone has the time to read through all that. I get that. So why not make this easier?
As an explanation, we bill for that time because the instance is still running, and we have to tie up resources to be available the second you want them, and that costs money. As far as being able to cancel from the portal, that's also something that needs to be clearer. You may not be aware that you can spin up instances using code - and so cancelling from the Portal would allow you to do the same thing. Since a mistake in code could erase all of your instances and the account, we make you call to make sure you're you and you really want to take it down.
Not a perfect system by any means, but we'll evolve this as time goes on. For now, I wanted to make sure you're aware of what you should do. By the way, you don't have to cancel your whole account not to be billed. Just delete the instance from the portal and you won't be charged. You don't have to call anyone for that.
And just FYI - you can download the SDK for Azure and never even hit the online version at all for learning and playing around. No sign-up, no credit card, PO, nothing like that. In fact, that's how I demo Azure all the time. Everything runs right on your laptop in an emulated environment.
I hear you, but what surprised (and angered) me was that I got a bill for SQL Azure, something that was supposed to be part of my MVP package. I was within my usage limits, and I just got hit out of nowhere. If Microsoft had a portal showing our progressive usage charges month to date, I could understand, but right now it's just completely unpredictable.
Brent - I totally hear you. I've voiced this internally and I trust we'll get the message and the offers out there better.
It's actually an interesting problem - there's no "practice" or "dev" Azure out there, so everything is live and in color. So it's less a matter of the money itself than the predictability. We need to make sure there's capacity to handle a high level of service, and one way to predict that is with cash.
We'll get there!
One other note - there are several "offers" we have, some for certain times, others for certain groups of people. So this info may not even be valid at all. For instance, in one offer you actually DO get the compute hours free. So read the offer carefully to see what you're signing up for.
Another note - you can download the SDK for Azure and never even hit the online version at all for learning and playing around. No sign-up, no credit card, PO, nothing like that. In fact, that's how I demo Azure all the time. Everything runs right on your laptop in an emulated environment.
I got smacked by that some time ago. By the graces from the powers to be at Microsoft they reversed the charges, seemed there was little documentation at the time that outlined those expenses. I did not have the same issue with Amazon Web-services, there information was very clear just to keep the perspective. However both were equally expensive if you don't consider things like hardware costs, overhead, lighting, climate management, rack space, support, network bandwidth, etc. But you really have to do some math to justify the cost of stepping into that motel and pulling something from that minibar. Maybe we'll see a cottage industry born like Expedia-The-Cloud that helps the average shopper.
When you consider the overall costs compared to in-house ownership through personal or small project development the expense can be overwhelming. I think that considering that the majority of trail blazers are developers working through home offices remotely would find it difficult to compare the cloud as a rational solution when you make a side-by-side comparison to the benefits of corporate resources. There simply is no economic breakdown that you can use unless you have direct exposure to the bottom line in a corporate accounting by way of a profit and loss statement.
I was an IT director for a large marketing office in Sacramento for several years. I helped build and manage a 3.5 million dollar facility from ground up. Realistically, we would have never justified the cloud against our infrastructure in which I had put in place. We were highly scaled with plenty of Dell servers and with plenty of bandwidth. The justification to push anything into the cloud would have brought on additional expenses, disrupted existing projects, and raised concerns about privacy of data on a third party servers.
However, now that I work out of a home office and spend a great deal of time listening to an 8 core Dell server with 6 fans which sounds more like a jet engine I can appreciate remote computing. Cloud computing makes much more sense on a small scale if you have the right perspective. I believe that more and more as the micro-entrepreneurs venture into the sea of hosted computing, cloud computing and the hidden costs might very well begin to feel more like travel expenses which are necessary from time to time. Especially when dealing with small start-build-deliver projects. But more realistically after making the trip staying in a hotel and bearing the expensive you don't want to hang your hat there you want to go home and hand in your expense report and get reimbursed. The becomes another issue in itself in properly billing your project's client.
Overall I like where Cloud computing is going. The next generation will be much more sophisticated and the evolution will probably become more purposeful for the new generation of plasma/computing/home-entertainment thin clients coming onto the market. Say goodbye to the PC, embrace the thin client, bolt it together through the cloud and stay away from the mini-bar.
The better cloud providers make it like a taxi. Heroku.com and cloudcontrol.com both have a free tier. If your free app server is not used, it is automatically shut down, and reactivated automatically when you get traffic. If you need more app servers, you can manually or fire up more app servers (a.k.a. "dynos" or "boxes"), which go online in about 15 seconds, that cost $0.05 per hour, (billed to the nearest second for Heroku and to the nearest hour for Cloudcontrol).
Hello Jay - good info. Yes, I've used Heroku as well, and that's a decent model. Not sure I'd say the "better" cloud providers :) since there may be other factors invovled. With some of our customers, 15 seconds to spin up an instance would be unacceptable. Just different models - the cool thing is that you can use both, or even others like AWS. The neat thing about Cloud Computing is that you don't have to lock in to any single vendor.