I found this confusing. For those of us, like myself, that have been coding for 10+ years and have also been involved with network app's, I don't really understand his definition of cloud computing. Years ago we used to install an app on a server, then the users of the network accessed the app (not using browser, RDP, or citrix as an example) but through a "dumb" terminal or PC. So we went from big mainframes to LAN's. But the concept was the same. So now this "cloud computing" term comes along, what does that mean. Regressing back to 20 years ago but now using the internet to distribute the app/service. Take for example the use of the word infinite for storage. It's not, you just have a large more powerful entity other than yourself controling the storage (i.e. hardware, etc). Why not just have very robust web applications?

How does one share an OS? Does the recipent machine need some framework (software) to accept the push of the OS and run?