Hi, if I can just address a bit of this. (Disclaimer: I work for Rackspace.)
> The hype also ignores the additional complexity (and therefor costs) related to cloud computing
> The fact that security when running in someone else's datacenter is more complicated than when running in your own datacenter. In your own, you can protect networks instead of individual systems.
Well Openstack Quantum (networks) does allow you to isolate instances in their own VLAN, just as you might do in your own DC. You can have firewall instances between them and the outside, running appropriate firewall rules.
> The fact that you have significantly less reliability for individual components.
Not sure what you're referring to here. But it should be noted that one of the core pillars of developing applications in the cloud is that you should design for failure. Not that the cloud is inherently faulty, but things can and do go wrong, whether it be in your own DC or in a public cloud. Netflix has its famous "chaos monkey" which randomly kills things
just to be sure its application is built with fault tolerance in mind. If something goes wrong, something should detect that and use the cloud API to kill the faulty instance and re-create it. Obviously you need enough load balanced nodes that this shouldn't be noticed by the user.
> the fact that there are things you are just not allowed to do (broadcasts for example)
Quantum Networks gives you an isolated layer 2 network that allows broadcasts.
> and the fact that there are frequently hidden performance issues (disk and network latency tends to be significantly higher in a cloud environment than in most datacenters.
That is something to be aware of for some apps - particularly disk latency (not sure about network latency). You have many tenants on a server competing for the disk I/O and scheduling resources of the host, so indeed I/O heavy applications such as databases can perform poorly in the cloud. That is one reason why some data heavy applications may want to make use of both dedicated servers for databases and cloud servers to serve their application. Of course "average" sites, which are not constantly pushing hardware limits, will work just fine with their DB in the cloud.
The cloud isn't perfect for everything, of course, but for a lot of organizations it is a real win. Over time as these issues are further addressed the percentage of applications where it is a good fit will only increase.