Software localization is a process of interpreting and familiarizing with a product such that it can be advertised to users whose languages and cultures differ from that of the original authors. It is a tiresome and arduous job that is difficult to completely automate. Fortunately, best practices exist to make sure effective and thorough localization.
Plan for Localization Early: The work to achieve brilliance in localization is not as simple as hiring a native speaking translator to reword the text within a web site or app. Study carefully the work to familiarize your software to these additional factors:
(1) Over 1 lakh language characters are present amid the world’s languages and many languages’ fonts change considerably in size. Accurately localized, your software must be interpretative for this on input and output.
(2) Length of words in many languages differ considerably, which your GUI must handle elegantly.
(3) Some languages are read right to left which raise expectations for the layout of pages and elements.
(4) Only the Liberia, Burma and U.S do not use the metric system.
(5) Time, currency, dates and other numerical symbols differ amongst regions.
(6) Cultural differences can generate misunderstandings or awkwardness with regard to the content of your website or app.
Hire One or More Localization Consultants: End-to-end localization companies with native residents/speakers in your software’s directed areas are costly but vital. Try to execute a pass-through with automated tools with the help of one or two freelance translators, if you are new to localization. The experience will be illuminating. Hire a local consultant as an editor and reviewer, if in case it went well.
The ideal localization consultants do much more than just translate. They should deliver sound marketing assistance to make certain that rational or emotional marketing messages in your content are conveyed properly but with equal command in the target culture and language.
Take Care with Strings: Every single string showed by the software should be located in property files distinctly from program logic files. Allocate each string a symbolic name, e.g. EmailID = “Email ID,” which is used in the program itself. New strings can substitute the originals without applying any change to the program itself. Once strings have been changed, make sure their character encoding is UTF-8/ Unicode. This makes processing fast and consequently localization steps also get faster by tools like debuggers which are less time-consuming.
There are other best practices for text Localization:
(1) Strings must never be in a sequence as these leads to the formation of grammar errors.
(2) Avoid the use of idioms which can be very difficult to translate.
(3) Necessary punctuation should be included with strings definition. This may need identical strings with and without punctuation.
Avoid using the same phrase or word in different situations because that frequently leads to unintentional meanings. For example, there are dozens of anonyms and synonyms in English alone, which are words that have contradictory meanings in different circumstances such as sanction, trim or screen, overlook.
Internationalizing Times, Currencies and Dates: Time, currency and date exemplifications have many regional differences. Some countries place the currency symbol behind the amount or front of the amount, even for the same currency. The fixed indirection used for strings will fail in these cases. Every so often, such differences can be taken as subroutines or macros, which other parts of the software use at runtime or inline. These can be isolated in unconnected files to accommodate localization.
Avoiding Layout and GUI Issues: There are numerous ways a GUI can go wrong from one language to other. E.g., a GUI designed for English speakers, must flip the whole layout of a page to make content appear in a natural organization for users when internationalized for Arabic. The pull-downs or text fields, layout of buttons may also display an unnatural flow among them in a left to right language.
Text fields designed for the average length of English words are sometimes too short for many languages such as German. This can be a problem for other widgets or for visible labels on buttons as well. If the interface is designed to re-order/ re-size controls to put up screen size or labels, the whole layout may be transformed into something rather awkward looking. Modern interfaces usually provide context sensitive help on controls via a hover action. If you do not localize both the Help and GUI system all together, these may deviate considerably.
Test it again: Once localization has been carefully applied, you need to retest the software in the same manner as the original language version to ensure no mistakes have occurred that would affect the user’s experience negatively.
Many organizations miscalculate the amount of development, testing and planning required for quality localization. The cost and effort must be carefully weighed and scoped against the advantages of marketing to a new region. Once the investment has been made and experience is gained, however, the effort is usually less for localization to other regions and countries.