CHAPTER 1
The Sound of Inevitability
There have been very few fundamental changes in computing.
On the surface, that may sound like the statement of a madman, or perhaps at least someone from an alternate universe. Nonetheless, it is true.
Sure there have been, are, and will likely continue to be a nearly incomprehensible fire hose of particular changes, some rather flashy in and of themselves. Simple things like pocket-sized flash drives that store more than the corporate mainframes of 30 years ago, or perhaps ubiquitous mobile devices for everything from the mundanely practicalâe-mail, calendars, and contactsâto the cheerfully sublime. Much more complex developments such as the open source movement; the advent of relational databases; and the rise (and fall) of whole operating systems and their surrounding ecosystems, even those whose perpetual dominance once seemed assured (how many desktop machines are running CP/M these days?). These have come and gone, perhaps lingering in some niche, forgotten by all but a few fanatical devotees.
But truly fundamental changeâthe tectonic shift that literally changes our landscapeâhappens only once in a long while, perhaps every ten or more years, even in the computing business. Fundamental change of this magnitude requires a number of smaller innovations to pile up until a true nexus is reached, and we all start marching down a different road.
Of course, as historians are fond of lecturing the rest of us mere mortals, these sort of fundamental changes are nearly impossible to recognize while we are in the middle of them, even as they loom imminently.
When researchers at the University of Pennsylvania were feverishly working on ENIACâgenerally recognized as the first programmable, general-purpose electronic computerâas the future of the world hung in the balance in the midst of World War II, do you think they envisioned computers embedded in nearly everything, from greeting cards to automobiles, from microwaves to MRIs? When researchers at the University of California, Los Angeles, and elsewhere in the midst of the Cold War strove to make computer networks more resilient in the face of nuclear attack,1 do you think any of them envisioned the Internet as we see it today? Likewise, when Tim Berners-Lee and other researchers at CERN were trying to come up with an easy way to create and display content over this new, literally nuclear-grade network, do you think they envisioned the impact on everyday life (both personal and professional) their new creation would have, or even the simple breadth and depth of stuffâfrom the sublime to the sillyâthat would be available on this new, supercharged âInternetâ ? One estimate is that there are more than 500 exabytesâthatâs 500 billion gigabytesâin this âdigital universe,â and that this will double every 18 months.2
The simple truth is that very few, if any, of the people involved in these developments had much of an idea of the consequences of their creations, of the impact on our personal lives, our culture, even the society in which we liveâfrom how we interact with our families to how we conduct business.
Whether you are âtechnologically modest,â or are either by age or temperament not ashamed to let it be known, at least in certain circles, that you are a bit of a geek . . . either way, it is pretty much a given that developments in computing are having a big impact on our society, and more to the point, an even bigger impact on how we conduct our business.
And bigger changesâtectonic shift-scale changesâwill have at least commensurate impact on our lives in every dimension, including the fields of commerce. One example, perhaps a seemingly simple one, yet central to many of the changes now underway, will suffice to illustrate this point.
Consider for a moment newspapers. We now face the very real prospectâactually the near-certaintyâof at least one (and probably many) major metropolitan area in the United States without a traditional (local, general purpose, print, widely circulated) newspaper. While this eventuality may be stayedâperhaps for quite some timeâvia government intervention, the fact that this will eventually occur is not in doubt. In a culture still echoing with such reporteresque icons as Clark Kent, or at least the more prosaic Bernstein and Woodward, this was once unthinkable. Now it is simply inevitable.
There was a time when the technology of newspapersâcheap newsprint (paper), high volume printing presses, delivery networks including everything from trucks to kids on bicyclesâwas the only reasonable means for mass distribution of information. In fact, with help from some of the newer technologies there was even a new national newspaper (USA Today) founded in the United States as late as 1982. But with the advent of alternative delivery channelsâfirst radio, then broadcast cable, and satellite televisionâincreasing amounts of pressure were put on the newspapers.
The immediacy of the newer channels led to the widespread death of afternoon newspapers in most markets; anything delivered to the dinner table in a physical paper was hopelessly out of date with the evening news on television or radio. The morning papers had the advantage of broad coverage collected while most people slept, and as a result have held on longer.
However, at the same time intrinsic limitations of the newer technologies made them better for certain types of information, though not as useful for others. For example, a two-minute video from a war zone could convey the brutal reality of combat far more effectively than reams of newsprint, but did little to describe the complex strategic elementsâpolitical, economic, culturalâof the conflict itself. As a result, a certain stasis had been reached in which newspapers carved out what appeared to be a sustainable role in the delivery of news.
Then came the Internet.
In particular, the effectively free and ubiquitousâand yes, nearinstantaneousâdelivery of all sorts of information mortally wounded the newspaper business. As the first round of the web ecosystem grew, the only remaining stronghold of the traditional newspapersâtheir ad-based revenue modelâwas made largely irrelevant. eBay, Craigslist, and freecycle (among others) replaced the classifieds, and online ads took out most of what was left.
Some newspapers will undoubtedly manage the transition in some manner or another, perhaps even emerging as something fairly recognizableâparticularly national/international properties such as the Wall Street Journal and the previously mentioned USA Todayâand perhaps even financially sound.
But those that do will likely largely do so without their original distribution technologies, and more important, many will not make the transition at all.
All of this upheaval in news deliveryâthe enormous changes that have already occurred and that which is yet to comeâhave been enabled by developments in computing technologies, with the widespread adoption of everything from the Internet to the iPhone. It is probably worth remembering that all of this has occurred largely without cloud computing, and as a result we are probably less than 10% of the way through this transition in news delivery, and this is only one industry. One industry, one example, with entire economies yet to transform.
Even so, some things have not changed much, even in the delivery of news. The computing infrastructures range from the stodgy (server, even mainframe-based systems within many newspapers) to circa-2009 state of the art (which we might as well start referring to as âlegacy web,â web 2.0, old-school web, something like that). By and large these systems still cost too much to acquire, do not adapt to changes in demand nearly easily enough, are not reliable enough, and remain way too complex and costly to operate. Even the few systems that do not suffer from all of these problems are not ideal, to say the least: Some are proprietary, and most are either too complex to create new application software, or simply do not scale well enough, at least for the sort of software that researchers are hard at work developing. In particular, with the first generation of electronic news infrastructures focused on just delivering the news, the next generation will be focused on sifting through all of that content, looking for just the right stuff.
All of that sifting and sorting and searching will take orders of magnitude more computing capacity than we have anywhere today. How will we pay for hundreds and thousands, perhaps even tens of thousands times more servers and storage than we have todayâalmost unimaginable quantities of computing? How will we operate them? Write new software for them? It is fair to wonder how we will even power all that gear. Assuming that all of these concerns are resolved, then, we will face a larger question still, one which we presume has many answers: What sort of business models are enabled by all of this, and how do we get there?
Before we leave this example, it is probably worth considering our present circumstances just a bit more. In particular, most of the history of both economics and engineering can be understood by thinking about managing scarcity. In other words, how do I get the most done with the least stuff, or within certain limits? For example, that underlying drive to dealing with scarcity, at its core, drives the startup team to work harder and pay less, the Fortune 500 enterprise to optimize manufacturing processes, and entire nations to set energy policies. Allocating scarcity is just Economics 101. Of course, it is also Engineering 101. Dealing with scarcity causes communications engineers to develop better video compression schemes, improve CPU designs to get more done in the same amount of time, and even rethink server packaging to reduce power consumption and labor costs.
While scarcity may be the nemesis of some, it is quite literally a prime mover behind the developments that have together come to be known as cloud computing. What does this mean, and how can it be possible?
A Persistent Vision
Better, faster, cheaper is often heard in technology circles. More than a policy, more than a philosophy, this is literally a way of life within technology communities. In an ideal world imagine that:
Computingâcomputation, storage, communicationâis relatively free, scales up or down as needed, scales as much as needed, operates itself, and always works.
To one degree or another, this is the persistent vision that drives many of those who are developing cloud computing. Is all of this presently possible? Of course not; yet we are inexorably on this path.
Achieving this vision is, of course, a complex endeavor with far more to it than may meet the eye at first glance. That is why there is the rest of this book, for starters!
Before we go further let us elaborate a bit on the dimensions of this vision.
Engineers and mathematicians talk about something being âwithin epsilon of zero.â This is a term that comes from calculus. It simply means the process of approaching a particular limit, from wherever you started to the limit itself. In the case of the cost of computing infrastructure, that limit is zero. For most of computing history the costs of infrastructure have dominated decisions about what to deploy when: How much will those servers cost? How about that storage farm? That network? Now, however, we can start thinking about those costs being âwithin epsilon of zeroâ; that is, over time the computing infrastructure comes closer and closer to being free. That leaves other costs as the new, more significant considerationsâsoftware licensing, data acquisition, for just two examplesâand this will be examined more closely later in the book.
A Little History
In one sense the evolution of computing has been one long blur, with change piling on change, products that are âlong in the toothâ in less than a year and virtually classic soon after, and with new conceptsâMooreâs Law, for exampleâcreated simply so that we can describe, understand, and effectively institutionalize this relentless rate of change.
But there are times when these changes pile up in such number, in particular combinations of new capabilities and logical consequences, that the whole industry does head off in a new directionâwhen the very conversations, the underlying concepts, even the possibilities themselves change.
To help understand the import of our current transition into a computing world dominated by cloud computing, think a bit about where we have been, where we are now (at least just slightly before exactly right now), and both how and why we have travelled these paths. While there are clearly many ways that the history of computing can be written, this one will only focus on the big changesâthe nexi3 themselvesâwhere the very possibilities change.
Three Ages of Computing
While there many ways to get a handle on the evolution of computing, in order to gain an initial understanding just where cloud computing fits, of just how significant and, yes, disruptive it is and will be, it is sufficient to consider the broad sweep of computing history.
First Age
Think about the role of computing within the typical organization prior to the widespread adoption of the Internet. The focus was on automating particular operations, creating supporting business processes, and of course, always improving efficiency.
Notice that the focus was within individual organizations, by and large. Yes there were purpose-built networks for interacting between organizations, some of them even fairly large and important (stock trading and manufacturer-specific EDI [electronic data interchange] networks are two notable examples), and even for certain organizations to interact with their customers (e.g., credit card authorization networks), but each of these tended to have a very specific, rather narrow focus. Even more important, these examples were relatively few and far between, and very difficult to achieve.
This was the first age of computing, in which organizations looked internally for the big wins. For the most part the edges of each organization remained the same as they had always been.
At the beginning of the first age the focus was on big infrastructureâmainframes, big point-to-point networks, centralized databases, and big batch jobs. Toward the end, terminals evolved into personal computers, networks went from hierarchical (with the mainframes at the center of each network) to decentralized, with a broader, generally more numerous collection of servers and storage scattered throughout an organization. While batch work still existed, many programs became interactive through this first age, eventually gaining much more visual interfaces along the way.
Infrastructure tended to be associated with particular applicationsâa practice since pejoratively known as âapplication silosââand important applications generally demanded enterprise-grade (read: expensive) infrastructureâmainframes or big servers, and so forth.
Application ar...