Peter Sbarski17 August 2007, 6:09 AM
The One Laptop Per Child project aims to bridge the digital divide. We take a look at the hardware and the software and tell you how to get OLPC's fascinating UI 'Sugar' running on your computer.
The One Laptop Per Child (OLPC) project aims to deliver cheap subnotebooks to children around the world. The project has met with appreciation and enthusiasm around the world and, now, countries such as Cambodia, Costa Rica, Libya, Pakistan, Peru, Rwanda, Tunisia and Uruguay are participating in it.
It has been reported that Nigeria alone has ordered a million OLPC laptops (in fact, some Nigerian children have put a few preview units to good use already). These notebooks, manufactured by Taiwanese manufacturer Quanta, should begin mass distribution by October 2007. The total order at the moment stands at three million.
OLPC World Map: Figure 1 shows a world map of the countries participating in the pilot. Green: pilot countries; Red: post-launch phase countries; Orange: those who have expressed interest; Yellow: Those seeking government support. |
Although the whole project is interesting to analyse from different angles (educational, political, etc) in this article we will look at the hardware and the software side of things.
The Hardware
One of the main objectives behind OLPC is to deliver durable, water-proof, inexpensive notebooks that consume as little power as possible. One of the most expensive and fragile parts of a notebook is obviously the screen.
The current revision of the OLPC notebook comes with a dual-mode 1200x900 7.5 inch TFT LCD. It supports two modes: monochrome and backlit color. The monochrome mode is used to conserve power but can only be used in sunlight.
The backlit color mode, on the other hand, can be used in low light environments but it reduces the effective resolution of the LCD to 800 x 600. The power consumption is about 0.1 Watts in monochrome mode and 0.2 to 1.0 Watt in backlight mode.
The CPU is an AMD Geode LX-700 with a clock speed of 433MHz. The processor supports basic Athlon instruction sets such as MMX and 3DNow!
256MB of RAM (DDR333) is packed into the notebook as well as a gigabyte of flash memory. The graphics controller is integrated.
An optical media drive is not included; however, there are three USB ports and an MMC/SD card slot. Wireless networking is provided by a Marvell Libertas 802.11 b/g chipset. There is a dual adjustable antenna for diversity reception.
An Analog Devices AD1888 audio chipset (AC97 compatible) is provided as well as stereo speakers and a microphone. There are Line-out and Mic-out jacks and an integrated Omnivision OV7670 VGA (640 x 480) camera.
OLPC Laptop |
A keyboard (70+ plus keys) and touchpad, which supports written-input mode, are included. As it stands the dimensions of the notebook are approximately 242mm x 228mm x 30mm. It weighs about 1.5kg.
The OLPC organization claims that the notebook will survive harsh environmental conditions. The OLPC hardware specification wiki page notes that, "When closed, the unit should seal well enough that children walking to and from school need not fear rainstorms or dust".
Obviously getting these notebooks ultra-resilient is important given the conditions they will be placed in. The plastic walls are 2mm thick.
Another interesting aspect of the notebook is its Display Controller Chip (DCON). It allows the screen to stay active while the CPU is suspended. The wireless chipset is also capable of forwarding packets while the CPU is inactive.
The OLPC organization aims to produce these laptops at $US100 a pop by 2008 (though current pricing is $US135 - $US170 depending on the quantity ordered.)
The Software
The OPLC software consists of Fedora (the open-source version of RedHat Linux) running X Windows coupled with the intriguing Sugar User Interface.
The system comes with applications which are called "activities". A word processor, a calculator and a web browser are examples of activities. The full list of available applications, and the ones being currently developed, can be found here.
The Sugar UI is fascinating. There is an obvious focus on simplicity, sharing and networking. The underlying desktop metaphor is completely different to what we are used to. Instead of recreating the office/desktop feeling the designers felt that it was important to establish a sense of community, cohesion, to connect people and empower collaborative projects.
As mentioned in the OLPC Human Interface Guidelines "the mesh network is a permanent fixture of the laptop environment and is represented explicitly in the interface" which consists of four levels of views: home, groups, neighborhood and activity.
The user and the activity circle |
The home view serves as a starting point. It shows an icon of the user in the middle of the screen with a surrounding activity ring. The activity ring indicates which activities are loaded. Each activity occupies a section of the ring, like a piece of pie.
Interestingly, the size of the section shows how much memory the activity is taking - in proportion to the rest of the ring (ie. total memory). As an activity consumes more memory its section of the ring grows, thereby immediately conveying that there is less memory available for other applications.
The groups view shows connected friends, peers and teachers. It's like a buddy system where the user can add or remove friends. There are some special classes of groups which are immutable (e.g. class group) and there are dynamic groups which can be created by users. The official OLPC wiki explains why groups are useful:
"Groups have several advantages. First, it allows the children to view their friends, classmates, and other groups, and allows them to freely chat with them as well. Additionally, each group will have its own private Bulletin Board where members can post notes and share Objects. Finally, all of the members of the selected group -- a child's friends, for instance -- receive invitations whenever the child starts an activity from the Groups view, making collaboration implicit."
The neighborhood view allows the user to see his local mesh. This view shows users clustered around the activities they are undertaking. This view allows the user to search for and join interesting activities.
Neighborhood view |
The activity view allows the user to open and navigate applications. This is a single window-like environment so there is no window based multi-tasking, i.e. it's impossible to have multiple windows open and stacked at the same time. The user can have multiple activities loaded at once but only one can be used at a time.
For a more detailed analysis of this approach, called the Zoom Metaphor, check out this page.
The user controls sugar via a frame which is a border like menu subdivided into four sections. The top section of the frame controls the zoom metaphor. The user can use it to jump between activity, home, groups and neighborhood.
The bottom section of the frame is an activity launcher. It's basically a quick launch toolbar for applications. It also accumulates invitations and notifications.
The left section of the frame is allocated to "objects". An object can be an image or text so this is like a clipboard. Finally, the right section of the frame is for the "people". It displays which people are currently collaborating with the user.
Try it yourself
Now that you have a basic understanding of the way the Sugar interface works, you can experiment with the whole system on your own PC. Check out this link to find out how to download a copy of OLPC system and run it under VMWare.
Alternatively, download a LiveCD iso from here.
Finally, before we go, here is an interesting review written by a 12 year old child (yes, the laptop is underpowered but we've only just started!)