Cloud vs Server for Application Development
cloud
Solution
One big advantage of cloud services (and in particular here I am talking about Amazon's EC2, though others work the same way) is that you can easily scale your usage up or down (the E stands for 'elastic'). So if you have a low-traffic website that suddenly gets Slashdotted, you can spin up 10 more servers within a minute or so, pay for them only while you use them, and shut them down again once the traffic dies down. If you were maintaining your own servers, you might be stuck with higher costs for a longer period of time (if you were renting), or with a bunch of machines you didn't need (in the worst case).
Also, with things like machine images, EC2 makes setup really easy.
Sorry if this sounds like an advertisement. In the interest of full disclosure, I used to work on the EC2 team but have not in over a year. I don't care if you use them or something else, I just happen to know the most about it.
Problem
What are the benefits of using a Cloud Service over a normal server setup? It's a given that i may benefit from a distributed server setup (The cloud) and maybe cost. But am i really missing out on any capabilities by not using a cloud service? If anything cloud computing is rather limited. For example the Azure service not all of the .Net Framework assemblies are available to the developer. There has been a lot of hype with Push and data synchronization technologies recently, and they seem to be sold as something that can only be done with cloud services. There's nothing baked into Cloud Services that enables Push or Syncing right? The developer still needs to write the apps and it host it on the Cloud. If so, then why not use a normal server setup? Forgive me if i am talking total nonsense, but i am trying read beyond the marketing hypea dn try to understand the real limitations/benefits of using a Cloud and what business benefits it can bring.