[IPython-dev] internationalisation and translation of ipython
fperez.net at gmail.com
Mon Aug 13 00:18:53 EDT 2012
On Fri, Aug 10, 2012 at 11:12 PM, Nicolas Pettiaux <nicolas at pettiaux.be> wrote:
> My first aim would be to setup the good framework for the translations
> to be easy and contribuable by people having languages skills but no
> developpement skills, reusing the platforms and tools that exists, for
> example the gettext suite of tools.
> Then I would like for example to have the menu bar and quickhelp in
> the notebook internationalized and translated. I could do the
> translations to French (my native language) and help with Dutch.
> I am not a highly skilled developper not internationalizer, but I
> would like to learn.
Thanks for starting the discussion here... As Aaron indicated (many
thanks BTW for that insight, it's *extremely* useful!), this is a
tough job, and one that is very easy to fall out of date. So I would
follow a few criteria in any attempt in this direction:
- focus only on localized, high-value targets: the notebook UI, the Qt
console UI, the magic docstrings and the main usage.py strings.
- I would, at least for now, leave the website alone: it's too
dynamic, and for better or worse people survive with a few websites in
English. We could add to the main website a summary page in other
languages, that we would not attempt to maintain in perfect sync with
the main site. This would serve as a reasonable explanation of what
ipython is to speakers of other languages, and would tell them what
parts they can expect to see translated and which ones they can't (for
- focus only for now on high-value languages that have a decent chance
of being maintained in the long run: Spanish and French. I understand
the value of other languages, but this is simply a matter of resource
triage and impact. For example, most Dutch/German/Scandinavian
languages speakers tend to at least read English very well, which is
not necessarily true in Spanish. If we get to a state where we have
these in really good shape, we can consider others. And before anyone
accuses me of Western-centrism: if we reach that point, we'll already
be doing better *than Python itself*, which has vastly more resources
than we do and whose docs aren't officially translated to any language
that I can find. So yes, it's western-centric, but that's simply the
reality we come from.
- If you want to take this on, you'll pretty much have to lead the
effort yourself. Other than providing you feedback by reviewing pull
requests, I'm afraid right now I have zero bandwidth for this, and
it's not something that has ever come up until now, so I suspect the
'available effort' from others may also be low. But it's also
possible that if you lead the way, others may join in and help, after
all this is the kind of task which, once the basic machinery is in
place, lends itself well to distributed maintenance even by people who
may not know how to code.
- it will be very important to focus on implementing this in a way
that is as unobtrusive as possible to the main development in English.
I know next to nothing about i18n other than 'use gettext', but I'm
sure that if the setup makes regular development in English
substantially more cumbersome, you'll get tons of pushback from the
main developers. Again, it's a matter of balancing priorities with
limited resources: people try to squeeze whatever IPython development
they can typically 'on the side' of otherwise very busy schedules.
That's why we insist so much on tools and workflows that are very
fluid (github, our very streamlined branch management, our tools/
directory, our website/docs setup that is now being adopted by others
in the scipy community, etc). Anything that brings friction to the
everyday work will be (rightfully) seen with very skeptical eyes by
the core devs. And given that ipython's focus is scientific work, and
that for better or worse scientific work pretty much *mandates* a
command of English (I know what I'm talking about: as an undergraduate
in Colombia in the early 90's, many of my *textbooks* were in English,
so we didn't really have an option), our English bias will remain
there for the foreseeable future.
I hope the above doesn't sound discouraging to you: I'm simply trying
to give you a realistic assessment of what will be needed, at least
from what I can see at this point, to make this happen. I'd rather do
that than give you a rosy but falsely encouraging picture.
In summary, I think it's a worthwhile task, and if you are willing to
lead the effort and make progress on it, we'll be delighted to review
your contributions. And obviously, if others on the list would like
to participate on this particular effort, by all means join Nicolas!
This is the kind of thing that may seem a bit daunting for one person,
but where if two or three people get together, significant progress
may happen before you know it.
More information about the IPython-dev