Sometimes this is a good decision, sometimes this is not. IT people hate the lack of clarity, because when something fails and they can't explain why or what they did to prevent it (nothing! it's the cloud!), it's their ass. And that's a very real risk.
Granted, that's not true of S3, SQS, or SDB... but seriously, how hard is it to program against an abstraction layer? Easy enough to rewrite your own "store_photo" function to use a replacement for S3.
The solution, of course, is to build your own cloud atop the clouds from a few different providers so that you're never reliant on any one of them specifically. ;P
Drink kool-aid much?
Just curious: what exactly do you mean by this? i.e. - how does cloud computing help with web app development?
That's got a downside too, at the moment you reach a steady state it is probably cheaper again to buy the actual hardware and colocate instead of using cloud services (which after all exist to make money for their owners).
On top of that, all the security is built in. Email notifications, built in. All this in addition to the scalability of the cloud infrastructure. No need to build in clustering, failover, etc -- all handled automagically.
The Cloud seems too good to be true, but it's not. It's real and it is better.
I remember reading the Steve Jobs interview by Playboy and he said he was on the edge of the petroleum revolution, starting the PC revolution. Twenty years later, the internet revolution and now here is cloud computing that is going to make the internet just blow up.
Web application development is made orders of magnitude easier with cloud computing.
The cloud is an inevitability. FUD is holding us back. The Cloud is the way of the future.