OLPC software task list

Introduction
OLPC will need to establish software work groups as general framework to enable the successful deployment and use of the One Laptop per Child (OLPC) initiative. Most of these work groups will have national counterparts that may vary in how they choose to prepare for and manage the program in order to take advantage of local strengths, skills, resources, culture, and strategic directions.

There is some natural overlap of workgroup missions so naturally they will have to remain coordinated. A coordinating body that includes representatives from each workgroup should meet on a regular basis. OLPC is unique. Adoption of universal access to connected computers for education presents opportunities previously virtually impossible. Serious thinking and creativity can bring widespread social benefits. By being open to innovative ways of thinking combined with an understanding of local conditions, the workgroups can contribute mightily to OLPC success.

The critical success factors include creating:
 * High quality educational examples of OLPC use
 * Conditions for the development of people and ideas
 * Mechanisms for the spread of good ideas and tools

Fostering the development of the early adopters and helping their ideas and examples to spread are key. As OLPC is a multi-national effort, each nation does not have to invent everything for itself. They can and should learn from each other. The technology itself facilitates the spread of the ideas and examples. There also will be the workgroup meeting at MIT in March, 2006 to help facilitate this process.

A computer is only as useful as the software that runs on it. The OLPC will come with certain general purpose software available (e.g. browser, word processing, utilities, etc.). There also will be several types of software for learning that take specific advantage of computers (e.g. Logo, Squeak, Scratch, etc.). A major decision was to base the OLPC on open source software. This provides countries with the freedom to decide for themselves what to place on the machines.

The task of the software workgroups is to determine what principles to follow and what mechanisms to put in place to provide widespread access to high quality educational and general software for children and their families. The taskforce also needs to analyze and make plans for any needed localization. Rather than re-invent the wheel, the workgroups can take a strategic view and adopt high quality software developed elsewhere, localize at the level required (whether for language, local content, or local culture), and develop new software to fill in the gaps. In this way overall costs can be diminished.

Moreover, the software workgroups can take a strategic view towards industrial development by fostering a positive climate for local developers to create new software, tools, and content for digital media. Software that truly facilitates learning and that utilizes the best of digital, computational environments (that is, that they are expressive, dynamic, multi-modal, collaborative, visual). This workgroup will need to coordinate extensively with all the other workgroups as the software is a key component towards the success of every group. The software group also can study how to best use the emerging connected computational infrastructure to further other social goals.

OLPC Software Task List
At its most basic, we need: an operating system; a web browser; an eBook reader; and some other base-level utilties, such as audio recording and playback, video playback, word processing, tools for drawing, etc.

With 500 MB of flash memory, and 128 mb of RAM, the $100 laptop will not be tied to a specific set of software or content. It will have the flexibility to change with the requirements of the student. Individuals will inevitably find individualized uses; certainly local, regional, and national requirements will drive much of the base configuration.

Kernel
The responsibilities include base device support, power management, memory and OOM management, flash file system, Athleros driver, X EXA device driver, distributed file system (e.g. Coda).

Who: Jim Gettys, David Woodhouse (JFFSn), Macello Tosatti (general help), Maricio Lin & Fabritio Sampsa (Nokia, OOM), X driver (AMD & Tungsten Graphics (?)), Satya (?) & people to be hired.

Base System Environment
The responsibilities include derivative distribution repackaging, base libraries, "standard" out of the box applications and desktop environment (e..g. window management, application launcher, file browser, system configuration). Internationalization and localization technology, accessibility technology all belong here. Mesh networking power aware networking belongs here.

Who: Jim Gettys, Mako Hill, Dan Williams, David Zeuthen, Marco Gritti, Phil Blundel (?), Owen Taylor, Mathew Allum(?)

Network Environment
The responsibilities include software services such as backup, software distribution, email, web services, VOIP, IM, printing, etc. Additionally, services for schools themselves belong in this group (e.g. administrative software). There are also non-software-related issues this team will confront, such as regarding regulatory regimes, spectrum availability, use of "universal access" funds, carrier participation, etc.

Who: Michail Bletsas, Dave Reed, Demi Getschko

Localization and Universal Access
The responsibilities include fonts, translation, etc.

Quirk: Squeak 3.8 has no clean Unicode support /me guesses Unicode is mandatory (Santiago Gala)

Who:

Educational Software
The responsibilities of this group include selecting suitable educational software, (with an understanding of memory consumption of the software). Ebook and book authoring technology belongs here. Other issues include teacher preparation, migration of exisiting content, a framework for new content development, school-server technologies, a "Kids Corps" for maintenance.

Who: Walter Bender, David Cavallo, Seymour Papert, Brian Smith, Alan Kay, K12LTSP(?), Mitchel Resnick, Roseli de Deus Lopes

Community Formation
OLPC needs to foster communications between communities: the project must be a community of communities to scale. OLPC server infrastructure is being established to support these roles, which includes email, bugzilla, wiki, project hosting, SCM systems, etc.

Linux community engagement
Engaging the Linux community overall is very important. Memory consumption is an issue in much open source software, due to sloppy programming. We should be providing examples of best practice: the more that these practices are internalized into general open source community, the better.

Networking community engagement
The global connectivity of tens of thousands, growing to of order a million schools is a major challenge of network logistics. We must help spark the involvement of networking people all over the world to successfully scale to this level.

The built-in mesh networking capability of the OLPC provides new means for local networks. For these networks to connect to the whole internet and worldwide web, plans must be made to enable high-bandwidth access. The task of the Networks workgroup is to plan for universal access to high bandwidth connectivity over time. The idea is to:
 * set up optimal global and local networking
 * use the network for upgrading and maintaining the system
 * create new platforms and services for collaboration
 * use the network for ongoing teacher development
 * use the network for student peer-to-peer learning opportunities, creating communities of learners and communities of practice
 * development and distribution of traditional and newly enabled digital content
 * create a sustainable basis for continuous educational improvement

National situations will vary depending upon a variety of factors, including existing levels of development, geography, existing presence of cable and satellite access, and so on. This not only looks downstream at the OLPC communities, but also upstream towards government policies regarding bandwidth, frequencies, and so on.

The Networks workgroup will collaborate closely with the education workgroup so that deployment of the laptops has optimal connectivity possibilities. While productive use of the laptop does not require outside connectivity, obviously connectivity enhances its value. It is possible that a mixed-mode approach will be necessary at least in the short term. That is, providing high bandwidth connectivity to all areas immediately may not be feasible. Yet this should not prevent distribution to areas that cannot connect as they may present some of the more pressing educational needs. The workgroup should strive to enable all areas to do as much as possible. This may require local adaptations to add value through providing periodic value to the OLPC mesh networks via a new store-and-forward capability.

In addition to global access, it is essential that the workgroup prepare a dissemination plan for software distribution, upgrades, and maintenance. It is also essential to work with the education workgroup to develop and localize new collaborative environments for educational, technical, and social purposes.

Eductional community engagement
Since OLPC is an educational project, educational community engagement is fundamental. The overall objective is to maximize the potential of one-to-one access to connected computers to dramatically improve education for all. The task of the Education workgroup is to comprehensively prepare for the successful deployment of the laptops by creating an evolving educational action plan to take advantage of the learning activities that will definitely emerge.

The education plan should cover all levels, from basic improvement through access to computers and connectivity, on through dramatic improvement by enabling the development of collaborative clusters of expertise. The basic level includes ensuring the localization of existing content to be accessible in local language on the OLPC. This will enable the basic e-book functionality. However, we emphasize the need for the development of new content that takes advantage of the immersive presence of computers to facilitate learning of important material that is difficult to comprehend without computational technology. In particular, this implies using the computer as a creative, constructive, collaborative device. We also emphasize the need to plan for on-going teacher and educator development.

Deployment
Unless the country will immediately supply laptops for every child, decisions must be made about how to roll out the computers until the goal of one laptop per child is reached. The immersive nature of one-to-one computing is essential to making dramatic improvement in education. Therefore, we strongly recommend distributing computers on a one-to-one basis throughout an entire region, and not to sprinkle them in low density throughout the country.

Choosing the order of districts for receiving the laptops is not an easy decision. It is our experience that the greatest gains can be made when the initial sites set strong exemplars for use. This is possible through selection for high likelihood of good educational practice with computers as well as by addressing critical social needs. One tactic that has worked well is to invite local communities to propose what they will contribute in order to be chosen. This does not imply funds; rather it often is support by parents, or the offer to give teachers time and support to learn how to successfully use the computers, or plans for innovation in education enabled by the computers.

Teacher Development
The more teachers become comfortable with using computers, the better they will be able to function. While this process takes time, experience has demonstrated that it is possible.

Digital Content
It is strongly advisable to begin to develop new content that takes advantage of the widespread presence of computers. Rather than just re-hosting existing content on the computers, new content and new approaches are possible. It has been our experience that certain limitations in the learning environment that seemed intractable can be ameliorated not just through new methodological approaches, but also through new content enabled by the technology.

Collaboration
The OLPC enables new, more customized environments for learning. New communities of learners can be enabled because every child will have a laptop and the laptops will have connectivity. The borders of the classroom walls are removed and learners can get information, work with others, pursue their interests and passions, and work in ways previously not possible. How to support this, what tools are needed, how to re-arrange the curriculum, are all areas for serious study.

Strategic Research
OLPC is new. Very little experience exists regarding how to use one laptop per child effectively. There is virtually no experience with this in developing countries. Thus, it is highly recommended that an ongoing panel of thinkers study, reflect, discuss, and propose based upon what is working, what needs improvement, and what new possibilities are enabled. It is also highly recommended that this group be broad-based, not limited only to those in the education field. We propose including other intellectuals, artists, civic leaders in order to provide a diversity of experience and expertise.