L10n/Apps

From MozillaWiki
Jump to: navigation, search

DRAFT
The content of this page is a work in progress intended for review.

Please help improve the draft!

Ask questions or make suggestions in the discussion
or add your suggestions directly to this page.


This page and it's children are currently a dumping ground for Axel's thoughts.

Scope

The scope of Apps in these documents is WebApps that look like Gaia, not older than the latest stable branch.

We also limit our thinking to cost-free apps developed in the open. Thus we don't need to bother about access policies, vouchers for testers, etc whatnot.

Intent

Create an infrastructure that allows app developers to build and ship localized apps.

We're tossing around a few different concepts and proposals.

Scenarios

github PRs

Localizers fork the app's github repo, work on the translation in their own fork, and submit pull requests. Details of this plan form in L10n/Apps/Github.

Ecosystem Lock-in Existing Required
  • git
  • github
  • toolchain talking to github through APIs
  • github
  • None

integrated environment for

  • discovery
  • forking
  • editing
  • commiting
  • submitting PR

Could be Aisle

Pootle

Developers publish their strings on a pootle instance, and export the localized strings into their app.

Ecosystem Lock-in Existing Required
  • pootle
  • translate toolkit
  • no version control, no attribution in source code
  • Pootle is the only editor
  • Pootle db is the only source of contribution metrics
  • translate toolkit/pootle
  • conversion algorithms back and forth exist
  • TBD

Transifex

Developers publish their strings on transife, and export the localized strings into their app.

Ecosystem Lock-in Existing Required
  • transifex
  • tx (transifex commandline client)
  • no version control, no attribution in source code
  • transifex is the only editor
  • transifex db is the only source of contribution metrics
  • transifex is closed source, future development can be negotiated by anyone
  • transifex, tx
  • TBD

The Gaia Way

For gaia, we have a repository per locale per branch that's holding the strings, including one for en-US.

Ecosystem Lock-in Existing Required
  • hg repositories
  • loads of them
  • involved build process
  • extraction process for strings from gaia into gaia-l10n/en-US
  • hg
    • for the string extraction code
    • for elmo
  • elmo
  • set up and lead time are huge, don't scale
  • ending the life time of a project is undefined
  • most teams don't work on hg directly, but on a pootle instance
    • more setup
    • more tooling to move data back and forth
  • can benefit from Aisle

TBD

Ecosystem Lock-in Existing Required