Tuesday, July 29, 2008

Cloud computing

This morning I read an article in this week's Zeit "Die angekündigte Revolution". Its author claims that the fact that in the future we will not have computational power in our homes (or with us) but rather use computing centers that are centralised and accessible over the net. He equates that with the revolutions that came about as an centralised electricity supply was established (instead of factories having their own generators in the basement) and centralised water supply made people independent of a well in the backyard.

I am not so sure.

First of all we've already had that: In the past, there were mainframes connected to many terminals. The pain that came with this set-up was only relieved when computational power appeared on everybody's desks thanks to PCs. So why go back to those old days?

In addition, what I am observing is that the computational power I have local access to is exponentially growing for as long as I can think. And I see no end to that trend. Currently, my mobile phone has more memory than my PC a few years ago and has a processor that can do amazing things. The point is not that I need that but that it's so cheap I don't mind having it.

True enough, I only very rarely really need CPU cycles. But when I need them (computing something in mathematica or visiting a web page with some broken java or javascript that makes my browser busy) I usually want it right now. It's not that I am planning it and could as well outsource it to some centralised server.

It might be a bit different with storage. Having some centralised storage that can be accessed from everywhere (and where other people worry about backup so I don't have to) could be useful. Not only for backup and mobile access to all kinds of documents. All that assuming that data privacy has been taken care of. But also things like configuration files (like bookmarks), documents, media files. That already partly exists (at least for specific applications) but nothing unified, as of today (as far as I am aware of).

But I cannot see people giving up local computational power. Recently the part of PCs where performance has been growing most strongly are the video cards (by now massive multiprocessor rendering engines). That development was of course driven by the video game market. I don't see how that would be moved to a centralised computer.

As of today, I do not know anybody that uses Google Docs. It's more a proof of concept that an application for everyday use. If I really want to collaborate on documents I would rather use subversion or CVS. Again, that has a centralised storage but computation is still local.

Let me finish with two rants about related problems that I recently had: First, I use liferea as my RSS aggregator. That is a nice little program with intuitive user interface that allows me to quickly catch up with the feeds I am interested in. Unfortunately, it keeps its state (which posts it has already downloaded and which posts I have looked at) in a stupid format: Its actually a whole directory of xml and html files! So to continue reading blogs on my laptop from where I left of on my PC requires scp'ing that whole directory. Not to mention there is no way to somehow 'merge' two states...

The other thing is email. You might think this is trivial, but to me it seems it is not. My problem is first I am getting a lot and want my computer to do some of the processing for me. Thus I have the mail delivery program sort mail from mailing lists into appropriate folders (including a spam folder). Then, on a typical day I want to read it with an advanced reader (which in my case is alpine, the successor of pine). The killer function being to automatically save incoming mail in a folder matching my nickname for the author or the author's name and saving outgoing mail to a
folder according to the recipient. Not to mention I have about half a gig of old mail distributed over 470 folders, more than what one can easily deal with one of the GUI clients like thunderbird.

That is all nice and well. Once I am at my PC I just run alpine. Or if I am at home or travelling and connecting for a somewhat decent machine (i.e. one that has an ssh client or at least allows me to install one) I ssh to my PC and read mail there (actually, I ssh to the firewall of the physics department from there ssh to one of the computers of the theory group and from there eventually to my PC as it is well hidden from the outside world due to some other people's idea of computer security).

What if that other computer cannot do ssh but there is only a web browser? My current (and for my upcoming four week holiday in the south west of the USA) solution is to go to a page that has an ssh client as a java applet and then to step one above. But that is a but like the mathematician in the joke that sees the dust bin in his hotel room burning and takes the buring bin bin to the physicist's hotel room thereby reducing the problem to an already solved one (the physicist had extinguished a fire in the previous joke).

Why is it so hard these days to set up decent webmail? At least for the duration of a holiday? My problem is that there are three classes of computers: Type one are connected to the internet but I do not have sufficient privileges to install software. Type two I have the privileges but they don't give me an IP that is routed to the internet (even more: that accepts incoming connections). Type three: A computer to which I have root access and which as a routed IP but where the software installation is so out of date I cannot install software with one of the common tools (i.e. apt-get) without risiking to install/upgrade other packages that require at least a reboot. I should mention that that computer is physically located some hundred kilometers away from me and I am the only person who could reboot it. A major update is likely to effectively make me lose that computer.

These things used to be so much easier in the past: Since the days of my undergraduate studies I always had some of my own linux boxes hooked up to some university (or DESY in that case) network. On that I could have done the job. But with recent obsession with (percieved) security, you only get DHCP addresses (with which one can deal using dyndns etc) but also which are behind firewalls that do not allow for incoming connections. Stupid, stupid, stupid!!!

I am really thinking about renting one of those (virtual) servers at one of the hosters which you can now do for little money to solve all these problems. But that should not really be neccessary!

1 comment:

Arun said...

From several accounts, it seems that the US Presidential campaign of Senator Obama is using google docs.

e.g.
http://www.dailykos.com/story/2008/6/30/215919/625/673/544433