OLPC, Microsoft, and Intel

The Times Online has a really interesting article up on the One Laptop Per Child initiative and Microsoft’s and Intel’s responses to it. It’s a great read, and provides an interesting window into some of the skulduggery that the corporations engaged in when threatened by the vision of a cheap laptop for the developing world.

At the World Economic Forum in Davos in January 2005, Nicholas Negroponte, supreme prophet of digital connectivity, revealed a strange tent-like object. It was designed to change the world and to cost $100. It was a solar-powered laptop. Millions would be distributed to children in the developing world, bringing them connection, education, enlightenment and freedom of information. The great, the good, the rich and the technocrats nodded in solemn approval.

And then some of them tried to kill it.

XO Laptop 2.0

Nicholas Negroponte announced the next revision of the XO Laptop, the low-cost laptop designed by the One Laptop Per Child initiative for developing countries. The upcoming version eschews the typical laptop form factor, instead taking cues from the iPhone and the Nintendo DS to create a unit that opens like a book, has touch screens that can serve as keyboards, and work either in a laptop configuration or wide open as a big display. Here are a couple prototype images:


Laptop Configuration

Book Configuration

More information is available at the BBC and on YouTube.

Archimedes: A Big Enough Lever

This morning on the way to work, I was thinking about the critics of the One Laptop per Child program. Lots of people maintain that, rather than sending a $100 laptop to kids in third-world countries, we would do far better to send them $100 in food. And to a degree, I think they’re right — laptops are of no use to a child who is starving. However, there’s a crucial difference in the sort of help these two options provide: food is finite, and will be used up, past which it provides no ongoing benefits (except perhaps a bit of fertilizer). A laptop has ongoing utility and can ideally open up altogether new opportunities for the person who is connected to the global community through it.

In The End of Poverty, Jeffrey Sachs demonstrates that people can climb the ladder out of poverty once they’re on it, but often need help to reach that first rung. (Reading this book is what made me a big fan of microlending in general, and later Kiva in particular: it’s an excellent way to help people to get their foot on the first rung of the economic ladder and to pull themselves out of the morass.) So how could the availability of the Internet and initiatives like OLPC help to achieve that end? Or, put another way, how can the XO laptop be worth more than $100 to the people who receive it?

It can turn them into programmers who can be paid for their work.

The idea would be a central service — let’s call it Archimedes — which would consolidate requests for discrete bits of code and allow programmers to complete those requests for a cash reward. The requests would include standards for completion and what the client is willing to pay for it. The system would be designed to make the transaction as friction-free, lightweight, and unambiguous as possible so that doing small-scale contracts would be easy.

Here’s what it might look like from the client’s side:

  • Let’s say I’m working on Bibliofile, my application for tracking what books I’ve read. I decide that I want to add a new statistics page that shows monthly trends in my reading, but that writing SQL queries has never been my thing. I could do the research, learn how to do what I want, and write it up myself, but that’s for chumps! I’m an Archimedes client!
  • Because I know what I want this section of code to do, I write the necessary unit tests using the standard testing frameworks. I also add a specially-formatted comment in my code that indicates that I’m putting it out for contract, how much I’m willing to pay for the work, and any other special directives (such as “only make this available to programmers who have completed 5 or more jobs already” or “If nobody has completed this contract within a day, increase the price by $5 every 24 hours until it’s finished.”). Then I check it in to my source code repository.
  • I’ve already configured Archimedes to keep an eye on my repository, so it notices my special comment and automatically creates a new request for work on the site which can be seen by any programmers on the site looking for work. They can look at the language, the task, and the amount being offered, and decide whether they want to work on it. If they do, they can check out the change from the DMZ — a special source code repository that duplicates information from my repository.
  • If the programmer has completed the task and has all the unit tests passing, he checks his code into the DMZ. Archimedes then builds it and verifies that the unit tests are passing. If so, it sends me an email with a link to the code diffs in the DMZ. I can look at the code and verify that it’s not just feeding the tests the values they expect or adding a back door to my program. If it passes muster, I click the “Accept” button.
  • When the submission is accepted, several things happen: the programmer is paid the amount that I offered; the submission is merged from the DMZ into my code base; both the programmer and I receive a reputation point to show that we’ve completed a transaction in an agreeable manner.

I think the use of automated acceptance tests and the ability to generate requests for work without leaving one’s usual development environment would help to make this an attractive prospect for developers who want to extend their reach. (This seems very much in line with the Four Hour Work Week way of doing things.) And the ability to take on programming tasks with little ramp-up or commitment for pay would make this an attractive prospect for programmers, especially those who are time-rich but cash-poor.

There are lots of details and refinements possible, but I think the basic idea has some good potential. What do you think, sirs?

XO Laptop: First Impressions

We got in our XO Laptop, the little unit that the One Laptop Per Child organization has begun producing and making available to poorer countries for less than $200 per laptop. (Read David Pogue’s article for a quick introduction to the concept.) Here are my first impressions after fiddling about with it for an hour or two:

  • Holy moley, it’s tiny! Somehow, like celebrities, it seems even smaller in person than in pictures.
  • It feels very much like it’s engineered with kids in mind. The interface is straightforward, rewards exploration, and doesn’t rely much on the habits that adults might have developed in computer use.
  • The keyboard is much more responsive than I’d expected, though it’s definitely awkward for touch typing with adult hands. High speed hunt-and-peckers will do better here.
  • The selection of built-in applications is wild and wonderful, with a strong leaning toward things that let kids create music, software, reports, etc.
  • I haven’t yet been able to figure out how to have multiple browser sessions open (like tabbed browsing or multiple windows) without launching several instances of the Browse app.
  • I love that the mic jack can also be used for other analog inputs, making it easy to connect up things like thermometers, PH gauges, accelerometers, etc.
  • This is clearly a machine purpose-built for curious young minds. Having some time with it has convinced me that Intel was shortsighted to pull out of this initiative, as no laptop running Windows XP is going to be as rewarding for kids to explore. On the other hand, American consumers who are used to being able to get things done with a minimum of fuss won’t be as happy with it.
  • Applications do launch a bit slowly, though they’re pretty snappy once they’re up and running. No crashes or unexpected application exits yet, though admittedly we haven’t pushed it too hard.
  • The idea of the Journal is a really interesting one that may reach mainstream computing eventually. Instead of saving documents in a file system, the computer just tracks what you’ve been up to lately, letting you mark the most important stuff to be saved. You can then search through that record chronologically or by search term and pull up old sessions, right where you left off.
  • Collaboration is built in at a very low level. Nearly all the built-in applications allow you to share what you’re working on with others who have XO Laptops and to work on those things collaboratively. In addition to the obvious cooperative uses, this will be useful in classrooms without projectors where the teacher wants to demonstrate techniques or sites to students.
  • The Browse application uses the Gecko engine, the same one as Firefox, so all those fancy web applications like GMail and Facebook work just fine on it.
  • The screen switches into a high-resolution (200 dpi) black & white mode when you turn down the backlighting all the way. Combined with a button that lets you rotate the information display in 90° increments and the ability to fold the screen back down over the keyboard, this makes a dandy device for reading texts. (When in black & white mode and using a reading application, battery life should approach 24 hours, thanks to a passel of nifty technical tricks designed to keep power draw at a minimum.)

For its intended purpose, it’s a brilliant piece of work. With a connection to the Internet available, it has the potential to be a magnificent educational tool for students who otherwise might not have access to much of what the modern world has to offer.

So, congratulations, OLPC folks. You’ve done a great job, and I wish you the best of success getting your vision out to the rest of the world.

Give One, Get One Starts Today

Just a reminder: The One Laptop Per Child initiative starts its Give One, Get One promotion today.

The deal again is this: you plunk down $400, which pays for two XO laptops. One goes to a child in a developing country, one goes to the child in your life (who might be you)!

This promotion only is available for two weeks, so if you have interest in helping and/or interest in the XO Laptop, donate now!

Give a Laptop, Get a Laptop

I’ve been intrigued by the One Laptop per Child initiative for several months. Some of my interest is philanthropic, though part of me suspects that if we’re really interested in helping the youth of the planet, these funds might better go toward clean water, health care, and more traditional education. The bigger reason that it has caught my eye is technological: in order to meet their goal of creating a flexible, low-maintenance, hackable laptop that can be manufactured and sold for $100, the initiative is doing a lot of really interesting work on both the hardware and the software. If you’re interested in the details, this tech talk is a good starting point.

So, when I heard on NPR that they were going to have a Give One Get One promotion starting in November, my inner philanthropist held hands with my inner technologist and skipped together up to my brain and kicked the living cheese out of my inner spendthrift.

The deal? You plunk down $400. They send you one laptop, and send another to a child in some far-off place.

“Wait a minute!” I hear the more mathematically astute of you shout. “That’s $200 per laptop! What’s up with that?” Well, that’s the rub. There haven’t been enough governments placing orders for the computers to get the economies of scale up to the point where the costs drop to the $100 target. So, by allowing people in the US to place orders, they increase manufacturing volume, causing prices to drop as the expense for specialized components is spread over more units.

I’m really interested to see how this works out for them, as well as to get my hands on one of the little laptops and see what their capabilities are like. At the very least, I expect it to be decent for typing papers and doing Internet research — two vital tasks with 5 students in the house currently!

More to come in December when we get our hands on one of these things and put it through its paces.