That is the general idea, yes. That one day Internet access will be ubiquitous. In fact I am sure no matter where in the world Bill Gates goes he probably has some connectivity. It just takes money, then again so will building a software system as complex as what you describe, otherwise it would be done and easy to do already, which it is not. However, every we need for real cloud computing is practically in place, it the stability of Internet connections that concern some.First of all, you're on your trip in the jungle/nature and you take photos with your camera or mobile device. If your mobile device where a cloud based device, it would NOT have local storage so you'd need an internet connection in order to take photos. Unless somehow the internet was accessible globally by mobile networks, you couldn't take your photos
Personally I side with having internet connectivity. If I lose a connection for an hour, yes it's annoying and might even be mission critical if you ran a busy shop, but in those rare conditions I would rather see software that cached purchases and uploaded that data at a later time, thus not requiring re-duplication of any source code from the server onto the clients.
You could turn every computer into a server, but there are issues that go along with that. Mostly running an enterprise server is not easy, it requires hundreds of applications running and constant upgrading, something best left to a dedicated team, not a home computer user.
The less administration control you can remove from ens users the more productive you make them, IMO and that is a win win for both parties.
Cheers,
Alex