This
short article explains the differences between Software Localization and
Translation. I will not go into detail of the Software localization process and
only cover the basics because this is a site for translators and not for
developers. If you are interested in a detailed description of software
localization you should visit the popular sites e.g. www.msdn.com
for Microsoft .NET or www.java.sun.com for
Java.
First of all, let me begin with giving two short definitions of Software
Localization and Translation.
Software Localization
Software Localization might be described as the process of “translating” pieces
of Software from one language or culture into another language or culture. This
process includes both translating pure words and also transferring cultural
specifics such as currencies into another culture.
Translation
Translation might be described as translating a given natural source language
text – be it general or of a specific field – into a given natural target
language.
Both Software Localization and Translation require expert knowledge to perform
the job. Software Localization requires expert programming skills and know-how
to use special tools to perform the job. Translation requires expert know-ledge
of the languages and may be also profound or in-depth knowledge of a certain
field of expertise to perform the job.
The Software Localization Process
While Software Localization usually requires certain special tools to perform
the job, Translation can be done using a simple Word editor, however,
Translators may also use special software for translating, in particular
Machine Translation tools.
Software Localization can be split into the following parts that may need to be
done iteratively:
-
Analyze the given Source code
-
Detect the parts to be localized
-
Use the tools given to localize the Source code
-
Ask or consult a translator to translate language related parts
As you see, a developer usually doesn’t have to deal with the language related
translation process. He rather asks or consults a translator to perform this
task. The translator, in turn, only translates the language related parts of
the software and usually has nothing to do with the rest of the localization
process if the translator is not a developer himself.
Today, Software Localization is supported by the popular programming frameworks
including Java and .NET. Both frameworks support different strategies to
perform Software Localization yet the result is more or less the same.
The resource files usually give hints about the natural language they are
defined for. That is, they contain so called locales that describe a certain
language, e.g. EN for English, DE for German, FR for French, etc.
These locales are also used to determine special cultural peculiarities of a
language e.g. the currency of a country or culture. For example if a resource
file contains the locale FR or fr then the program should be smart enough to
detect that the currency of France is EUR and it will transform all currency
related parts into EUR or €.
Both Java and .NET use resource files to define the localized parts of the
software. These resource files will be loaded and “interpreted” by the software
at runtime, that is during the time the software runs on your computer. So, in
fact, localization of Software means defining and loading resources files that
contain the translated text.
These resource files usually reside in the same directory where the binary
executable of your software resides, that is in the so called bin directory.
Conclusion
Software Localization is a process that requires expert programming skills and
knowledge to use certain special tools to perform the job while translation
requires expert knowledge of a natural language and may be expert know-ledge of
a certain field of expertise.
Both Software Localization and Translation may be iterative processes and need
to be done multiple times. Software Localization may require to consult a
translator for language related parts of an application. A translator usually
has nothing to do with the localization process until he is not a developer.
Recommend this article:  |  |  |  | 
|