December 5, 2006

Child's play: Sneaking a peek at the OLPC OS

Author: Nathan Willis

The first One Laptop Per Child hardware devices are still months from deployment, but you can sneak a peek at their Sugar desktop environment and bundled applications by running an OS image under an emulator. It's a great way to finally get some hands-on time with this long-anticipated project, even though it's not perfect.

The OLPC wiki has instructions for emulating the laptop via several software schemes -- QEMU, VMware, and Parallels Desktop. I chose to download the VMware image, which is simple and runs inside the freely available VMware Player.

A word of caution: although the native hardware will only sport a 366MHz processor, the emulated system feels slower even on a fast host machine because of a delay in cursor/keyboard responsiveness. The apps launch fast enough, but sluggishness in the user interface contributes to a perceived sluggishness in the overall system. Don't judge its performance too harshly.

User Interface. Click to enlarge

When you launch the OLPC VMware image, you see a GRUB menu flash by, followed by an incredibly fast sequence of startup messages. When the GUI starts, you see a brightly colored stick-figure-like emblem against an otherwise blank screen. To get started, you have to move the cursor to any edge of the screen to bring up a panel-like border on all four sides.

You can read some basic documentation at the OLPC wiki, or just charge right in. Curious about the system's discoverability, I charged in. Seven icons that I recognized immediately as application launchers inhabit the bottom panel, three system buttons sit in the upper right corner, and four cryptic circular buttons sit on the upper left.

The apps include a Web browser, a chat client, a "memory" game, the PenguinTV feed reader, Abiword word processor, TamTam music synthesizer, and Etoys, a multimedia authoring tool aimed at kids. The browser, feed reader, and word processor are straightforward and simple to use. Sound does not appear to work in this VMware image, so I could not use TamTam or the memory game, which relies on audio.

Etoys appears to be Flash-like in its goals, but the current version is so rough around the edges that -- especially when combined with the sluggish emulated interface -- it is difficult to do anything. I hope to take another look at it under better circumstances.

The chat client appears to be geared for talking with other OLPC laptops, which are set to discover each other when they are in range, forming ad-hoc networks. Consequently it too is of little use in the emulation environment.

Sugar: Not just for kids anymore

What we do have is the chance to see the Sugar interface at work -- and it is certainly unique.

Browser. Click to enlarge

For starters, all apps run in full-screen mode; there are no "windows" except for transient dialogs for opening and saving files. Next, each instance of each app is limited to one view -- that is, in order to open multiple Web pages or Abiword documents at once, you must launch the appropriate app more than once. Presumably this is done for simplicity's sake, which may be an important factor for kids who haven't grown up using the Internet from the cradle.

Likewise, almost all UI elements are in black and white (necessitated by the laptop's black-and-white display mode), and all are purely symbolic and visually simple. There are tooltip-like pop-ups (in English on this image) for many visual elements, but clearly the goal is to make the interface as language-independent as possible. While that's an excellent goal, I doubt that many kids will recognize the rough silhouette of Tux the penguin, back to the viewer, watching a television set, and understand that it represents an RSS reader. That is a general problem for iconographers, though, and not limited to OLPC or Sugar.

Similarly, I could not decipher the meaning of the cryptic circle buttons in the upper left corner without resorting to the wiki documentation. I quickly found that the one-dot circle brings up the application switcher, but the functions of the three-dot and eight-dot buttons aren't obvious. The wiki documentation says that the eight-dot button shows all connected OLPC users in the ad-hoc network and what they are doing, and the three-dot button shows only "friends." The rectangle button brings up a shared whiteboard app through which you can post notes visible to everyone on the network. Perhaps those features would be easier to discover while working in a network of other OLPC computers, but I find the choice of symbols a complete miss.

More apps are in the works; at the OLPC wiki you can see screenshots of some, and detailed information on a few. Apparently porting the interface of the apps is still very much in progress. The Web browser has a gray toolbar identical in look and feel to the system panel, but Abiword still uses vanilla GTK. I found it interesting that the wiki documentation has to warn users about the likelihood of getting confused between the browser toolbar and the system panel -- a troubling sign.

The wiki also tells you how to leave the Sugar interface and get to a bash prompt so you can poke around the system. Supposedly Alt-Shift-F11 will start a terminal application without shutting down Sugar, but I couldn't get it to work in VMware Player. I could shut down Sugar with Ctrl-Alt-F1, though in VMware Player you have to use Ctrl-Alt-Space-F1 or else VMware Player will intercept the keystroke as its own "release input" command.

Browsing around the filesystem from the command line, you will find a fairly full Linux system, including text editors and the basic command-line tools you need to make changes to the system. As yet there's no package management system like RPM or dpkg.

If you want to see what all the lucky children in developing nations will be getting to play with when their OLPC computers arrive, but you don't want to deprive them of an actual laptop, check out the system through a virtual machine image. It is interesting, after all the media attention the project has received, to be able to test out the software firsthand.

Click Here!