“What is cloud?” was the only discussion about a year ago in cloud computing. Then there was a fragmentation of discussion about different vendor offerings, public vs. private cloud, dev/ops, and the usual FUD that comes around disruptive change. I’ve begun to encounter a more subtle, but meaningful question on the topic more and more: what can I do with cloud computing? Why should I care? Why is it worth the trouble? Here are a few answers, many of which you’ve heard from me before.
Most of these are for developers and those concerned with applications (hence the popularity of cloud computing for SaaS offerings, like consumer oriented, public web apps). Interestingly, it’s more challenging finding good answers for operations folks unless they take the dev/ops challenge and try to bring developers back into their house. I’m rounding up a similar list for ops folks.
Getting beyond hearing about just suffering
When you’re running all instances of the applications, you can watch how people interact with and use the software, and fine-tuning features accordingly. On-premise software hears mostly about overt needs, which change quickly, and bugs. You always heard about what doesn’t work, but rarely see good data on what works. With the raw data of SaaS usage, you have information about how every user is doing everything in the application.
With a proper analytics platform (enabled by the commoditizion of Big Data from cheap servers, network, and things like Hadopp) you can analyze these heaps of data and use them as input to tune your application the same way movie makers will use test screenings to tune a movie to be more commercially viable, if less artful and innovative. As an even more advanced use, you can do A/B testing to find out the best way to implement a given feature: what page layout drives more customer satisfaction, sales, or whatever goals the software is trying to accomplish.
Building on top of the endless user data, think about how you can reflect all that data back to the user-base, as a feature of the platform. Look at Spiceworks as an example. They do inventories of 100,000′s of networks of varying sizes and know what type of IT and software those networks are using. Crossed with additional data like ratings from IT admins and some input on the success and failure of various setups (sort of like Amazon reviews, if you need an analog), they can start to automate best practices for IT by pulling from all that raw, but real, usage data. If 4,000 instances of a server tend to break more often than an alternate server they could report on this, allowing users to get a sense for the quality (across the 100,000′s of users in Spiceworks) of that piece of IT.