Cloud Computing for the Desktop

Cloudy Windows


Cloud computing is coming to the desktop with a vengeance. We survey the Internet-based resources that seek to supplement, or even replace, the local computer.

By Tim Schürmann

The idea of the cloud desktop sounds convincing: No matter what computer in the world you log in to, you'll always have a familiar work environment with your familiar programs and personal documents. All it takes to access the virtual desktop is a browser. The files are in the cloud, so you don't need to worry about disk space, backups, or the power of your CPU because the applications are hosted by powerful servers somewhere on the Internet.

Internet Benefits

Thanks to the cloud desktop, a tiny netbook can mutate into a workstation. And if you happen to "lose" your mobile device at the airport, the thief only gets their hands on some cheap hardware. Additionally, administrators will be delighted to see all of their users running the same software. Little surprise that more and more corporations and open source projects are jumping on the bandwagon.

icloud by Sweden's Xcerion [1] gives users a free virtual computer with 3GB storage after registration. If you are willing to pay for this service, US$ 40 a year will buy you 100 GB of storage space for your data and switch off the pesky ads.

For icloud, you need both Java and a Flash plugin in place. Flash is required for the login page, and the Java environment is your window to your online computer. The service is designed for Internet Explorer, but it also runs on Firefox. Users with Opera are confronted with an empty white window after logging in. Unfortunately, the desktop doesn't work properly on Firefox either: Applications don't work as intended, the desktop reacts differently than you would expect, and the speed leaves much to be desired. If even the login fails, Firefox users can at least resort to the page set up especially for the Mozilla browser [2].

From a visual point of view, the virtual desktop is reminiscent of Windows Vista (Figure 1); it speaks 27 languages and currently offers some 30 applications. Users can modify the look thanks to a handful of themes and even change the wallpaper to match their own taste. Users can upload existing files in a browser, or WebDAV for more convenience, and the same approach is used for exporting files.

Figure 1: The icloud desktop is somewhat cluttered.

The cloud desktop lets users share files with other icloud users and even collaborate on editing documents, depending on the file format. Xcerion spices the whole enchilada with some social networking: Desktop applications let the users chat in Google Talk, ICQ, MSN, and AIM; compare appointments in a calendar; twitter; or manage their Facebook profiles.

Rudimentary

The applications offered by icloud offer only a rudimentary functional scope. Although Mail can handle multiple accounts, don't bother looking for filters or similar convenience features. Write will import legacy Word files in DOC format, but it can't handle the Open Document format.

The lack of footnotes, templates, and similar standard functions degrades Write to nothing more than a convenient text editor. The Internet browser, which is currently in the alpha phase, is designed to make surfing more secure and to protect the user's privacy - after all, users surf with the public IP of the cloud.

The development tools allow users to string their own applications together. Under the hood, icloud applications are simple XML files that are executed by a layer dubbed Xcerion Internet Operating System (XIOS/3). The data at the Xcerion datacenter are hosted on servers with Ubuntu Linux. icloud then accesses external services by way of a SOAP interface and Java.

To promote the integration of smartphones and multimedia players, Xcerion has even launched its own icloud Ready logo. Glide [5] offers something similar to icloud, but it targets multimedia and offers 30GB storage in the free variant.

When you upload files, you have to trust commercial service providers blindly. You don't find out which servers store your files, whether your files are encrypted, or what the provider does with them.

I would think twice about managing my finances with a built-in icloud application called Money Manager.

Open Source

On the other hand, you could choose an open source solution like eyeOS [6], which is licensed under the AGPL Version 3. In this case, you have to provide your own infrastructure and maintenance. An experimental setup by IBM demonstrates how you can do so on a Linux cloud running on IBM's own System Z [7].

Free solutions often take the form of a PHP application, and eyeOS is no exception. To install, you simply need a web server with PHP 5 or newer. Unpack the eyeOS archive, navigate to the installer subdirectory in your browser, and type a password for the root account in the dialog. In contrast to icloud, eyeOS supports any recent browser from Firefox through Chrome to Opera.

The friendly-looking blue workspace is reminiscent of Gnome and has a neat and tidy appearance (Figure 2). Menus at the top give users access to the pre-installed applications. They are similar to the offerings by competitors: an office package, file manager, calendar, instant messenger, and email client cover mainstream needs. However, the functional scope lags far behind that of local applications. For example, the email program can handle multiple accounts, but it doesn't offer filters or support attachments.

Figure 2: Out of the box, the eyeOS desktop only has a few applications, but they are rock solid and quick.

If you were to take a close look at the word processor, you might be able to identify the web-based TinyMCE editor, which can at least handle Open Document and Word files, although it does rely on a filter borrowed from OpenOffice to import the Microsoft format.

Smooth Workflow

In contrast to icloud, the eyeOS desktop is really fast. Applications respond quickly and can be moved quickly around the desktop. Users can also apply styles to customize the desktop look or modify the menu structures. An access control list lets administrators choose which functions a user is allowed to access and under what circumstances.

You can program your own eyeOS applications in PHP and Ajax. A developer manual in the comprehensive wiki guides programmers through their first steps. Software is grouped in an appstore on the web [8]. This currently offers mainly tools and games. Installing new software is easy. Working with admin privileges, use the file manager under Office in the toolbar to upload the application package (a zipped tarball with a suffix of .eyepackage) from your local machine to your workspace and then click to install. This approach is also used to install language packages and styles.

The social networking aspect here is fairly spartan and takes the form of a built-in bulletin board application, which means you need to add external applications to provide the missing functionality.

CorneliOS [9] is similar to eyeOS, but still in beta. It includes its own content management system and uses a desktop that looks similar to Windows 7 or Vista. Another alternative is Lucid [10]; the first stable version was released just recently, but, in our lab, refused to let us log in.

A terminal server provides an alternative approach to network-supported desktops, as described in the "Alternative: x2go" box. The free KDE desktop project is looking to take a different approach and establish a community cloud (see the "Vision: ownCloud" box).

Alternative: x2go

Terminal servers such as x2go [3] [4] offer an alternative to web desktops. The idea is that multiple users share a computer. The X2go software runs on a server powered by a legacy Debian or Ubuntu Linux. A special client sets up the connection and transfers the screen output to the user's computer. In this scenario, you can access any Linux application the administrator installs on the server.

If needed, the x2go client will disappear into the background making the server-based applications look like locally installed apps (seamless windows). Users can interrupt their sessions at any time and restart them at the same place on a different computer. On top of this, multiple users can share a session for remote management or training purposes, for example. Besides the standard password, many other authentication options are available, such as USB sticks or smart cards.

To access the x2go server, you need special client software. Although this is available for the major platforms - Linux, Windows, and Mac OS X - you can't reach the server from any old Internet café. The x2go plugin for Firefox promises more freedom in this respect, once development work is completed.

Also, users have to provide a suitable infrastructure. The integrated load balancer, which distributes client requests over multiple x2go servers, and the ability to mount remote filesystems via SSHFS, can facilitate this task. x2go doesn't let you establish a cloud in the strictest sense, but according to the developers, some web hosters are working on x2go packages behind closed doors.

Vision: ownCloud

Instead of designing a new desktop environment from scratch, you could simply bring cloud services to an existing desktop. This seems to be the reasoning behind the ownCloud project [11], which was launched by members of the KDE team.

Within the scope of the project, the aim will be to develop open source server software that you can use to set up your own cloud. The cloud initially will serve as robust data storage, but in the long term, it will power social networks and other services integrated with the (KDE) desktop.

Access to stored data will be possible from multiple platforms, including cellphones and web interfaces.

Existing KDE applications will be able to use the Akonadi data management service to store data. A built-in versioning system will allow users to revert to previous versions of documents.

Also, collaborative functions, such as file sharing between users and collaborative document editing, are in the works.

All of these functions sound fascinating but are mainly the results of a feature brainstorming session.

The first rudimentary version was released March 12, 2010. It lets users store data via the WebDAV protocol; additionally, it provides a web interface.

The other functions will be available in versions 2 and 3, which will appear throughout the rest of 2010, according to the ambitious roadmap [12].

Lean Companions

Netbooks are mainly used as mobile surf stations. Their low-end hardware makes them the perfect backdrop for virtual desktops. In line with this, several solution especially trimmed for use on netbooks saw the light of day last year, led by Chromium OS (alias Chrome OS) [13].

This operating system by Google is a version of Linux, stripped down to the bones, that launches a browser. The search engine provider gives Chrome OS a way to let people access its own Internet services. Good OS LLC has adopted a similar approach with its Cloud [14] product.

The free Jolicloud distribution hasn't taken this step yet [15]. Jolicloud is based on a lean Ubuntu Netbook Remix, with a custom interface dropped on top of it. On the desktop, Linux programs and web applications are peers, and the latter can be installed and used just like executables. Ideally, a user will not be able to see the difference between a web application and local software.

To make full use of the tiny netbook screen, programs automatically launch in the foreground on Jolicloud. The distribution does without the titlebar, and the close button is integrated in the taskbar at the top of the screen. You need to register with Jolicloud (this is currently free) to receive updates automatically and be able to access the distribution's own repository. The developers monitor the offerings in the repository, very much like Apple monitors its own App Store. To make up for this, Jolicloud subscribers can look forward to single-click installation.

After signing up for an account, you can transfer your work environment to other devices and discover which applications other "Joliclouders" that you know are using. Of course, you can chat with your buddies, too. A "pre-final" version of Jolicloud is available, as is reflected in its somewhat slow response times.

Bibud (formerly Xenon) is a social web desktop project based on PHP, MySQL, and HTML5 [16]. From the simple start page, you can demo the current state of development (Figure 3).

Figure 3: The Bibud demo lets you check out the state of development for a variety of apps arrayed across the top of your browser window.

Cloud Fever

While the gold diggers are out there busily staking their claims on the cloud desktop, you have to ask whether anybody has dug out any nuggets to date. The current solutions offer little more than data storage with a cute interface and a link to existing Internet services that you could just as easily access in your browser. The providers seem to be aware of this: Xcerion advertises its icloud as a "simple approach to providing, sharing, and managing content." And icloud is not really the best solution for managing social networks: The current crop of applications only covers a handful of services, and users need to launch the apps first - your locally installed browser will be quicker at this.

The open source solutions introduced here are raw diamonds that you have to view as cute content management systems. It will take tools and custom applications for them to offer an interesting alternative for a company intranet.

The web-based netbook operating systems seem to have made the most progress. Market giant Google is obviously setting the pace. Jolicloud is trying its best to become a kind of free iPad operating system, including the App Store, and it's not doing such a bad job, although tying it to a user account is fairly cheeky. I guess the developers will be looking to earn some money with value-added functions at some time in the future.

Immature

Security is a topic that is too easily ignored: A compromised browser at a WiFi hotspot could easily grab your passwords, thus hijacking your virtual computer. Jolicloud discloses a plethora of information to your buddies, and those in charge of data security will probably be frowning right now, despite privacy policies.

Some desktops are just impossibly slow; many sport a massive alpha or beta label. It will be a long time before virtual desktops can replace the legacy mobile workplace, and it remains questionable whether they will ever be capable of replacing the local desktop. When you're out in the sticks miles away from a wireless Internet connection, one thing is certain: You'll be wishing you had your good old laptop back.

INFO
[1] icloud: http://www.icloud.com
[2] icloud start page for Firefox: http://os.icloud.com/ff.html
[3] x2go: http://www.x2go.org
[4] "Staying Thin" by Heinz-M. Graesing and Markus Feilner, Linux Magazine, January 2009, http://www.linuxpromagazine.com/Issues/2009/98/Staying-Thin
[5] Glide: http://www.glideos.com
[6] eyeOS: http://eyeos.org
[7] "Performance Test of Virtual Linux Desktop Cloud Services on System z," IBM Redpaper: http://www.redbooks.ibm.com/abstracts/redp4593.html
[8] Directory of eyeOS applications: http://eyeos-apps.org
[9] CorneliOS: http://www.cornelios.org
[10] Lucid: http://www.lucid-desktop.org
[11] ownCloud: http://owncloud.org
[12] ownCloud roadmap: http://owncloud.org/index.php/Roadmap
[13] Chromium OS: http://www.chromium.org/chromium-os
[14] Cloud: http://www.thinkgos.com/cloud/index.html
[15] Jolicloud: http://www.jolicloud.com
[16] Bibud: http://bibud.com/