We are fortunate today to live in a richly diverse, multicultural society with a high degree of interconnectivity as afforded by the internet. Due to the digital nature of our world, the need for efficient software localization is a priority now more than ever before. The benefits of mastering this process are clear, by allowing each of your target audiences their own language and culturally specific user experience, you ensure they feel just as catered for as your original language market.
Many localization attempts are fraught with frustration when the proper steps are skipped or missed. User experience is paramount, no one appreciates garbled text, language encoding that doesn’t “look” right, concatenation of texts or mismatched formatting. To foster trust in your product with your consumer base, your software must function just as comfortably in any language offering as it does in your native tongue.
Successful software localization requires taking into consideration the localization process while developing the software structure, particularly, but not limited to, all of the user facing components. Here we will take a look at some tips for a smooth and efficient software localization process, setting you up for international success.
Most software developers are all too aware that forward planning is an absolute necessity, as only rarely does everything go exactly as expected. It would be a mistake to take a relaxed approach to localization of your software, assuming this is to be a secondary step after the initial coding has been completed in the source language. Rather, software localization should be proactively considered from the beginning, planned for and executed by a team of professional linguists in tandem with your development team. If you don’t know where to start, it is recommended to seek the advice from localization experts on how to best develop your software for localization from the point of design.
While localization of software can indeed occur upon completion of the initial development phase, this will cause unnecessary fixing of issues that could have been avoided if localization was kept in mind to start with. Ideally, throughout your design and development process, you should consider any and all segments of your program that may require localization to ensure the end quality of your product in any possible language.
Start Small and Scale Up
If you’re not sure if your product will perform, there is always the option to start small and scale up. By launching an impeccably localized product page, you can dip your toes in the water and expand from there.
Internationalization is a crucial step to preparing your software for straightforward localization.
The source code should be created with this in mind, separating any potentially localizable components (sound and image files, text strings, even some formats) into folders and files which can then be easily translated and localized by your linguistic team without the necessity for editing the source code.
Similarly, the source code should use a string identifier and the selected language to show the user the required text string, rather than relying on hard coded strings. XML is a good option for this, but there are plenty of database options to choose from. By providing ample comments on strings you will allow your translators insight into the context in which they will be used, to better choose the right translation. Keeping a good file structure for your localizable content is also advisable, for efficient collaboration between your development and linguistic teams.
It is best to connect with a reputable localization partner as soon as possible, who will seamlessly integrate with your development team; working in tandem on your software project, saving you both time and money, not to mention a lot of needless stress.
Text Expansion and Contraction Across Languages
Always leave plenty of room for text expansion in your software design. Regardless of how long your original language text may be, this can vary significantly across languages, with many taking between 130-300% more space than English text. You can avoid embarrassing user interface “clunkiness” by allowing for such expansion of localized texts in your original design. This is of particular benefit when working on mobile platforms, designed for smaller screens. In this instance, flexible design can be your saving grace, allowing for seamless integration of many languages.
Avoid Hardcoding Time, Date, and Currency Formats
Always be aware of formatting differences in currency, date and time between regions. The obvious example of this is the difference between the UK and USA date formatting where the former uses DAY/MONTH/YEAR while the latter prefers MONTH/DAY/YEAR. There are also other variations between regions, such as which day the week ‘begins’. These will all have a significant impact on user experience and should be considered during development to avoid the headache of changing segments of source code later on. Using locale formatting for these elements will allow your linguistic team themselves to choose what is most appropriate for their language.
A great way to avoid any missed errors in this area would be to undergo “pseudo localization”; replacing language specific text as an easily visible repeated letter such as ‘XXXXXXXX’. This can help you better visualize any hard-coded strings that are not yet properly defined in string tables.
Avoid the common pitfall of leaving out punctuation to add it in later. Though this can be a tempting approach to “save time”, it can wreak havoc on your localization efforts, as punctuation can have a big impact on sentence meaning in different languages. By leaving it in, you assure that your translations are on point.
Concatenation of sentence strings can make life easier when developing your software in English or for just one region, but as word combinations and even word order in sentences are rarely the same across languages, therefore it is always preferable to work with whole strings for easier localization.
A great tip is to make sure your software expects texts in the universal standards in text encoding, to avoid mixed up text, extra time resolving bugs or unnecessary extra conversion steps.
Test Your Localized Software
This crucial final step in the localization process will give you targeted feedback from your new language markets, allowing you to fix any issues that your audience may finds ‘un-user friendly’. It’s important to thoroughly test the final version of your localized software, just as it was tested in the original language. Have your software tested by native speakers of your target language before launch, who are best placed to flag any potential user experience issues or inappropriate content. You can reuse your English test plan to avoid delays, but there really is no comparison to reviewing your localization efforts ‘in context’ to ensure a perfect end product.
Choose the Right Localization Partner
The most important tip for localization success is to choose your team well. By partnering with an experienced, professional localization team, you can achieve optimum results for smooth integration of your software into any language.
At PGLS, our specialized localization team are on hand to provide an unrivalled service that will feel like an extension of your own team. Together, we can build intuitive software that resonates with each of your target markets as though it was created just for them.
Software Localization is your key to opening the door of new exciting markets across the world. From the fledgling stages of development to the global launch of your final product, it’s worth doing right.