Jolicloud
I once had a frustrated customer point to his computer and exclaim, “I don't want to know how it works. I just want to use it!” I know what he wanted; he wanted to push a button and have the machine do what he expected. Over the years since that episode, computers have become a bit more friendly and easy to use, but they've also grown in footprint and complexity, or at least, that's what I thought. Finally, I think I've found an operating system that is powerful enough for everyday use, yet easy enough to use that almost anyone can learn to use it. Jolicloud is based on Ubuntu and is targeted toward Netbooks and other low-power devices. I was able to base this review on a pre-release image of version 1.1, which should be available by the time you read this article. The release notes indicate that version 1.1 includes an upgrade to the underlying Ubuntu from 9.04 to 10.04 as well as several package upgrades and kernel optimizations. The release notes also claim improved battery life, system stability, supported hardware and overall quality of the operating system. Additionally, I've been told that several changes and improvements already have been implemented since I downloaded my snapshot for evaluation, so your mileage may vary, although only slightly. I was pleased to discover that, in typical Ubuntu fashion, almost everything seemed to work right out of the box.
For this review, I tested Jolicloud using a VirtualBox virtual machine with 512MB of RAM. I started with a live .iso image and was able to become familiar with Jolicloud before actually installing it. The .iso image is the most convenient way to get Jolicloud onto a workstation, provided it has a DVD player. However, using the USB key installation method probably is more practical for most Netbook owners. The Windows installer allows Jolicloud to be installed side by side on devices that have Windows installed. So, simply testing Jolicloud doesn't really require any type of commitment. During the testing phase, Jolicloud gives you the option of installing onto your system's hard drive. The entire installation process takes about 30 minutes, and nothing could be easier.
Once the installation was complete, I had to create an account at my.jolicloud.com, so I then could associate my new machine with that account. The idea is that you can associate more than one machine with a single account, and they'll all be synchronized (more on this later). Once this association was made, I was able to log in using the user name and password I had set up during the installation process. Alternatively, I could have tied my user account to my Facebook account and used those credentials to log in.
Once users are logged in, they are presented with a clean, simple interface. Figure 1 shows Jolicloud's Launcher. As you can see, I've gone ahead and installed a number of applications. The application icons are large and obviously geared toward touchscreen users. The Launcher presents the application icons one page at a time, and each page can be selected by clicking one of the little dots at the bottom. Yes, it's very much like using an iPhone.
In the upper right-hand corner is a simple control panel, just like you would expect on most systems. In the upper left-hand corner, you see a small blue cloud icon and a couple other icons. This is the taskbar. Any task can be brought to and from the foreground by clicking on its icon. The blue cloud always will be there. Clicking it minimizes all windows and shows the home screen. Once you're at the home screen, you will see four buttons at the top. The first one on the left brings up the Launcher. The button that sort of looks like a satellite dish allows you to follow other Jolicloud users and see what applications they are installing and which ones they like. The button that looks like a file folder brings up a simple file manager. From here, you can manage files on your local storage, as well as files stored in various cloud providers, such as Dropbox.
Finally, the button that looks like a gear allows you to perform miscellaneous functions regarding your Jolicloud account and your registered machines. This is also where you'll find the Local Settings application.
Although Jolicloud isn't extensively configurable, some gems can be found under Local Settings. Under Network Connections, you can configure various wired, Wi-Fi, 3G, DSL and VPN connections. The VPN capability includes Cisco, PPTP and OpenVPN clients. Local Settings also is where you'll find network tools, such as ping, traceroute and nslookup. Local users can be added, deleted and modified as well.
Going back to the home screen, notice the big green Add button in the upper-left corner. This button takes you to Jolicloud's application store (Figure 2). Along the left-hand side, you will see that you can search for applications by category as well as by “Most Liked” and “Most Recent”. I don't know how many applications are available for Jolicloud, but I've spent hours browsing the collection. When I first saw that Facebook was being offered as an “application”, I thought that it was sort of cheating. Of course, I was under the mistaken impression that the result was simply a browser bookmark. It turns out that the resulting application doesn't actually launch a full-up browser. Instead, it launches a Chromium runtime environment and the Web site ends up looking like a standalone application. Because of this capability, Web-based (or cloud-based) applications look just like standard applications. As long as your machine is connected to the Internet, there is no difference between running a Web-based application and a standalone application. For example, the Wikipedia cloud-based application behaves just like the locally installed Celestia application.
This blurred distinction between cloud and local applications is a two-edged sword. On the one hand, it offers a vast amount of functionality with little or no software installation. On the other hand, more naïve users could become frustrated when their cloud applications don't work when their computer is off-line. Jolicloud takes full advantage of cloud-based computing by blurring the distinction almost perfectly. But, with the addition of cloud-based storage like Dropbox, this blurring extends beyond applications to file storage. Jolicloud makes such cloud-based storage spaces look just like local storage. While I was evaluating Jolicloud, I went ahead and installed the Dropbox application and applied for a Dropbox account. Once this was configured, I had a Dropbox directory in my home directory and Jolicloud's file manager treated it just like any other directory.
The search field at the top of the home screen is pretty novel. Once you enter a search term, you are presented with a pick list that allows you to use the search term to search Google, Yahoo and Bing, as well as Facebook and Twitter. You're also offered the opportunity to use your search term to search for Jolicloud applications and users.
Finally, there's the feature I alluded to earlier, synchronization. In this case, synchronization refers to the fact that if an application is installed on one machine, it automatically will be installed onto each machine associated with the my.jolicloud.com account. This way, if you had Jolicloud installed on a laptop, a workstation, a VM and a tablet, you could install an application on one device and find it installed automatically on all of the rest.
During my time playing with Jolicloud, I was able to see this feature firsthand. After I had been using Jolicloud for some time, I decided to create another virtual machine instance. This installation went as well as the first ones. When I logged in to the new machine, I saw icons for all the applications that had been installed on the other machine, only slightly dimmed. In a few seconds, the new machine started to download the corresponding applications. From a nerd's point of view, it was pretty neat to watch, and it was completely automatic. Of course, none of these features would be of any use without applications.
Jolicloud's application store allows you to install many applications with just a few mouse clicks. The Chromium Web browser is installed by default, but you can install Firefox if that is your preference. For serious office work, Jolicloud offers Google Docs as well as the OpenOffice.org suite. Various communications tools also are available, including Pidgin and Skype. Even fun tools like Boxee and Celestia are easily installed.
But, Jolicloud isn't for everyone. Power users and developers may find Jolicloud a bit limiting—especially given the minimal number of supported screen resolutions and lack of availability of developer's tools in the application store. Even with these limitations, however, Jolicloud could support a broad base of users.
People who don't want to carry around a bulky laptop but who still want the speed and utility of a fully loaded Linux system could install Jolicloud on a Netbook and have just about all of the functions they could want. Once installed, such a system certainly would out-perform similar hardware running the factory-installed Windows operating system. I'm sure that the ability to stream media, update Facebook, use an instant-messaging client, and do homework using a complete office suite, without bogging down the computer, would be welcome by any student.
Referring back to the customer I mentioned at the beginning of this article, many people just want to turn a machine on and be able to do useful work with it. Those people don't want to perform any incantations to load a document, and they don't want to have to configure anything. Jolicloud's simple user interface makes it ideal for people who don't want to be computer geniuses and just want to use a computer.
People who appreciate simple interfaces and large icons also would like Jolicloud. Additionally, those people may not be as patient with slow system response, but at the same time, they may not be able to afford modern equipment.
Finally, I could see deploying Jolicloud in a student computer lab. Assuming that all of the computers were associated with the same account, maintenance would be quite easy. Software that was installed on one machine would propagate to all of the other computers, and virus protection wouldn't be needed as it is with Windows-based systems. Using Linux's inherent permissions system, these machines could be secured against tampering easily. Once again, Jolicloud's meager resource requirements mean that schools could continue to use older equipment.
Overall, I've been very impressed with Jolicloud, but it can be improved. A more-sophisticated permissions system could be devised. Such a system could be used to prevent student users from installing applications or changing the network configuration. This would make Jolicloud machines much more secure in a laboratory environment. A remote user authentication mechanism, outside of Facebook, also would make the management of large Jolicloud deployments much more convenient. With so many applications available from Jolicloud's application store, I still wish I had some way to install my own applications on the device and have corresponding icons appear on the home screen. Granted, I might be able to find where the home screen is stored and hack it in order to add icons, but there must be a better way—or there should be.
With as many communications applications as Jolicloud has available, I was surprised there wasn't a VoIP client other than Skype. I also was surprised not to find an SSH server running.
Finally, because Jolicloud is so ideal for portable devices, it would be nice if there were some facility to track or disable the device remotely. Perhaps devices that had an integrated GPS could be configured to post their location periodically. Or they could use a dynamic DNS client to make their current IP addresses known. It's probably just a matter of time before most of these weaknesses have been resolved, as most of them simply require the appropriate software to be written or made available to the Jolicloud community.
Although I'm not quite ready to toss out my KDE environment in favor of Jolicloud, I do expect to be using Jolicloud for a few things. I've got an old laptop that never was really powerful enough to run Windows XP, but it certainly should be able to run Jolicloud. I'm also thinking seriously about installing Jolicloud on my young sons' computer in a dual-boot configuration with the existing Vista. Most of the school-related work that they need to do can be done within Jolicloud, and that might reduce some of the temptation to play games when they should be doing their schoolwork. Being able to boot in to Vista to play graphics-intensive games then could be used as a reward for finishing homework on time.
I hope this article has enticed you to try Jolicloud, either on a Netbook, desktop or even in a virtual machine. If you do, I think you'll find that Jolicloud has a very elegant interface, a wide variety of applications and is a great way to bring Linux's stability and performance to otherwise-limited computing devices.
Mike Diehl is a contract programmer and consultant in Albuquerque, New Mexico. Mike lives with his wife and three small boys and can be reached via e-mail at mdiehl@diehlnet.com.