Security's on the top of our list, along with everyone else's. But there are other concerns less talked about.
Reliability's also a work in progress. These services aren't being put to the test by enterprises running a lot of large-scale, mission-critical software; a more typical use is a developer needing a variable-cost platform on which to build and run early stage software, or a test environment, or one-time research efforts.
And we have worries about less obvious issues, such as lock-in. If we build an app to run in Amazon's infrastructure, how do we take that work, and that data, with us if we want to move? That interoperability is a work in progress today. For every bit of data we put in, we need to think about the cost of taking it out, so we don't build up a liability that makes it too pricey to switch. I know it doesn't seem possible amid today's enthusiasm, but the vendors could even lose interest in this model, and drop us as customers. For the likes of Amazon, Microsoft, and Salesforce, selling infrastructure as a service is a tiny tag-along business today, hitched onto Amazon's e-commerce machine, or the online software businesses of Microsoft and Salesforce. It's as unproven for them as it is for us. We don't want to try to run while they're still crawling.