When you decide to adapt your software for international audiences, the initial excitement of the endeavor can easily cloud the amount of effort that accompanies it. So, how do you localize software? If you want to reach a larger audience and enjoy sustained growth, you must support multiple languages and locales. This is not the time for a haphazard approach.
Sure, early adopters may buy in even if you don’t have a localized user interface, but to be competitive, the software localization process is essential to your product launch. Before you even approach the main elements of localization (L10n), you have to focus on internationalization (i18n) to enable multilingual capabilities without engineering changes. This involves:
- Adding locale frameworks
- Externalizing strings
- Refactoring string concatenations
- Replacing locale-limiting programmatic functions/methods and patterns
- Database internationalization
- Managing potential third-party product issues
With continuous processes in place, i18n can be more easily integrated into your sprints and releases and prevent costly rework post-launch. Once you’ve nailed the i18n process, you can begin L10n by adding locale-specific components and translating text.
Don’t worry. We’ve removed some of the guesswork with our list of software localization best practices and tips to help make internationalization and localization efficient, effective and successful.
Let’s get to work.
1. Build a dedicated software localization team
Fight the urge to start your i18n efforts with just one or two developers. You’ll find them juggling “higher-priority” projects and losing momentum on your product launch. Instead, create a dedicated software localization team with multiple internal developers and/or third-party contractors who are familiar with best practices for localizing websites and apps. This approach will quickly improve the learning and socialization of internationalization techniques and keep projects on track.
2. Prepare with an internationalization analysis
Pre-localization preparation, building, testing and feedback are critical to the success of your software localization project. Taking your software across borders requires more than Unicode and externalized strings. You still have sort-orders, data-entry forms and concatenations to consider. An internationalization analysis before localization is the way to go. Look at the software requirements and architecture first. How will you support locale selection within your application’s programming languages? How will the locale be selected and is there a fallback? What changes are required within your database? Should third-party libraries be considered? Like many programming tasks, getting the process nailed down up front will save many hours of wasted time on rework.
3. Use standard resources
Reduce the demands on your dev team by using standard file formats like Java properties, .net resx, traditional windows resources and xml. Working in a custom dev environment? Use a consistent file structure such as XLIFF, which follows a standard. Having localizable text in these established formats makes it easier for translation tools to process them so that the localized software performs exactly as it does in your source language. This approach also frees up engineering and QA hours for your localization service provider, resulting in reduced localization costs for you.
Continuous localization helps drive rapid new-feature development. For software localization, this means lots of relatively small L10n changes, performed more often. The traditional manual process of finding and enumerating new strings from resource files in repositories, and shuttling files back and forth to translation can be tedious and error prone. The solution? Automation. Take Lingoport’s Resource Manager, for example. It handles these tasks using continuous integration with an automated connection to your localization company or translation management system.
5. Resolve i18n bugs
Internationalizing existing software inevitably reveals i18n issues. These can be challenging to find and resolve among thousands or even millions of lines of code. Fortunately, static analysis offered by software localization platforms make it easier. You can also simplify the process by developing a method that checks new source code as it’s being written. This way, i18n becomes part of the agile process rather than a costly afterthought addressed in backlogs.
6. Understand localization tools
It’s a good idea to educate yourself on available localization tools from the start to maximize their benefits. Technology such as terminology management, translation memory, RESTful APIs, CMS connectors and other integrations can reduce manual effort, add quality checks and save time and reduce cost. Your localization partner should be able to help you make use of these tools as part of the localization process (more on this later).
7. Select a reputable translation partner
Make sure to select a localization agency highly experienced with software localization to ensure your product is well received in new language markets. While there’s a lot to consider in your search for the right partner, there are some must-have qualifications. Be sure their localization process syncs with your development process and fits seamlessly into your existing workflow. Also confirm they can meet your deadlines and budget with integrated technology solutions and a team of in-country linguists to deliver quality translations. Acclaro offers all this and more. We are a full-service software localization agency that can help you navigate cultural and technological challenges with:
- Professional software translation services, along with localization expertise in marketing content, websites, documentation and multimedia
- Continuous translation and streamlined string handoffs
- Optional quality assurance (QA) solutions, including in-context language validation and formatting checks to ensure your product looks and functions as it should
8. Develop language assets
According to localization best practices, a style guide and glossary are integral to keeping terminology and language conventions consistent. Acclaro recommends investing in this optional service and collaborating with your localization team. Once your project is in full swing, create a localization kit containing documented project requirements such as locales, file naming conventions and encodings.
9. Perform a dry run with pseudolocalization
The internationalization and localization process can change character counts and strings, which ends up affecting design. Give yourself a sneak peek of your work to make sure your translated content is displayed correctly. Pseudolocalization is a testing simulation that uses a “fake” language with special symbols, punctuation and text-expansion modifiers. This step can help you catch and eliminate localization problems before the software goes live. Skip this, and your translation partner will be forced to fix issues post-development.
10. Test and test again
While software localization experts verify the linguistic accuracy of translations throughout the build, testing the localized software in its full, real-world context is the true indication of quality. Linguistic testing and QA can uncover issues with translated content that only become apparent when the text is in its final format. Adding the human touch of professional linguistic testers ensures all localization elements work in harmony, so the final product runs smoothly on all platforms in your chosen languages. Be sure to give your reviewers a set schedule, review goals, feedback guidelines and a way to communicate with the team.
Nailing the software localization process is key to making sure your software thrives across language markets. Set your product up for success with the help of Acclaro, the software localization company trusted by many of the world’s leading brands. Contact us today to learn how we can help you connect with global markets.