Check out the new USENIX Web site. next up previous
Next: Acknowledgments Up: GNU Mailman, Internationalized Previous: Examples

Future and Related Work

Internationalized Mailman servers are in deployed use around the world, and many of the earliest related bugs have been satisfactorily fixed. However the basic architecture used by Mailman may undergo additional refinement in future releases. In particular, Mailman will be rewritten to use Unicode internally for all human readable text. The templates used in Mailman will likely be redesigned to use something like Zope's ZPT, which allow finer grain control over the evolution of the templates.

The experiences learned during the Mailman internationalization effort have been carried forward to the Zope 3 internationalization effort [Zope3]. Zope is a web application server and framework, also written in Python. Zope's internationalization efforts are made more complicated by the fact that it is a framework supporting multiple applications rather than a single application. This means that while Mailman needs only a single application domain, Zope may have multiple simultaneous domains, even in a single translation context. Zope therefore needs a way to record the domain that a particular message has come from so that it can be looked up in the proper catalog at output time. The solution has been to create a MessageID object, which is a subclass of string that contains the domain as an instance variable.

Also, in Zope few translatable messages are found in Python source code. The predominant carrier of human readable text is the ZPT. Thus the mechanisms described above for simple interpolation and global translation contexts aren't appropriate for Zope. While Zope's internationalization efforts are built on the Python tools developed during Mailman's internationalization, they will ultimately improve or expand on these tools.

As part of the Zope 3 internationalization effort, a Translation Web Service (TWS) has been proposed [ZopeTWS]. While largely only science fiction at the time of this writing, the TWS is a vision of how to coordinate the project management issues related to internationalization. One of the most difficult ongoing problems for an internationalized project is coordinating the output of the software developers with the translation efforts of the language teams. While the Translation Project attempts to automate and coordinate much of this process, the TWS plans to take this aspect a step further by providing a global web service for truly collaborative translations. With the TWS, a project manager could upload message templates for particular domains, and language teams would translate messages at their own pace. When a new version of the software is prepared for release, the project manager could then download a snapshot of the current state of the various translations for the project. The key advance with the TWS is that once the infrastructure is in place, the software developers are no longer bottlenecks in the translation effort, and coordination among translation team members is automatic.


next up previous
Next: Acknowledgments Up: GNU Mailman, Internationalized Previous: Examples
Barry Warsaw 2003-04-08