The Cloud I Want

Handshake 2.0 Takes on The Cloud

 From Alex Edelman:

A lot of people have started talking about "the cloud" recently. I joined the conversation in Welcome to The Cloud.

I can see why a lot of people are excited. More and more of the applications we use every day to create and communicate are available online, accessible from anywhere. And small businesses (larger ones, too) can now quit worrying about IT altogether by putting their data in the cloud.
 
But I'm not a small business owner and, as for web apps, I'll admit to eagerly trying every new Google experiment, but realistically, I've been using webmail since sixth grade. Why get excited now?

Cloudscreenshot

The computer owner's machine still does most of the computing.
Here's an
annotated version of this screenshot.

When I think about cloud computing, I emphasize the computing. The cloud hasn't arrived for me yet because my own computer still does the vast majority of my computing. And I suspect that when I buy my next computer, I'll be thinking about its processor, disk, and graphics card as much as when I bought my last one.

I'm writing this in a text editor running on my machine, listening to music from iTunes running on my machine, looking at a PDF open on my machine, logged in to chat services through client programs that run on my machine. Today at work, I used the copy of MATLAB on my machine to crunch through microscope images from a USB drive – no cloud there – and turned them into a PowerPoint presentation on my machine.

The clouds I use are convenient but not essential. I love Gmail, but Carnegie Mellon - where I'm a student – does email, too. I could easily download my RSS feeds and read them locally. I could host webpages and share files by setting up an old computer in a closet somewhere. And so on.
 
But I don't like the world this way. I think the present arrangement gives us a problem of inefficient computation.

The computer I'm using now is eight times as fast as the one I was using eight years ago. That power is useful: I hear my fans whirring as my computer fills up the extra RAM I installed a few weeks ago and smashes through some monstrous calculations (such as to create a parametric hand turkey).  The only problem is that this happens a few times a week, maybe. Right now, my system monitoring widget tells me that my processor is 89% idle, and it stays that way for most of my daily tasks. At night, I close my laptop, and its power is completely unused for (ideally) eight hours.
 
Meanwhile, biologists need to simulate complex proteins folding, cryptographers need to run data through mind-boggling ciphers, and physicists need to crunch through the equations of lattice quantum chromodynamics. Oh, and somebody's trying to check email and cursing the busy server.
 
And here's another problem. If I ranked parts of my world in order of importance, my computer would probably be somewhere on par with oxygen. In the past year (at least), I have used it every single day. So naturally, I want to take it with me. So naturally, I want it to be thin and light and portable. I'm a college student, so naturally I want it to be cheap. So far so good. Except I also want a computer that's really good at, well, computing. I suspect that many others share my preferences.  That inevitably leads to difficulty in finding the right balance between a wimpy netbook and a gargantuan desktop replacement laptop.
 
I've whined enough, so let me tell you my scenario of a good, near future.

The computing device I carry around consists of a persistent wireless Internet connection and a screen. I chose this device based entirely on screen size. My entrepreneurial friends, used to their Crackberries of years past, opt for little three-inch devices, while those who majored in design prefer 30-inch tablets. (They're not as big as they sound, since their organic LED screens allow them to roll up like posters.) It really doesn't matter, though, since we can do anything we want to – anything that's possible on a cluster of untold thousands of processors operating on the scale of exaFLOPS. Whenever I flip out my device to check email, the cloud – for this really is a cloud – allocates a few processor cycles to my trivial task, sends me the information, then goes back to curing cancer.
 
That's the cloud I want.

***

Alexander Edelman studies physics at Carnegie Mellon University and is the Chief Technology Officer of Handshake Media, Incorporated.

***

We're compiling links to Handshake 2.0's cloud computing series here.

Welcome to The Cloud – In the Beginning Was The Cloud, But We Called It a Server

Handshake 2.0 Takes on The Cloud This is the first entry in our series, Handshake 2.0 Takes on The Cloud:  What do we need to know about The Cloud in order to serve our companies, our customers, and the greater good?

 From Alex Edelman:

These days, people all seem to have their heads in "the cloud" and, as is usually the case with such tech buzzwords, by now the term is so popularized that it's difficult to extract its meaning.

SaaS, cloud computing, The Cloud - this story has it all. "Cloud computing" is a particularly pernicious case because, even before being fogged over by the sudden flood of public attention, it embodies so many different components. I can't provide a single definition. (If I did, it would either be useless or inaccurate.) Instead, I'm going to tell you a story.

The Story Begins
 
Let's say you have a computer. Now this is pretty exciting. You can perform so many calculations per second! And you're a forward-looking type who realizes that these are useful for more than number-crunching: you can do word processing and record-keeping, and one day, when these things get fast enough, maybe even look at pictures! Your friends are jealous, so they get computers, too. Now you can all do really cool things, and soon you realize that you want to share them with each other. So you figure out how to hook all your computers together, and now you have a network.
 
This network is pretty nifty. You can send messages to each other. You can share files. Life is good. But you begin to notice a few problems. You realize that if you want to access a friend's files, your friend's computer has to be on. Ditto if you want to send a message. Likewise, your computer can't interact with your friends' computers unless it's on. You keep some pretty strange hours, so this arrangement is unacceptable.
 
So you and your friends get together and buy another computer – slightly bigger and faster than the others. You designate it the central node of your network. You decide that this computer is going to stay on all day, be responsible for hosting shared files, and distribute messages to its clients. Now, whenever you want to interact with any of the members of your network, you pipe your request through this central computer.
 
At this stage, you wonder what you should call it. The term "cloud" seems appropriate – the structure you've created seems to hover over your entire network – but you get the vague feeling that years from now, technologically inclined people would scoff at the comparison between your humble arrangement and the towering, billowing water droplets that bridge the sky. So you shelve the thought and call it a "server."

More People Like the Story
 
It turns out that you're not the only one who's had these ideas. Lots of people have formed networks by now, and one day you decide that it would be really nifty to link these networks together. So you spend a while writing protocols for communication, standardize things like "hypertext" and "email," and soon you have the Internet.
 
This Internet really catches on. You're busy with your wife, two-and-a-half children, golden retriever, and new small business, but you notice that some computer types have done some really cool things online. For instance, those guys over in Mountain View, CA have a really nifty way of reading email.

Now that all the small networks are connected, you realize there's really no reason to get your communication fix from your own server, especially when these other guys do the job so much better. So you switch over to them. This is really seeming very cloud-like, but you remember that it's just a bunch of guys with better servers in another place and keep your mouth shut.
 
Actually, as time goes by, a whole bunch of people get really good at this networked computer thing. You realize that staying on the cutting edge is expensive and difficult, and the services these people offer are so slick! Gradually, you shift more and more of your crucial tasks over to them: your calendar, your address book, your shared documents (and your private documents), your large file storage, your website, all go into the cloud – sorry, into the servers –  of companies that have dedicated themselves to the task.

Sure, you realize, you could put up servers and do it yourself, but what makes these companies better is the software they provide, which streamlines all your essential tasks, makes them enjoyable, even. Really, for the software they provide as a service, you use their servers, not yours(Hence, Software-as-a-Service, SaaS.)

Not the End of the Story
 
And that's the whole story. Up until very recently, at least. You see, there's one more twist. Until now, no matter how much of your data has been in the cloud, you've still been doing stuff with your data on your own machine. But the final piece of the puzzle – the really exciting bit – is computing in the cloud.
 
Human computer usage is naturally "bursty." (This is a real computer science term. I kid you not.) You spend a few minutes clicking around a website intensely, and then you go somewhere else. Your awesome fireworks simulator gets a lot of traffic in early July and late December, but very little for the rest of the year. Your United States-based customers are asleep and away from your website for about the same chunk of time every day (unless they're college students).
 
And yet, if you want to get the best computing experience, you need to buy a machine that will perform well at the most computationally intense tasks – and then sit idle. And yet, if you want to provide the best experience for your clients, you need to buy equipment that will maintain high performance during the greatest bursts – and then sit idle.
 
Cloud computing lets you shift the burden to a third party. Processing power itself is now provided as a service. You use and pay for only what you need. Isn't that so simple and elegant?

We Won't Notice the End of the Story
 
Let's return to defining The Cloud, then. Now that we've run the gamut from a simple server to fully outsourced electronic labor, when, exactly, can we call it a cloud?

We won't care what it's called or when.  We'll be back – ahead, really – to doing really cool things and sharing them with our friends.

***

Alexander Edelman studies physics at Carnegie Mellon University and is the Chief Technology Officer of Handshake Media, Incorporated.

Graphics by Kelsey Jade Sarles.

***

We're compiling links to Handshake 2.0's cloud computing series here.