Cloud Computing for Everyone
I was listening to a Supernova panel earlier featuring writer Nicholas Carr, where he shared a really interesting insight about how computing is becoming a utility in much the same way as electricity or water currently are. He compared the trend to electricity back in the early 1900’s, when every factory had to produce its own power in order to keep itself functioning. This was of course, back in the days before Alternating Current, and every large-scale industry had to be sitting beside a river if they were water- or steam-powered. Of course, when AC came along in the 1910’s, it became possible to centralize power-generation, such that all of these industries could simply plug in to a power-line and receive as much as electricity as it could pay for.
A similar trend is occuring now, and it’s happening at the computing level. Essentially, we are relying more and more on centralized computing, and less on what’s actually installed on our local machines. It’s happening with things like content-creation, remote storage, and media consumption. But we’re still fairly early on in the process, and in some ways it’s a lot like the early days of electricity as well. The centralization of power-generation is only as good as the distribution lines that deliver it, i.e., if there aren’t any lines to your house you’re essentially screwed. Similarly, the democratization of computing power is only as good as the pipe from the source to the parties requesting it.
The reason why we don’t have an online image editor of the same caliber as Photoshop, for example, is largely because the latency between requests would render the app practically unusable. But let’s say bandwidth and latency were such that it would be indistinguishable from the desktop (i.e., below 20-milliseconds, you know like ping times in Quake III), and let’s posit further that a browser-based Photoshop could give you a similar design experience. Suddenly, the notion of software as a package disappears; instead, our browser (although I may be stretching the definition of the term “browser” here) acts purely as a display for computing that’s occurring thousands of miles away from us. The actual software never has to touch our machine apart from a few cached assets. What we’re describing here is the purest form of the “thin client” concept.
Now, what’s interesting here is the question of why we aren’t at this stage yet. In that same Supernova panel, Chris Meyer pointed out that although computing power is doubling every 18 months (Moore’s Law), bandwidth doubles once every century (Grove’s Law). This notion was echoed by Eric Schmidt in the early 90’s, when he said, “When the network becomes as fast as the processor, the computer hollows out and spreads across the network.”
As businesses begin to incorporate this idea into their overall strategies, we start to see more and more of our lives being transposed from our local machines to some abstract place online. Google and Microsoft have their respective online office suites, Apple is pushing out the MobileMe service, and Amazon is trying to wedge itself underneath all of the smaller, independent offerings as a platform for utilitarian cloud computing. But all of these efforts are ultimately limited by bandwidth, and it makes one wonder how much longer we have to wait before we can get to Photoshop Online that doesn’t suck.
I also wonder how we know we’ll have reached that point. When our home connections reach 150Mbps (which is the theoretical throughput of the average SATA hard drive) and achieve a latency of less than 20ms? That’s fairly far off, it looks like. If SpeedTest.net is to be believed, for instance, the global average broadband connection speed looks to be about 2.8mbps down / 598kbps up (although admittedly, this data is almost completely skewed by the fact that no dial-up users ever measure their bandwidth at Speedtest). I think we could make an educated guess that the vast majority of the 1.4 billion people currently online are probably doing so on less than 128kbps, i.e., completely out-of-reach of the thin-client cloud-computing dream. Global average ping times meanwhile look to be close to 200ms.
Here’s the other side of the analysis though, keeping in mind our two eponymous laws (Moore’s and Grove’s). If computing power on a desktop doubles so quickly, and software becomes more and more complex, how will cloud software – which at the moment can only muster basic, stripped-down versions of their desktop siblings – keep up? When you take into account Wirth’s Law, things get even murkier: “Software gets slower faster than hardware gets faster.” Can cloud software get faster faster than desktop software gets faster?
Originally published at http://guttervomit.com/2008/07/08/cloud-co...



