There is a key missing piece for cloud computing to really go mainstream--a higher-level programming language to be able to do more advanced logic and functionality.
I wonder why Sun hasn't figured this out and why there isn't already a "Java-in-the-Cloud" distribution that has the functionality of Java with some level of restrictions or other permission management geared toward SaaS.
Maybe Sun just doesn't get it or care enough? This concept to me is the key to making the cloud a reality--and making Sun relevant again (MySQL was exciting for five minutes, but is almost forgotten already.)
I couldn't figure out why Salesforce.com developed Apex until I started looking at how difficult it is to get "real" programmatic functionality into a browser and on-demand applications. Now I get it.
Coghead and Bungee Labs offer very cool platforms for application development, but they need to be fully embedded into the SaaS offering for them to be truly valuable. As it stands, it's not great to have to go through multiple vendors applications and architectures in order to solve one problem. On the positive side, it's clear that the problem can be solved and those two have gone a long way to make it happen.
The Smoothspan blog notes that Cloud Computing may be perishable, which is an interesting way to think about it--for the moment it's a one horse race with Amazon as the leader. Google AppEngine only supports Python and you have to upload files, so, while a nice start it has very limited appeal for the moment.
Some of the big vendors like HP, Microsoft etc. haven't even began their real efforts so the game is far from over. Amazon will be forced to deal with the enterprise, which the BigCo's are already skilled at, where Amazon is not.