Internationalization plays a large part in today’s ever globalizing world. Aligning to business outcomes, internationalization is vital in an organization’s global business planning related to both people and revenue. For the technology industry, internationalization is a core consideration for driving usage and adoption of many programs and apps, as it enables the user to interact with an application in their preferred language.
With most software delivered online, internationalization has moved from a “nice-to-have” to a “must-have” for many organization to compete. It is also an imperative for global operating companies with employees around the world that use proprietary software. The scale for which internationalization of software is done will always center around two important data points: the number of required languages and budgets.
Internationalizing the user interface needs careful and deliberate planning. Working with user interface (UI) experts backed by a strong review and testing process will help ensure that you don’t alienate your intended user base. There are some very basic considerations that need to be addressed for UI localization. These include specialized requirements for data, such as numbers, dates, times, phone formats, text size, and the alignment of texts (left-right). Beyond the content, there are some creative and cultural adaptation considerations that can be more complex, including considerations for digital media, optimization, colors, images and use of symbols. Complexity grows even further today, as you must consider device types, browsers, multimedia and other hardware configurations in your internationalization plans.
Here are a few suggested best practices we have gathered for internationalizing software and the UI.
Support for Non-English Character Sets
All 8-bit character encoding must be supported, including non-Roman alphabets. This is key in enabling translation of a text from any language to another. Use generic data types and function prototypes. East Asian languages can be supported as long as they use either Unicode coding: either UTF-8 or UTF-16. Unicode is regarded as the standard code for most global writing systems and languages.
Create Code that is Not Dependent on Locale
Input of data should allow for variations in location, such as dates, times and currencies. Avoiding the use of hard-coded character constants, numeric constants, screen positions, filenames or pathnames that assume a particular language. Make sure developers don’t use concatenation in the source code. To save coding time, some developers join character strings end-to-end – they concentrate strings – this is known as concatenation and is not good practice if software is destined for localization.
Remember Punctuation Marks
Translation of punctuation marks like ellipses and colons have to be followed closely. For example with, Save As… in any translation, three dots have to be used to avoid errors in the localized version. The same applies for spaces. French uses a space before ? – a question mark. Most languages do not follow this style. Use acceptable punctuation styles for target languages.
Text Expansion, Abbreviations and Reuse
As well as translating the meaning, consideration must also be given to factors such as word and text length, so that the formatting is suitable for the language. As a general rule, Asian languages require less space than English, while European languages such as French and German require more space. German, known for its long, compound words, is on average 20% longer than English. Consideration must also be given to whether the language requires left-right or right-left sequencing. Arabic is probably the best known right-left read language, and this has led to many a confusion over the years, especially in the early years of the World Wide Web. For example in an early version of Arabia Online, a website intended for Western readers to learn about the Arab world, the site was originally laid out left-right. While not lacking in its authenticity, this obviously didn’t work in the areas of the world it was designed for and thus did not have the best outcome for the investment. For web developers, this means keeping the content and design separate in order to make possible future translation projects easier. Space should be provided for expansion or contraction depending on the language. Don’t reuse the same text but in a different context. This will create confusion at the translation stage. Remember that some abbreviations will not work when translated and other words must be used in place of the abbreviations (or avoided all together).
Internationalization for Mobile Apps
Use Universal Icons Where Possible
You are probably familiar with these already. The magnifying glass representing the search function, X for close and the house icon for the homepage are universally recognized symbols that ensure a page is understood wherever in the world it wishes to target. Even simple ON and OFF commands in the UI can be simplified for global audiences by using 1 or 0. Some user interfaces use colors to represent actions, white for OFF and green for ON.
Use a Localization Expert
To design software with language in mind, partner with localization experts who will advise on developing software destined for a global audience. As part of this consultation process, you can develop tailored guidebook with best practices and guidelines for developing international software.
The tips covered for user interface are also applicable to the planning for coding and software development. As language can impact the user experience, it can also drives general satisfaction and usability. There are many key elements for consideration in internationalization of software starting from planning, through development, to testing and design. Consider localization as part of the strategy from the beginning, as it will save you time and money long-term.
Further information on the latest changes in software localization can be found in a blog written for Welocalize by Loïc Dufresne de Virel, Localization Strategist at Intel Corporation, Disruptive Changes in Software Localization and their Impact.
Matthew is a member of the Welocalize global sales support and marketing team.
Click here for more information of Welocalize services in the technology sector.