note: this entry reprinted with permission as a guest post at TechFlash.
I have nothing against "the cloud". Hey, when I was in college, the mainframe was "the cloud" to me. Since I never went off campus to speak of, my data was available "everywhere", no matter what CRT console I logged in from. Cool.
Well, not always cool, of course. The lessons of centralized computing versus decentralized computing are too tedious to recount here, so if you haven't lived through any of this repeating cycle, you could go read about it. Might have to actually go to a library, though, not much of even computer history is completely digitized yet.
Really Don't Know Clouds At All
But what got me thinking about clouds was the Peter Wilson talk on "Google vs. Microsoft: An Insiders Guide" at the Dec. 1, 2009 Ignite Seattle. Wilson said the following: "[...] why cloud computing's going to win. So kinda take my word that it will. The short explanation is: when the bandwidth of your network connection and reliability equals that of your monitor cable, there's no financial reason to have a PC on your desktop any more. My bogosity meter immediately pegged and I sat through the rest of his talk enumerating just how wrong that line of thinking was. That's why I can't learn in a lecture environment; I stub my mental toe once and by the time I finish rubbing it, the lecture is over and I missed most of it.
First, just because something is "going to happen" doesn't mean I care. If it doesn't happen in the next 50 years, well, odds are likely I'll be sitting on a cloud myself (best-case scenario, of course) by then, and not too concerned with earthly matters. You want bandwidth to every house as good as my video monitor has to my PC? Get ready to solve the "last mile" problem again (not that it ever got solved that good the first time around -- try watching Hulu via your cable modem on SuperBowl Sunday). My monitor can actually display really high-definition stuff, not the friggin' compressed, glitchy HD that stutters across the Internet these days. Will Wilson live long enough to see the infrastructure (in particular, that "last mile" that nobody wants to pay for) get upgraded to that kind of quality? Maybe, but I wouldn't bet on it without first getting a look at his medical records. My monitor was also really, really reliable during the last year. Zero seconds of downtime. There's exactly one point of failure between my monitor and my PC: the cable. There's umpteen points of failure between my monitor and Amazon, or Google, or Microsoft -- and they don't even control many of them. So, I'm pretty sure the reliability won't be there in my lifetime, just arguing from the simple statistical rule that the odds that all umpteen failure points will be error-free for a year is the product (not sum) of their individual odds (.99^x shrinks pretty fast as x increases). My neighbor took "the cloud" out with a backhoe in his driveway just a few weeks ago; my monitor cable was never in any danger.
Second, my monitor has very little latency. In fact, I believe the latency is about... oh, let's just call it zero, because it's close enough. Getting the same latency from the cloud is going to require... changing the laws of physics. Sure, you can do lots and lots of useful stuff with Internet-level latencies, but keep in mind, much of that stuff is getting a lot of help from that local PC. I'm typing this post "into the cloud", but in fact it's being buffered locally. If 'twere not so, then I would be reliving ye olde telnet days, and the Internet would be full of HTTP packets containing exactly one byte. Let's just say that would increase general unpleasantness without going for a detailed analysis (don't dare me, I've been looking for a reason to use the phrase "Shannon entropy" in a sentence!). I don't actually recall any of the prospective cloud purveyors proclaiming you would no longer need a PC on your desktop, but since Wilson has worked at two of them, I have to suppose it's possible someone at Google/Microsoft really is thinking that way. Seems bizarre to me.
Third, there's a little problem of psychology. Kindle owners got a jolt when they realized that Amazon really could delete any of "their" books they wanted to. The sellers of cloud voodoo think we want them to hold all our data for us. They clearly have not taken a poll on this. I want to be able to pick up my data in my hand and hold it, and I absolutely, positively do not want Microsoft, or Amazon, or Google to have the power to deny it to me, whether by court order, or hacker nonsense, or maliciousness, or even an act of God. My data, my hand, mine, mine, mine. Sometimes I find it hard to believe these cloud sellers ever lived through the PC "revolution" (don't remind me some of them didn't -- I'm thinking young thoughts today).
My view of the cloud seems to be pretty inverted compared to, say, Ray Ozzie's. I don't want the cloud to be the authoritative copy of my data, waiting to be downloaded to any machine I care to use (well, any machine that passes Microsoft DRM muster). I want the authoritative copy of my data to be on my USB drive in my pocket, and I want the cloud to just make fairly dumb backups (encrypted of course, stored across more than one vendor) as I work -- just in case my USB disk (my data, my hand, mine, mine, mine) and any other local copies I have happen to fail. The portable app movement is on my side, but of course Microsoft wants control, control, control over their apps, so none of them are portable.
I'm no good at predicting the future (though I did call the collapse of Itanium pretty good in one WDJ editorial), but I'll predict this: there will be a market for software that tries to commoditize the various cloud offerings. Got a cloud backup program? Build it so it lets me choose whether to use Amazon S3 or some other cloud vendor for storage. Got some cool picture/movie app? Build it so it lets me choose whether my JPEGs go onto Flickr or Smugmug or whatever (and let me change my mind and move them later). And so on. One can imagine a world in which a "virtual cloud" application automatically moves both data and apps around to whomever has the cheapest rates. That would make all the cloud vendors unhappy, which pretty much guarantees it's good for consumers.