WHAT TO CONSIDER
There are some simple yet very effective tricks to make sure you won't experience any nasty surprises when having your apps localized. By keeping in mind these tips you will avoid unnecessary questions from localizers or even statements such as "these strings cannot be localized". Keep on reading to find out how to avoid the most common mistakes.
CONTEXT CONTEXT CONTEXT
This statement is valid for every aspect of the translation business but especially true when it comes to localization.
Provide as much context as possible to your translators and they will thank you with amazingly accurate and easy to understand translations.
The best way to do this is by handing out the actual app to be localized. By being able to browse through your app the translator can check where a string is placed in the interface and apply this knowledge to their localization. Want an example? Here it is:
We once localized a journaling app for iPad that contained a string called "Include Sidebar Photos". Well, without the app at hand, such a string could actually mean anything. Include photos where? What photos? Include in what? What sidebar? A bunch of questions pop up in a good translator‘s mind.
Luckily we had the app at hand, could start the app on our iPad and check where the string belonged. It turned out this was a setting when exporting the journal to other file formats to include photos added to a sidebar for the journal entries.
If for some reason you cannot provide a copy of your app, please be sure to label the key identifiers for the strings in such a way that the translator can easily extract context information. A good key for the "Include Sidebar Photos" string would be "Include_sidebar_photos_export_option".
THE ARTICLE: SMALL YET ESSENTIAL
Did it ever dawn on you that a tiny, one-letter word such as the indefinite article "a" could make such a mess in localization? If you weren‘t aware of this, let us assure you that you are not alone.
Always bear in mind that English can be quite a straightforward language, especially when dealing with articles such as "a" and "the". Other languages though can vary a bit more. Let us show you an example:
The localizable.strings for a messenger app for iPhone included a string called "%@ has sent you a %@", whereas the former %@ represents the contact that sent something and the latter %@ represents the type of media such as a photo or video.
Here's how the strings would look like:
- The problem: by separating the article "a" from the variable, the developer rendered this string untranslatable for certain languages. Italian for example has different articles for video and photo (due to gender differences): una foto, but un video.
A simple yet effective solution: always include the article in the variable. This way you account for languages that might use different articles for all the variable options. Look below and you will see how easy the translation of these strings can be when including the article in the variable.