The next few entries in this series will explore the factors that are causing cloud computing to be inevitable, but first let's put the topic in broad perspective.
The place to start is with smartphones. It may be a coincidence of timing that we are witnessing both an explosion of smartphone usage as well as cloud computing, but the two are inextricably linked - two sides of the same coin. Wouldn't smartphones have been just as successful without cloud computing, just as happy with access to plain old websites? What's the difference?
"Cloud computing" may seem to have infinite perspectives and definitions, but for this discussion we'll keep it simple: a website is an Internet service where you are getting access to someone else's data; cloud computing is an Internet service that is holding your data and providing a valuable service based on your data. And it's vast.
Had we not known about cloud computing, we should have been expecting it. Every twenty years or so there have been enormous market shifts, both in the architecture of shared multi-user computers and in the technology to access them. Of course there are early adopters of the new paradigms, and laggards reluctant to let go of the familiar paradigms, but new benefits force inevitable changes for everyone. Roughly, here's the timetable:
Take a look at the evolution of access technologies: punchcard, terminal, PC client, browser, and mobility (which includes smartphones, tablets, laptops - anything that wants to be mobile). With each generation, a huge leap in convenience for users, a huge drop in special skills required, and a huge improvement to the efficiency of managing a complex workload.
Likewise with multi-user computing technology, the evolution from computer to mainframe, server, website, and cloud brings huge leaps in automation and capabilities. Each generation of computing environment is serving far more users than the previous. I've also shown the rough size of the working data sets for each generation - roughly three orders of magnitude increase with each generation.
Just based on the trend of needing to accommodate 1,000 times more users and data, it should be clear that a radically different architecture is called for. And that architecture that services hundreds of millions of users and petabytes of data is called cloud computing. We should have been expecting it.