
Context-aware (app) translations
Recently I started to improve the translations for an app that I’m working on. The translation files are i18n
json files that store key-value pairs with the translation in the corresponding language. While our team keeps the de.json
and en.json
in sync with development, we’re not fluent in any other language. It’s the first time I got a little deeper into translating an app. It struck me, how hard it is to accuratly translate as soon as the translation requires specific context.
It looks like there’s no easy solution, easy meaning low effort or high pricing where you can trust the translators.
LLM & Deepl Translation
The first approach we tried was using a LLM. This was hardly of any use. The translation for “back”, i.e. navigating back to the previous page, became the word for the body’s back. Even when provided with more app specific context the translation was poor. Using https://www.deepl.com/ provided similar results.
Translation Service
We also thought about using a real translation service with native speakers. This can get expensive and takes a lot of time and management power. There’s also almost no way to verify their translations. If you’re not speaking the language, how can you make sure that the translations are not only mediocre? They could also use a LLM or Deepl for a large part and we wouldn’t notice it. Therefore, it would take us quite some time to first establish trust. A quick internet search for translation services in Germany resulted in companies that are hire non-professional translators on https://www.kleinanzeigen.de/ , a local marketplace1 platform for primarily individuals that want to sell stuff. Now there is a even longer chain of trust since the company delegates the work to freelance translators.
With that, we have to rely on the Translation Company to check that the freelance translator is qualified.
Another reason that speaks against us using a translation service is our specialized field we’re working in. Without being active in this field yourself, there’s almost no way that you’re familiar with the correct naming even though you’re a native speaker. It is as if you had to translate local laws that you never get in touch with. This is something that you would only know if you are a lawyer or work for the government in that field. With that in mind, there’s almost no way that we would receive good results with freelance translators from Kleinanzeigen.
Localization Management Platforms
Besides the search for qualified translators I also did a quick web search for a good translation platform. Instead of simply changing the translation in the language.json
, using a localization management platform provides the benefit of adding plurals, feedback, comments, context, interacting with different translators and so much more. https://weblate.org/en/
looks quite powerful as a free (self-host) and open source alternative to https://crowdin.com/
and others. You can also contribute as a translator yourself on https://hosted.weblate.org
to open-source projects, like https://github.com/immich-app/immich
or https://github.com/keycloak/keycloak
.
These platforms look quite impressive - as long as you have a big community or know your professional translators.
For now, we’re relying on our users feedback to improve the app’s localization.
Kleinanzeigen was previously owned by ebay and was named
ebay Kleinanzeigen
↩︎