The key pieces to localize your software project

When it comes to software localization there are some important parts you have to address.

If the term localization (l10n) is new to you, then take a look at this explanation or at this blog post about software localization.

i18n - internationalization

Where the software code is created, i18n is also to be found. Developers needs to instrumentalize the code to be able to be localized to various languages and regions.

There are a lot of questions that should be answered here.

More information

Here you can read more about i18n and check if your software is ready for localization.

To answer the questions about i18n, you will finally probably use a corresponding i18n framework that meets your needs.

Advice

When it comes to web localization, one of the most popular i18n frameworks is i18next.

The biggest mistake one can do is looking on software localization as it’s only based on instrumenting your code and extract texts into resource files so you can translate them later.

The requirements are clear: enable the application to be translated later but without time to think more about it. It ends with reaching the release day with an application ready to be published in one language.

t9n - translation

When the code is ready to be localized, someone needs to translate the content.

You can have your translation done by freelancers, agencies or in-house employees. You can also start with some machine translation, but a translator should at least proofread the machine translated texts.

Advice

Use one of the integrated services to order the translations from a third party.

Text translations are just one element in the localization process. You may also think of images, documents that differs not only for different languages, but also for different countries or regions.

TMS - Translation Management System

After having internationalized the code and knowing how the content is translated, how will these 2 parts interact with each other?

What is Translation Management?

Translation management is the systematic process and automation that manages translations and other digital assets, eliminating repetitive and laborious manual tasks while enabling progress overview and control, increasing collaboration and delivering greater efficiency.

Manually merging translation files?

One day (before release) the responsible for localization will knock at the developer's door and asking for the resource files to be translated. The developer will hand them out and deep in their mind the developer knows there will be some changes in the last days before release and even more changes after release.

Some days/weeks later, the translated files will be ready and the developer will copy them to the repository but there are already a lot of changes. Some terms are not used anymore others are new and not yet translated.

Might be the time for some tooling to help you manage your translations.

Translation Management Systems are a great help. But still there is a gap between development and translation process. Files need to be exported / imported / merged and all while new content get added to be translated. The chaos is inevitable.

There are a lot of translation management systems, choose the one that fits your needs.

Modern translation management systems focuses on continuous localization.

More information

Not every continuous localization offered by the various translation management systems is the same. Check out the main differences here.

New content in your application should be immediately available in your translation management tool for your translators and newly finished translations should be passed down to the application without a developer needing to add a file to the repository or accepting a PR from the translation management.

Because software development never stops when the first version of a product is released (bug fixes, minor updates and at some point major new versions and releases) — continuously. Your localization and translation process should follow the same pattern as your software development. You should be able to deploy your translation files separated from your software so you can update and manage them independently. And if you do so, you have to make sure you can have more then one version of your translations; at least one for the current released version and one for the current development branch. That way your technical writers and translators can take care of the translations from the first day and keep up with changes with ease. By doing this it is even possible to change or add translations without shipping a new release of your software!

Advice

locize removes the pain in the translation process. No more delays in shipping your software because of missing translations. Translators can keep up with changes from day one. The continuous localization process keeps up with your demanding business.

i18n, l10n, TMS - So which are the key pieces to localize your software project?

Share