Localization and Translation with Transifex

Catalan is the first new full addition to Transifex – our new localization/translation home. We’ve blogged previously about our efforts to localize Ushahidi. Finally, we are pleased to launch Transifex as the platform to equip translators and developers with their Ushahidi language/localization needs. (Ushahidi previously used Tafsiri (in-house tool) and Github Translations.)

We were happily surprised at the speed of the Catalan (Spain) localization. This was done over the past few days by a diligent community member. As you can see from the site, each language varies in “completeness”. Our 2012 goal is to have 25 localizations fully complete. Ushahidi deployments with completed languages make it easier for the local regions to communicate with their users. With your help, we’d like to better serve them.

Transifex

Translation status by product:

How it works

Translations in the form of “strings” or “word(s)” are synced, converted back to Ushahidi’s native format (PHP arrays) and updated on on Github. This happens every 12 hours. If you are an Ushahidi platform deployer, you can pull these translations directly from Github to add into your installation. In future platform releases we’ll make things simpler by shipping all translations with the platform. If you are a Crowdmap user, languages will be updated with each code release.

Transifex provides a more user-friendly environment for translators while easily connecting to our fast paced software development. Each Ushahidi platform word and associated strings are listed as “resources” in Transifex. The “resources” are associated with a localization to be translated. Each language has “language resources” which are separated into strings and words to be translated.

To translate

It is easy to get started on translations. You can add a few words or full strings or sets of “language resources”. The first steps are to join the Transifex Community, then search for the “Ushahidi-localization” project (or a different product) to join.

When you click on a language, you will see available “language resources” to be translated. Click on the “language resource” to proceed.

transifex language resources

You will be provided options in a pop-up window. The “source string” is the English word or phrase to be translated. You can either download the items and translate it. Or, you can click “translate now” to proceed with online translation.

Transifex now

On the right hand side, you can see the translation space for items to be added. Once you are done translating the “source string”, click “Save all” in the bottom right-hand corner of the screen.

transifex

To learn more about how to get started in with localization and translation, see these two wiki articles:
Localization and translation – How to (includes links to Transifex’s documentation)
Localization and translation – FAQ

If you are a developer….

For developers, we recommend that you and your translators use Transifex as the “source of truth” for localization and translation needs. Here is a diagram on how it works:

TranslationProcess

To get a deeper understanding of the technical set-up, there are two additional wiki articles:

Localization – Under the Hood
and Localization – Developer Best practices.

Also for those who deploy from git, note that localizations are now included in core as a submodule.

Thank you

Thanks you to our Translation testers and folks who provided feedback: Farid Boushra, Jaume Fortuny, Michelle Lee, Plato Leung, Lisa K. and Emrah. We’d also like to thank our friends at Mozilla for mentoring us and to the Transifex team for their support.


Next steps:
Our goal is to provide more translated content (wiki, web, text) to serve the community. So far this year, we have launched the Amara (formerly Universal Subtitles) video translation tool and Transifex for software localization. More is more.

If you have questions about translation or emergency translation needs, please contact us.

Our Localization is Robbie, Henry and Heather.

6 Responses to “Localization and Translation with Transifex”

  1. And “Ushbot” is your language bot (user) that already translates some strings?

  2. Heather

    Thanks!

    @jke – ushbot is the script that syncs github and transifex. But, she is an important community member now. We need to give her a better icon : )

    @Farid – It is because of folks like you and your team! Thank you.

  3. Hi Heather, I have a full translation of Ushahidi into the Irish language GA-IE – currently running on http://www.deishighdoshraid.ie – the *almost* identical twin of http://www.fixyourstreet.ie

    What’s the quickest / easiest / safest / most compatible way of getting this into the project.

    We started just when the old translation system was taken offline but have been unsure of how to proceed since.

    We’re happy to contribute it back to the project as an additional available language.

    Regards,

  4. Heather

    Thanks Tommy! Can you drop me a line: hleson at ushahidi dot com? I want to figure out if we can somehow import it rather than asking you to manually update Transifex.

    heather