[Server-devel] Translating Moodle - a sustainable approach...?

Martin Langhoff martin.langhoff at gmail.com
Sun Sep 21 21:47:58 EDT 2008


Hi Sayamindu,

I am preparing a Moodle package for the XS and looking a bit into
localisation strategies. Looks like Moodle and the XS software in
general is going to be rather different from the laptop sw
translation.

For this release of the XS I am going to not worry too much about
translations and focus -- it is a 'milestone' release, and I can
coordinate with local teams how to install the localisation packages
separately. For the next release (xs-0.6) I'd like to have a
sustainable approach.

In this email I will focus on Moodle, as a custom version of it will
be the main "UI" of the XS. Mediawiki - another large app I am
planning on packaging for the XS - has mostly the same issues around
l10n/i18n.

The Pootle approach - while good for Sugar apps, has several issues
for the XS software:

 - gettext has technical and performance problems running in
webservers -- part of the problem may have to do with how the
PHP-gettext extension is written - however, this problem has been with
us for a long time, and it is unlikely to be fixed in the short term.
Moodle and Mediawiki both use custom systems for their strings. No
successful PHP webapp I am aware of uses gettext :-/

 - These custom systems have slightly different ways of handling
string interpolation and plurals

 - Moodle has a large number of strings - ~10K (MW is smaller, I think)

 - Moodle has an active community in many languages, and an active
translation team. Of course, not all translations have good
coverage...

 - We will be customising Moodle extensively, so we'll want to
override some strings, as well as add our own strings.

It's also interesting to note that Moodle ships with its own "strings
editor" to make it easy to maintain translations (and contribute them)
:-) -- I guess it's what you have to do when you can't use pootle!

So my thinking at the moment is as follows...

- Get translators involved upstream, and contributing to the core
translation. As part of this, make it easy for them to use a vanilla
(unpatched) moodle, and give them some guidance as to what parts of
moodle we actually use so that they can choose to focus if their time
is (understandably) short.

- Give translators access to a custom moodle that
  - shows the modified pages (with a some notes as to where to focus
their attention)
  - grabs translation updates from upstream often (or can be told to
fetch them 'now')
  - lets them edit the overrides

All of this is naturally quite a bit of work to implement and to
maintain over time. Moodle has a lot of surface (lots of UIs, pages,
buttons, functionality) -- so this is a large task. However, I think
it is valuable as it will be the "face" of the school server that
users experience.

(Of course, the XS has many other services for the XOs but most of
them are "transparent" to the user.)

cheers,



martin
-- 
 martin.langhoff at gmail.com
 martin at laptop.org -- School Server Architect
 - ask interesting questions
 - don't get distracted with shiny stuff - working code first
 - http://wiki.laptop.org/go/User:Martinlanghoff


More information about the Server-devel mailing list