“We should move it to the cloud” (and slight variations) is a sentence that consultants and developers hear very often. About two years ago, at a software conference I heard someone putting it down like “Mobile and cloud are two big pains in the neck of all CTOs. They just can’t figure out how to handle both, but they feel they should.”
Personally, I’m more in the mobile space than in the cloud–although a relationship does exist that makes the cloud an asset for mobile apps and solutions. I read it as “I’m doing mobile but I never felt the need of having a cloud-based backend.” Which doesn’t mean the way I do mobile is wrong–it simply means that mobile and cloud are scenario-based.
As simple as it could be, the cloud is just an elastic form of hosting and nearly everybody may need it. Curiously, this is the scenario that was primarily addressed by Amazon and also the scenario that Microsoft is so slow in addressing. Cloud services are necessary … if you need them. But not everybody needs those services–from service bus to distributed caching and from federated security to push notifications.
Keep it simple and make it work; add complexity when you need it; be aware of technologies and paradigms. These are common sense, obvious statements. But the common sense is unfortunately not so common. Especially when it comes to clouds.