The Big Picture
Part of an article on Building a Multilingual Web Service Using the ACS, by John Lowry (lowry@arsdigita.com)
ArsDigita : ArsDigita Systems Journal : One article
Most web sites are in only one language, usually English. But there are
quite a few sites that have translated their content into multiple
languages. For example, Adobe provides some articles in five languages
including Japanese
and Swedish.
However, there is no dynamically-generated content that we can see on
these pages. Dynamic content is critical for a successful web
service -- we wrote a
book that explains why. With pages that are generated by a script
that runs for each request, you can allow users to submit their own
content, serve personalized content and display data obtained from
remote servers. A well-designed dynamic web site allows users to get
the data they need and accomplish tasks in a quick and efficient way.
At this time (July 2000), there are very few examples of large-scale
web sites that display multilingual content from dynamically-generated
pages. One exception is Yahoo, which displays financial data in around
15 languages including German and Spanish. When we last checked,
the multilingual support for dynamic content does not stretch much
beyond displaying details of the currently logged-in user. For
example, you cannot view your stock portfolio in more than one
language. If as proficient a web site developer as Yahoo is not able
to provide seamless support for multiple languages, it is clearly a
considerable challenge.
What are the technical and organizational hurdles that have to be
overcome?
- Data complexity
The data model of a multilingual web site will be substantially more
complex. All language-dependent columns in each table need to be
translated. We need to build tools for translating new data before it
gets made available on the web site. It takes longer and costs more to
develop and test such a site. Reliability and consistency will likely
be lower.
- User interface
It is considerably more expensive to design a user interface with
pixel-level positioning. The text in different languages will display
differently depending on word lengths and character sets. A rule of
thumb is that text length can vary by 30 per cent, but in extreme
cases it can be 100 per cent.
A multilingual site must create new versions of any graphics that
contain language dependencies. The writers must avoid ambiguity,
colloquialisms and use good grammar. Each language has its own syntax
and grammar. This can lead to problems with run-time concatenation of
text strings in the message catalog in which the final result doesn't
make any sense.
- Performance
An additional set of processing steps needs to be carried out before
the web page is sent to the client. Strings need to be looked up in a
message catalog which carries the overhead of a function call and hash
table lookup at a minimum. Additionally, retrieving language-dependent
columns from the database usually requires a join that would not
otherwise have been necessary. The need to cache partially-translated
pages further increases complexity.
- Availability of staff
The complex needs of a multilingual web site require vastly more
staff. Any significant changes made by a programmer will need to be
tested by someone fluent in each language that is used on the
site. Bug reports may come in a different language to that spoken by
the programmers and require translation. There are few programmers
with experience on internationalization projects from which to recruit.
- Retrofitting a site with multilingual features
It can be as hard to retrofit a web site to make it work in multiple
language as to build a new site from scratch. There will be numerous
hard-coded elements that need to be tracked down and localized. Many
common programming constructs, such as string comparisons, can lead to
bugs in a multilingual site. Strings that can be reused in multiple
contexts in one language, will not work in the same way in another
language.
All of this adds considerably to the cost of developing a multilingual
web site, particularly in cases where a lot of structured data needs
to be translated. In many cases, the initial set up costs of a
multilingual site could easily approach that of two separate sites in
different languages, though it is likely that there would be large
savings in maintenance costs from having a single site.
More information
Jakob Nielsen's Alertbox on International Usability http://www.useit.com/alertbox/9608.html
The Internationalization of Linux http://turnbull.sk.tsukuba.ac.jp/Tools/I18N/LJ-I18N.html
asj-editors@arsdigita.com