Previous Entry Share Next Entry
Exploring New Technologies
cananian

Last Monday I rejoined One Laptop Per Child as Director, New Technologies. My mandate is hardware and software for the XO-3, OLPC's upcoming ARM-based tablet computer for education in the developing world. The new machine should be lower cost, lower power, more indestructible, more powerful, and potentially more expandable than ever. There are about two million machines in the XO-1 family (XO-1, XO-1.5) in the hands of kids today. The XO-3 will build upon this impressive foundation to reach further into the poorest and least-connected regions of the world.

I will kick-off my work with a series of four week-long sprints between now and eduJAM Uruguay to investigate a number of possible directions for the educational software stack on the XO-3 tablet. On the XO-1—series machines OLPC ships Sugar, an impressive collection of educational software developed by Sugar Labs. How can we best keep the best of Sugar while yanking the UI forward into a touch-friendly tablet world?

  1. This week (April 4-8) I'll begin by working on a port of the GTK3 UI library to Android. The GTK3 library contains touch support missing from the GTK2 library on which Sugar is currently based. The end goal here would be a full port of the Python/GTK-based Sugar APIs, running on something like the Honeycomb Android OS. Our existing educational activities could be ported to the new APIs without too much difficulty, but we'd largely use the existing Android OS facilities instead of the parts of Sugar concerned with low-level system management. To clarify: this is a preliminary exploration—we haven't decided to base the tablet software on Android (or anything else) yet.
  2. The next week brings a new direction. During the week of April 11-15 I will start porting Python/GTK3 to Chrome or ChromeOS via the Google NativeClient plugin. This path would result in activities which more fully integrate with web technologies—even in disconnected regions of the world. On desktop machines, Sugar activities could be run inside the Chrome browser, while ChromeOS (or another embedded OS running chrome/webkit) would provide the system management functions on tablet machines like the XO-3. As with the Android port, this is an exploration, not a definite software direction.
  3. The week of April 18-22 I hope to focus on mesh networking. This has a somewhat checkered history in our deployments; I hope to identify the remaining roadblocks and map a way forward to make this a flagship feature of the XO-3 software.
  4. The week of April 25-29 is for the existing Python-based Sugar codebase. In order to continue moving forward, it needs to migrate to GTK3, gobject-introspection, and some other key enabling technologies. I believe it would also benefit from language-independent APIs and better modularization to allow a more incremental migration path.

The following week is Conozco Uruguay and the Uruguay EduJAM where I'll present my progress on these initial exploratory projects and discuss the path ahead with the wider OLPC and Sugar communities. Clearly, a week each is not enough time to finish any of these projects! But the focused effort should help to better identify the promise, roadblocks, and challenges in each of these paths, which then in turn will help us to plan the future.


  • 1

Re: Why not the others?

These are just the first four explorations, although I will admit that they are roughly priority-ordered. OLPC does have a commitment to openness, both for pedagogical reasons as well as for practical reasons relating to our global deployments and price sensitivity. Royalty and licensing considerations rule out things like Windows 8 or Windows Phone (we need tablet support, which isn't present at an acceptable level in Windows 7).

Jolicloud is cloud-based (it's in the name!) which doesn't play well with out disconnected deployments.

We have looked at MeeGo, but it's business future is deeply uncertain at the moment.

Our current software stack is based on Fedora. That's obviously getting a lot of attention as well, since we've got a large investment in it already.

WebOS is something which I haven't yet looked at seriously. If you want to make a technical argument about its advantages, I'd be willing to listen. I don't think it's open, and I'm not ever sure a third party can license it from HP. Those are two big strikes against it.

Re: Why not the others?

My question was really about considering only Google's tablet OS and not any the other's (HP's, Nokia's, Apple's, RIM's, ...). However, as you saw by yourself, I'm not very good at mentionning what these other tablet OS are ;)

I don't have any specific argument to make for WebOS apart from the fact that the press I've read about it was always good. Not sure either if you could licence it and how much that would cost you. But isn't it the same for Google? If the porting to Android is successful and it is deciced to turn Sugar into a set of Android apps, you'll have to get a license from Google to run Android on every XO-3, won't you ?

I agree that MeeGo could have been an interesting option, being a free OS you can build upon just as you do now with Fedora. But its future is indeed uncertain :-/ Would there be other free tablet OS around ?


Re: Why not the others?

I'm always interested in pointers to new directions.

Android licensing is discussed here: http://en.wikipedia.org/wiki/Android_(operating_system)#Licensing

No license required as long as you don't use the android trademark or Google's closed-source apps.

Re: Why not the others?

Ok, you just convinced me that Android deserve a first position in your investigation points - I'm curious to see what will come out of it.
I did not know about the licensing conditions, so sorry for the uneducated questions and thanks for your discussion :-)

  • 1
?

Log in

No account? Create an account