During a tutorial that Chris Blizzard gave at Linux.conf.au, there were quite a few interesting ideas and concepts raised that presented an interesting blueprint for Linux in the future.
The OLPC (One Laptop Per Child) project is in the enviable position at the moment of being able to change technologies and directions as they choose, with no rollouts and a lot of the work still to be done software wise. Free of the inertia that an existing product presents, OLPC can be fresh in its thinking and be a trend setter.
Python was originally the language of choice for OLPC but with the announcement of the open sourcing of Java, Blizzard said that the OLPC may move to Java as it is close to native speeds thanks to Java's jit (Just in Time) compiler and Python's interpreter being rather slow. One imagines that with the restricted hardware available that a slow interpreted language is the last thing you want, even if it is an exceedingly easy and powerful one. This is also the first impact I have seen from the open sourcing of Java.
Another interesting choice was that of using application bundles, like OS X, and not a standard linux packaging system. The reasons for this were that it is easy to install and delete, it is easy to share, there is no need for dependancies (because it is all in the bundle) and has an added benefit of removing the need for a centralised repository. If you think about children trying to use apt-get in the sub-Sahara, it makes sense to choose an application style that is decentralised and simple to use.
When upgrading the operating system, again packages are not used and this time an image based system is chosen. The benefit here is that the laptop can be reinstalled from the network and that if your friend has a working computer, why not use a copy of their OS? If only this kind of system had been available years ago to prevent reinstall anger!
What makes these choices far reaching is that if OLPC is successful, then the next generation of programmers will come from an environment that is Java based, uses bundles/images, and is ubiquitous. This is a vast change from the C based, package driven, fringe desktop that we live in today.
Latest posts
News and features
- Latest
- Popular
- Features
- Most Discussed
-
Browse safely in Internet Explorer
2010/01/25 11:35:44
-
2010/01/28 08:43:04
-
2010/01/22 11:02:54
Most popular tags
apple
attacks
browser
browsers
china
chrome
development tools
employee
enterprise software
extensions
filter
firefox
freeware
func
google
hardware
html5
human resources
internet
internet explorer
javascript
jobs
linux
market share
microsoft
microsoft office
mozilla
office
office 2010
open source
open-source software
operating systems
performance
productivity
security
software
tablet
toni bowers
tool
unix
video
web 2.0
windows
windows 7
What's on?
-
Broadband + home phone + PlayStation®3 in a single package price!




1
Pat Heyman - 25/01/07
And it's about time. PCLinuxOS is making some strides with their "remastering," but I've always thought that modern Linux distributions were a step backwards rather than forward. It's a shame that there is not more interest in projects like zeroinstall or Gobolinux.
» Report offensive content
2
The Badger - 25/01/07
"OLPC may move to Java as it is close to native speeds thanks to Java's jit (Just in Time) compiler"
And how much memory does the OLPC laptop have again?
» Report offensive content
3
Ymmv - 25/01/07
"The benefit here is that the laptop can be reinstalled from the network and that if your friend has a working computer, why not use a copy of their OS? If only this kind of system had been available years ago to prevent reinstall anger!"
Well, this was used in Domain/OS Apollo workstations: you could boot a diskless workstation from another one in the network. But OK, you could not install it on local harddisk. This back in 1988 (and even before).
» Report offensive content
4
psyco - 25/01/07
Python has a JIT/specialising compiler: Psyco
http://psyco.sourceforge.net/
It usually gives x4 to x10 speedup just by adding the import/call to psyco.
It only works on x86 compatibles, but this should include the Geode processor which the XO (OLPC) uses.
» Report offensive content
5
jython - 25/01/07
An even more interesting idea if the OLPC folks do move to a Java base: Jython, the Python interpreter written in Java. It interoperates with Java even better than the standard Python interpreter interoperates with C.
» Report offensive content
6
ikol - 14/02/07
Here can be used J2ME CDC hotspot VM,
the VM is 80% fast as main J2SE VM, with small footprint (2MB)
and can work in device with 2..10Mb RAM
see description of the VM:
http://weblogs.java.net/blog/mlam/archive/2006/11/when_does_javas_1.html
» Report offensive content