Basic rules for FOSS Localization

I have been spending some time reviewing a few FOSS educational software translations over the last months. Localization is a commitment if you want to do a good job; badly localized software leads to poor experience (people simply won’t use the software) and gives the wrong message that FOSS applications are just bad software. So if you thought localization was just pure translation, then you need to think again! Hopefully my experience will help more people to start a localization effort well prepared and be proud of the work they did.

Cultural adaptation and knowing who that software was written for are paramount in the process. I’ve put up a few rules together hoping it will help newcomers, if I missed anything please feel free to add yours in the comment section!

  1. Know your audience (the people using the software) and pick words that they can easily understand
  2. Have some knowledge in software terminology (if not, web search is your buddy)
  3. Be familiar with the software (try it out before translating it and don’t hesitate to use that software when you are doing the translation)
  4. Be more than fluent in the target language and good enough in the original language (not the other way round)
  5. Don’t be afraid to change the meaning in order to fit cultural differences (e.g. for Rur-ple, we picked a meaningful Chinese robot name rather than doing a phonetic conversion: names must have meaning in Chinese for people and more specifically children to remember)
  6. Use the same terms across the whole software (either by proof reading or with the help of localization tools like Poedit and OmegaT)
  7. Have someone good enough in both languages to review your work and hopefully familiar with the software (he needs to use the software not just read the text)
  8. Fixes, typo corrections and improvements from the source language need to be fed back to the original project in order to help improve the overall quality of the software and all its translation
  9. Keep track of changes and reasons behind so that can be useful for other languages
  10. Have the passion and the time to commit to do a good work 🙂