Making the next ubiquitous app is the holy grail of many tech startups. Yet localization is often an afterthought for an initially English-only application. So when you are ready to take your app to other markets, certain assumptions that were made for English no longer work for the localized app. Here are three approaches that will make your app less functional and user-friendly in Russian.
The Lego Approach
Concatenation is a coding technique that strings different sequences of characters together to form a sentence. For example, a newsfeed update may be coded as “[username] posted [number] pictures,” where the username and number are pulled in from a database and the rest of the phrase is static. This sounds like an efficient approach that helps you recycle the building blocks of language instead of having multiple variations of the same string — in English.
However, in Russian as an example, “added” will be different depending on whether the subject (so, your user) is feminine, masculine, neuter, or plural. “Pictures” will be different depending on the number that precedes it, much like in English, except that the form for 2-4 is different from the form for 5-10. Why such complexity, you may ask? Some theories of language postulate that redundancy, or repeating parts of the message, helps the listener or language learner catch the message if they missed one part of it.
We may not like having to alter our perfectly functional English code to accommodate “less efficient” languages, but not doing so will result in a foreign equivalent of broken English. To illustrate this, let’s look at an analytic language without verb tenses or plural forms for nouns, like Mandarin. If a developer coming from the perspective of that language had coded something like “[username] like this post,” where “like” does not change in terms of person or tense, this could potentially result in ungrammatical sentences like “Joe like this post.” While this is still understandable, it does not have the same feel as the original copy.
The Unisex Approach
A related pitfall to avoid is ignoring the concept of grammatical gender. Even basic boilerplate language like the greeting “Dear” in an email salutation will need to be different depending on whether the recipient is male or female. While this means more things to keep track of in your database, this will result in the same standard of writing as was applied to the communication in English.
As a side note, the lack of an established gender-neutral pronoun does present a challenge in Russian. In any case, you should be able to track and display the user’s preferred pronouns and adjective gender.
The Buddy Approach
A final difference to keep in mind is the US developers’ propensity for informal, approachable language. This is evidenced by humorous error messages along the lines of “Oops, something went wrong” or status messages saying “Sit tight.” This is unusual for Russian, where the audience expects a more straightforward and slightly drier style.
For example, an application is unlikely to add “please” or “thank you” to the message it displays. As a result, the Microsoft style guide for Russian recommends translating “No line, thank you” as “Без линии” (Bez linii, literally “No line”) to ensure proper register. While some of these stylistic quirks of English authoring may be neutralized in translation with the help of a style guide, it is best to internationalize your code from the outset to avoid linguistic — as well as technical — obstacles to successful localization.
Understandably, even with the best practices in mind, developers may miss an aspect that makes localization in a specific language difficult. That is why it is so important to consult your localization provider at various stages of software development. This way, you will be able to make your app a little more international — in the next version, if not the current one.