In the near future we will all do the vast majority of our computing on the cloud. An increasing share of our processing and information storage will happen on distributed networks of computers over which we have no direct personal control. Our personal devices will be dumb terminals with just enough power to render the content served up by the smart cloud.
We will get there because the cloud will be cheap. Our PCs are redundant. We leave them sitting around doing pretty much nothing the majority of the time. Even when we do sit at our computers, we're usually only using a fraction of the resources available. The cloud lets us share resources and only use what we need. By eliminating the redundancy of localized computing, cloud providers can do away with a large proportion of the currently wasted computing potential.
If you use your computer an average of three hours a day, then that means that seven eighths of the typical day your computer is serving almost no purpose. If you could somehow share your computer with eight other people (who conveniently happen to want to use the computer at the times that you don't want to use it) you could split the cost with them and you'd all suddenly be able to pay 87% less for your computing. If you paid a thousand dollars for your current computer, wouldn't you be willing to listen to someone who presented you with a sensible scheme for buying your next one for $125?
That does actually overstate the advantages somewhat. That thousand dollars you paid may have included your mouse, keyboard, speakers, monitor, printer, etc. You would still need all of those input and output devices, plus a basic local operating system to get connected to your cloud resources. Also, assuming there is some overlap in the hours people want to use computers, there will still be periods of peak utilization and periods of low utilization. The cloud needs to provide enough capacity to guarantee service at peak usage. So even it will have wasted cycles at the times when usage is low. Then maybe your next computer—really just a package of input and output devices—costs say four or five hundred dollars (so 50% of what it otherwise would). That's still a big improvement and we haven't even considered all of the advantages yet.
The cloud is computing as a utility. When your lights flicker you don't have to run down into the basement and throw more coal into you personal power generator. When your power goes out you don't sit in the dark parsing your generator manual by flashlight and listening to elevator music on Yamaha's tech support line. You just read a book or go to bed and in a few hours the power magically kicks back in. When you buy a new appliance you don't wonder if your generator can handle it, you just plug it in, pay for a few extra megawatt hours and let the electric company figure out how much capacity they need. People who grow up using the cloud will look back on stories of people having to maintain and update computers and losing their data in crashes as funny anecdotes from a quirky dark age before real computing began.
Separating computation from local hardware will free us from a wide range of headaches that we currently accept. For instance there will be little need to make choices about system specifications. If you want to do some high power gaming you use the same old system you've had for years, you just pay an extra dollar or two to your cloud provider for the extra resources you've consumed (indeed the creator could build a custom cloud dedicated to nothing but running their game). When you browse the web you use almost no resources and you pay almost nothing, when you want to edit videos or render graphics you pay a small amount more. How much hard drive space do I need? A nonsense question when you pay by the gig.
And that hard drive space is likely to be more stable as well. It's easy for a cloud storage system to save multiple copies of your work on different machines in different data centers, quite possibly on different continents. For the most part, storage will benefit from the same economies of sharing as computation. Pretty much any non-unique data can be efficiently shared. Netflix and YouTube for instance have the potential to radically reduce the number of bits world wide that are dedicated to video storage. You may keep a video file stored on your hard drive or on a laser disc in your home, but how often do you actually watch it? A couple times a year, if you really really like it. Imagine how many people you could effectively share that file with. Easily a few thousand. That is, a few copies of that file on Netflix's servers can make the entire world supply of recordings of that film redundant. Other than home videos, pictures, and documents, pretty much everything people store on computers can be scaled back like this on the cloud. Effectively all the redundant copies of non-unique media and programs can be eliminated making room to store all of the unique personal files we really care about in triplicate, at the same cost as before.
The cloud also makes software a much stronger product. Companies can run their software on hardware of their choice, thereby solving the problem of making their application perform well on ludicrously diverse consumer hardware. This also means that there is no hardware barrier restricting your target market. And when you want to make updates to your code, you can roll them out any time you like without interrupting your user's experience. Also, if people are consuming your software on the cloud, then you never need to give anyone direct access to your code. So piracy is solved in one easy step. I started by saying that consumers will have a strong incentive to move to the cloud, but it also looks like producer have just as much to gain and will be eager to push things along from their side as well.
So in the future you won't need to replace your computer every few years. You won't need to install new hardware or software. You won't need to make permanent choices about platform specs. You won't need to deal with maintenance and crashes. And all of this is likely to come at a reduced cost. Your desktop will literally serve as nothing more than a window onto your virtual cloud-based machine which will be infinitely flexible and extensible.
All of this does involve giving up a lot of control though. What if your internet connection goes down? Your computer would be pretty much just a dead lump and all of your files would be inaccessible. What if your cloud provider went down due to maintenance issues, or due to a malicious attack? What if your provider decides to share all of your private information with greedy corporations, or government snoops? What if your provider changes the terms of your contract and holds all of your precious data hostage while raising the price of your service? What if your provider goes bankrupt, or is shutdown by the feds, or is vaporized by an alien death-ray? Could all of your pictures, home videos, documents, and other unique files be permanently lost?
Being too trusting is a form of foolishness. But, when the recipient of your trust has a strong interest in being trustworthy, trust is probably a safe bet. A lot of people currently feel that it would be foolish to rely too heavily on any computer that isn't their own. I think that people in the future will look on that mentality the way we look on people who keep their savings under their mattresses.
In a sense, people are right to fear putting their precious data into someone else's hands. They could easily lose it. And then we'd be screwed. But that healthy fear is precisely why I trust Google. A company in Google's position has everything to gain by being seen as trustworthy. Their entire future depends on it. If they want to make as much money as possible, they will make every effort to be as conspicuously and scrupulously trustworthy as they possibly can. Google's unofficial motto is “Don't be Evil”. Their official motto should probably be “Be Trustworthy”.
So when I say I trust Google, I'm not making a statement about the inherent goodness of human nature. I'm saying that I trust well structured companies to try to make as much money as possible. I'm also saying that I trust that the people at Google are smart enough to realize that making money and being trustworthy are, for them, inextricably connected.
In the cloud driven future I dream about, people's concern over the security of their data is a central driving force. Between here and there, there will inevitably be some shake ups and wrong turns that result in epic horror stories. But just one or two such incidents will be enough to destroy the reputation of a company. And in a market where trust is everything, a bad reputation is a death sentence. In the cloud, survival of the trustworthy will reign supreme. Cutting corners to reduce price or racing ahead to add features will both be punished if, in the process, a company sacrifices security and stability.
The cloud actually strengthens these sorts of market forces by weakening lock-in. In the past, if you wanted to exchange one piece of software for an alternative, it could mean anything from paying a large up-front fee and taking time to physically procure and install the new software, to laboriously converting file formats, to replacing hardware or even installing a new operating system or buying a new computer. In the old model, lock-in was inevitable. Software producers had no choice but to code for a fairly specific technology stack, thus limiting their market, but also limiting their competition. Using a new cloud product on the other hand is frequently as easy as clicking a link. When you have lots of competitors and they're only a click away for your customers, you need to treat your customers very well. Of course, companies could go out of their way to create lock-in by writing prohibitive contracts and making it difficult to move data off of their system, but this is precisely the sort of untrustworthy conduct that will scare away customers and, ultimately, will probably spell a company's doom.
Of all of the companies out there, I think Google sees this future most clearly. I think they have geared their entire business model toward being the first true cloud platform. They've even introduced the Chromebook as a prototype cloud terminal. They seem to understand that building a reputation is their core business and they have the people to get them where they want to go. I, for one, am content to put my eggs in Google's basket.
The transition is happening insensibly. Though people may not realize what is happening, they're using webmail, and keeping their pictures on various web platforms, and using free webapps instead of paying for the alternative in a box. They are getting comfortable with small dumb mobile devices that get most of their power from the cloud. Ultimately no one really needs to consciously accept my arguments above, because the change is happening whether they realize it or not.
It is the job of smart companies to keep easing us down the path and to plan ahead so that their customers don't suddenly realize that they've given over control of their computing experience in some jarring and painful way. I think the few companies that violate this rule will suffer so severely and publicly that their example will tend to make such transgressions very rare.
Undoubtedly there will continue to be people who build and use their own computers. They will be hobbyists and eccentrics though, like the people who operate ham radios, or people who assemble kit cars, or survivalists with their own generator and water purification system.
The age of the personal computer is nearing an end. For the most part we'll all be much better off. Those companies who lead the way in this transition and avoid stumbling, may be the best off of all. But their gain will be the good kind of gain. It will be the wealth of those far sighted few who add massive value to society by leading us into a new phase of technology and growth. See you in the clouds.