Archived Projects » Local Language support for OLPC/Sugarlabs


Sugar Learning Environment in Nepali

I believe that education, especially primary education should be in the native language of the learner. A foreign language as a medium of instruction and communication poses yet another barrier to the learning process, and takes away a great deal of the crucial cultural relevance from the learning material. As the lead of the SugarLabs and OLPC local language support (internationalization/localization) team, I tried to ensure that children get to experience and use software in their own native language.

Apart from being a fascinating way to become acquainted with different orthography and different cultures, this work has been a major lesson for me in FOSS community “management”, with more than 600 people actively participating in the translation community. Also, as a part of the localization efforts at OLPC, we added the “locale data” for three languages (Dari, Haitian Kreyole, and Pashto) to the GNU C library (glibc).
Usually the addition of the locale data is the first step for adding support for a language in GNU/Linux, and doing the hand-holding during the first babysteps of three languages in GNU/Linux-land has given me a deep sense of personal satisfaction. Moreover, I have been able to assist two other major educational projects, Etoys and Scratch get their software translated into a significant number of languages by helping them utilize the workflow and infrastructure that we use.

My responsibilities as the local language points-person for OLPC included creating and maintaining a smooth translation and internationalization workflow for the translators as well as developers, answering any queries they may have, providing guidelines to deployment teams and new translation volunteers, helping design new keyboard layouts, implementing relevant software components in the Operating System level as well as in Sugar, etc. I wrote most of the language related components in Sugar like the language selector in the control panel, which has the interesting property of letting one specify fallback languages, so that an Aymara user can get fallback Spanish translations in case the Aymara translations do not exist, in place of the normal fallback, English.

A crucial part of my work in this area was to identify ways in which we could lower the barrier to participation in the translation effort (we have been using “crowdsourced” translations long before it became adopted by the likes of Facebook and Linkedin). I wrote an article in LWN.net about possible ways to lower the barrier to participation while ensuring acceptable translation quality, by using Pootle, which forms the central piece in our translation infrastructure. In the summer of 2008, I also mentored a very bright and hardworking student, Julen Ruiz Aizpuru while he worked on Pootle for the Google Summer of Code program.

Articles

Translating software with Pootle (Linux Weekly News)

Collaborators

Xavier Alvarez, Rafael Ortiz, Chris Leonard, and innumerable volunteers from all over the world who did the actual translations.