4 ms·
Ask HN: How do you manage translations in your mobile apps?
I work as developer in a team of ~10 people (dev, designer...) but we struggle (a lot) when we want to add or update translations in our apps (iOS, Android...). We spend a lot (too much!) of time fixing issues and send validated strings to an external translators team.
So how do you manage strings to translate (tools, workflow...)?
- twunde 8y agoStack Overflow had an article taking about how they did translations for their web app, which I found useful: https://nickcraver.com/blog/2016/05/03/stack-overflow-how-we-do-deployment-2016-edition/ https://nickcraver.com/blog/2016/05/03/stack-overflow-how-we... As someone who has done a few translation projects, you want to always have a dedicated translation team (eng should not be doing the translations). As the article mentions, the business should decide whether they're ok with incomplete translations. You should prefer to keep translations in a standard format such as po files in your source code. It may make sense to bundle it into your building processes. The UI/UX aspect can be the most challenging as suddenly some lines are now two or 3 lines and wrap weirdly.
- wawan 8y agoThanks for the article. How do you manage translations across multiple projects ? Do you have a database to keep all the strings, or you simply look if the translation has been done in another project when needed ? Who make the list of strings to translate : the specification writer, the developer when coding, another one ? Do you use an external tool to do that ? I've started to use CrowdIn but it's not good enough to make it easy for us (as developer) before the strings batch is sent to translators (ie: extract, collaboration).
- twunde 8y agoWell the easy way is to have a monorepo, but it sounds like that's not a possibility in your case. It may make sense to have a separate repo where you keep your PO files or whatever you're using and just import that repo into each of your projects. You don't really want to just search for the string in other unrelated projects because the translations may have added context, which is appropriate fro the project it was created for, but incorrect for the new project. The person making the list of strings to translate should be whomever is in charge of actually writing the copy. That's often the product team. We just email files back and forth, which works ok as long as it's easy to grab the current files from source control. It looks like CrowdIn basically does the same thing but with a web app and the ability to purchase translations as needed (it's weird to see a translation company with grammar errors on it's front page). The essential workflow you're looking for is the ability to send files back and forth in a version controlled manner, possibly with screenshots to add more context
- wawan 8y agoThanks :)
- andriy_crowdin 8y agoHi there! Andriy from Crowdin is here! Crowdin is localization management platform where you can upload different kinds of files (including PO) and localize them with help of community or hire professional translators. It's worth mentioning that GitHub / GitLab / Bitbucket repository and sync files automatically back and forth. Quite often people indeed create a separate i18n repo where localization files are hosted. A good sample: https://github.com/electron/i18n https://github.com/electron/i18n We do not provide translation services ourselves and I'm sorry to hear you've found some imperfections in texts! If you could point what exactly can be improved, we would be happy to improve that of course! You are welcome to contact support@crowdin.com or open live chat with us if any questions arise