We've prodded cloud computing from a technical point of view several times but, from a user's perspective, it's a lot more than your always-available hard drive on the internet. It's omnipresent across platforms and, with the proliferation of smartphones, even devices.
Apple created a lot of buzz when it announced its iCloud service earlier this year. It's designed to enable users to store content so it's accessible from all of their devices.
Guess what? With Linux you can do it better. In the following article we'll show you how to harness the power of the cloud to access all types of data stored on remote services on your devices - from Chrome on your office laptop running Ubuntu, to Firefox on your Fedora desktop at home, to your Android mobile phone.
And while Apple's iCloud is limited, in that it's for users of Apple's products, we'll look at services that cater for all the three major desktops, namely Linux, Windows and Mac OS X.
In the true spirit of open source, we'll also look at options that let you create your own cloud to share pictures with friends and family, stream music to your devices or keep your calendars in sync, whether you modified them in the office or at home.
At the end of it all, you'll be able to sync bookmarks and carry your browser passwords from your netbook at home, to the laptop in your office, to a lunch meeting on your Android phone. We'll show you how you can send and receive email on any device from all your accounts, whether on a webmail service or hosted on your own server, and always have your calendars and contacts with you.
We'll also cover tools that enable you to take pictures with your Android phone and instantly share them on a website such as Flickr, or a social network like Facebook, or upload them to your own cloud. We'll even show you how to buy music from your Linux desktop and stream it onto your mobile phone. That's how you make cloud computing work for you.
Strip away the buzz about cloud computing and all you've got is a web application that gives you the look and feel of a native desktop app, but runs inside a browser and is hosted on a remote web server halfway around the world.
At the expense of some features, you get the ability to access all your documents created with the web app from any device across the planet. This has paved the way for low-cost netbooks with just enough juice to run stripped-down versions of operating systems to access these apps.
Desktops in the sky
You can run web applications from their own interfaces, but for a more familiar way of working, there are several options that let you assemble them inside a browser-based virtual desktop.
Jolicloud runs inside any web browser on any platform and lets you add or remove any number of web apps to the desktop. It's integrated with online storage services such as Dropbox, which means you can access your web app files wherever you are.
Another way to use Jolicloud is to install JoliOS on an older computer or netbook. This enables you to also add and access some platform apps, such as the media player VLC. Since your apps are associated with your online account, when you log in to Jolicloud, either from the web interface or from JoliOS, it will automatically sync your apps across installations.
Peppermint OS, which uses ICE, is a site-specific browser based on Chromium, which also makes web apps feel more like their desktop brethren. Web-based services have become synonymous with cloud computing; you can't mention one without the other. But there's more to cloud computing than feeding off services that live on remote web servers.
Wouldn't it be great if you could access your everyday desktop apps, from anywhere, on any type of machine, irrespective of its hardware prowess? And when we say desktop apps, we mean both Linux and Windows.
That's exactly what Ulteo Open Virtual Desktop (OVD) is designed for. After you've got it set up, you can serve as many native Windows and Linux apps to as many concurrent users. And it gets better: in the true spirit of the cloud, all that's needed to access the desktop apps is a web browser.
Ulteo OVD relies on two components - a Session Manager and an Application Server - to create virtual desktops that run inside web browsers. To deliver both Linux and Windows apps, you need to run application servers inside at least one instance of each OS.
Setting it up isn't too much hassle, but you will need to be familiar with the network setup. It's ideal for installations that need to deliver a mixture of apps and are willing to take a hit in performance. Since the apps are served from within remote application servers, make sure these machines are powerful enough to minimise the performance penalty. If you run multiple instances of app servers, you can easily balance the load between them.
The best thing about Ulteo OVD is that it can also act as a centralised file manager. Users can create and save files on the server for their own use, as well as creating shared folders.
Files and documents
There are two ways to carry your data with you wherever you go: you can either send it to one of several online storage providers, or let the web app keep it for you.
Google Docs is an example of the latter. This free service lets you create and share text documents, spreadsheets, presentations, drawings and more in various formats, including PDF. It's also available as an Android app, so you connect to it and work on the documents from your mobile phone.
Besides creating and editing documents, you can use the Google Docs Android app to upload images to your account. The browser-based version also enables you to upload PDFs. All the documents created either on the web interface or uploaded from your phone are kept on Google's servers, and are thus accessible from wherever you connect. Additionally, you can share these documents with other Google Docs users, who can in turn share their docs with you.
The basic free version of Google Docs allows up to 1GB of free storage and you can purchase more space starting from $5 (about £3) per year for 20GB. In its current form, Google Docs requires an active internet connection for you to work on your documents, but the ability to work offline, which leverages the HTML5 capabilities of the Chrome browser, is about to be rolled out.
Another similar option is the Java- based ThinkFree Office suite, which is pre-installed on several Android-based handsets.
Online duffel bag
If you need dedicated storage warehouses to keep your stuff online, there are plenty of services available.
Canonical's Ubuntu One service is tightly integrated into new releases of the distro. You can sync files with your online Ubuntu One account via the right-click Context menu. You can then view these by logging on to the Ubuntu One website. You can also upload files via the web interface, which will automatically be synced with your Ubuntu installation.
Dropbox is a cross-platform service and both Jolicloud and Peppermint have built-in support for it, so you can access your files from any of these web desktops.
A more comprehensive cross-platform solution for backing up and syncing files is SpiderOak. You can mix the web apps to get out of a sticky situation. For example, what if you need a file that's on your desktop at home, and all you have is your Android phone?
If you have the TeamViewer remote desktop viewer on your desktop, you can connect to it using the TeamViewer app on the Android device, copy the file into Dropbox or share it via SpiderOak, and it will automatically be synced to your phone.
Address book, calendar and email
For those who you work on the move, access to your emails and address books is vital if you want to stay productive. You need to be able to sync them across your office and home computers, across operating systems and to your mobile phone.
Online email, by design, is globally accessible and requires nothing more than a web browser, but there are tools that enable you to use it offline, either on your laptop or on your phone, and then sync the two when you go online.
If you use Gmail or any other web-based email service that enables you to grab email via the IMAP protocol, you can keep your online account in sync with your laptop by connecting to it via any cross-platform email client, such as Mozilla's Thunderbird or Novell's Evolution.
Accessing Gmail on your Android device is a no-brainer, since these phones ship with a Gmail app that helps you set up multiple Gmail accounts, and even downloads messages for offline viewing.
If you use your own hosted email server, you can access it from any computer via a webmail client such as Horde, SquirrelMail, Roundcube and so on. Just like with Gmail, you can fetch emails from your own hosted server into a desktop email client as long as you know its IMAP settings.
Android phones also enable you to sync email accounts from your hosted email server via IMAP. You'll find several IMAP email clients on the Android market.
K-9 Mail is one of the most feature-packed and, alongside IMAP, also supports POP3 and Microsoft Exchange Server. K-9 also works with the Android Privacy Guard (APG) app and enables you to send encrypted emails.
As well as email, once you've set up a Gmail account on your Android device, your address book and contacts are also automatically synced. Any additions or changes to your Gmail calendar or contacts will automatically be reflected on your phone, and vice versa.
Google Calendar supports the CalDAV standard, so you can sync it with Microsoft Outlook using the Google Calendar Sync utility, as well as with Apple's iCal or Mozilla's Sunbird.
Similarly, there are extensions for desktop email clients to sync contact information. The Google Contacts add-on for Thunderbird automatically detects Google accounts and syncs contacts between the Google and Thunderbird address books. If you use Evolution, your client already has the built-in ability to sync your Evolution contacts with Google's address book.
Step-by-step: Set up K-9 on Android
01. Add an account
After you've downloaded and installed K-9 from the Android market, start the setup process by entering your email address and password.
2. Connection settings
The next step involves specifying the IMAP connection settings for your webmail server. The K-9 setup program tries to guess the values based on your email address.
03. Account settings
After you've set up your account, you can fine-tune it. You might want to hook it up with APG to send encrypted messages or ask it to store messages in the SD card.