compare-locales 3.0 – GSOC

There’s something magic about compare-locales 3.0. It comes with Python 3 support.

It took me quite a while to get to it, but the writing is on the wall that I had to add support for Python 3. That’s just been out for 10 years, too. Well, more like 9ish.

We’re testing against Python 2.7, 3.5, and 3.6 now.

Thanks to Emin Mastizada for the reviews of this patch.

Slightly related, we’re having two l10n-tooling related proposals out for this year’s Google Summer of Code. Check out Google’s student guide for how to pick a project. Adrian is mentoring a project to improve the experience of first-time users of Pontoon. I’m mentoring a project to support Android’s localization platform as a first-class citizen. You’d write translation quality checks for compare-locales and add support for the XML dialect to Pontoon.

L10n Report: March Edition

Please note some of the information provided in this report may be subject to change as we are sometimes sharing information about projects that are still in early stages and are not final yet.


New localizers:

Are you a locale leader and want us to include new members in our upcoming reports? Contact us!

New community/locales added

We enabled several new locales on Pontoon in the past weeks, get in touch if you speak the language and want to contribute:

New content and projects

What’s new or coming up in Firefox desktop

Firefox 59 closed down for localization on February 28, while 60 will remain open until April 25. Firefox 60 is an ESR release, so it’s particularly important to catch up with localization and ensure a good quality in the shipping build.

From a localization point of view, the focus remains on migrating existing Preferences strings to Fluent. We have recently passed the 100 messages milestone, with the migration of the XUL portion of the General pane, and started introducing some of the cool features available in the new localization system.

use-current-pages =
.label =
    { $tabCount ->
        [1] Use Current Page
       *[other] Use Current Pages
.accesskey = C

For more details about this migration, see the announcement on dev-l10n. Also make sure to familiarize yourself with both Pontoon’s UI and Fluent syntax.

More migrations are planned for the 61 Nightly cycle, starting on March 12.

Activity Stream (New Tab) is also planning to integrate its settings in Firefox main preferences for 60: new strings have already landed in the Activity Stream project, a few more will land in mozilla-central.

What’s new or coming up in mobile

There’s a lot going on around mobile this month, so hang on tight!

First of all, Firefox for iOS is soon launching it’s v11. L10n deadline for this is Tuesday, March 13th. This release includes many cool new features and improvements, such as:

  • Improved tracking protection
  • iPad specific improvements in navigation, drag and drop
  • Keyboard support
  • Performance telemetry

On the Firefox for Android front, merge day is like for Desktop, so March 12th. The official release is the next day. Locales supported by the Play Store should expect to get an updated string for the What’s New Beta 60 this week. Please remember to check your appstores folder on Pontoon for anything new! 🙂

Firefox for Fire TV v2 is also right around the corner, and the l10n deadline for completion is Mon March 12. Firefox for Fire TV currently supports 8 languages but have no fear – an in-app locale switcher is in the works for future versions. This means we will be able to provide as many languages as we want (well… almost! 😉 ).

Focus for Android is regaining a bit of activity this month, with a few new strings exposed. Something important to note is that the mobile team stopped using Buddybuilds for testing on device. The APKs are on TaskCluster, which will be where you will be heading in order to test your l10n work on (you may need to uninstall your current Buddybuild first though). A v4.1 is expected at the end of the month – more details to come soon.

Focus for iOS continues to be on pause for now. Expect spot releases here and there. As always, stay tuned on the dev-l10n mailing list for any udpates!

On a more or less related topic – Mozilla is participating in the Google Summer of Code project, and we’re looking to mentor students to work on some really cool projects… come check them out (especially the ones related to Pontoon, wink wink)!

What’s new or coming up in web projects

The Common Voice project is Mozilla’s initiative to help teach machines how real people speak. The first time the team that came to speak to the localization communities was the Berlin L10n Workshop last September. The discussion generated a lot of interests and shed some light on the technical challenges as well. There are two parts that made up the project: the web page and the recordings.

Fast forward, the web part of the project is now open to localization. The team has been overwhelmed with enthusiasm and responses. The website is being localized in 17 languages. The project has attracted quite a following. There are new languages added and new contributors introduced to established communities. Thanks to all who helped with onboarding of the new contributors and to our new contributors who join the Mozillian community.

To the locale managers, please review new suggestions and provide constructive feedback to the new localizers in a timely manner. Share glossary and style guide if they are available. Suggest them sign up to web project mailing lists for future updates, and create an account!

A few words on where the project stands:

  • The website on production is in English for now. Localized websites are on staging only.
  • The sync between Pontoon and GitHub is every 40 minutes.
  • Recording is in English only. However, all speakers, native and non-native, are welcome to create a profile and contribute to the recordings.
  • The first non-English recordings will be in Macedonian.
  • Additional questions, visit the FAQ page.

What’s new or coming up in Foundation projects

Not a whole lot happening this month on localization on the Foundation side, mostly focusing on collecting feedback from our donors to improve our campaigns and running different campaigns in the U.S.
But the Advocacy team is still prepping up a Copyright push before the JURI vote, which has been delayed once again. And they are also exploring campaign ideas around connected toys that could be launched in certain European markets, but the toys themselves are still being investigated. More to come soon!

What’s new or coming up in Pontoon

In February, a team of Pontoon contributors met in Munich to drill into Translate.Next, our effort at rewriting the translate view of Pontoon and building the foundations of the future of Pontoon as a whole. One of the topics we discussed was how to involve the community in the development of Pontoon more closely. As the first step we created a Pontoon category on Discourse, where we’re hoping to get feedback on proposed developments as well as ideation and problem reports.

Additional way to review localized emails

Reviewing Mozilla localized emails can be challenging, especially when you can’t easily display all the strings at once, strip the HTML code and read it in a format close to what will be sent to subscribers.

Sometimes, inconsistencies or typos are hard to notice before receiving an actual test send proof. While it’s still possible to fix them at this point, it’s much more error prone and requires further edits. And usually, only major issues can be fixed.

This new review mode aims to provide a quick preview of localized emails, even if it can’t replicate everything from the final email template, and does not intent to replace a final review and approval of the test send.

Once you’re done with a first translation, you can proofread the email in its entirety, and adjust your translation if necessary. Translations are pulled automatically from Git every 15 minutes.

If you want to quickly check the source of a string, just hover your cursor over the translation, the English string will appear in a tooltip.

How do I access the review mode?

Simply open this page (also linked in the Engagement project info on Pontoon), find the file you just translated then click the REVIEW button. You can use the top menu to jump to your locale.

We hope you will find it handy! And if not, let us know how we can improve it.

Newly published localizer facing documentation

This was mentioned last month, but it’s always good to have a reminder. Come check out what Kekoa (our l10n intern from last summer) wrote out to help l10n communities (yes, that’s YOU!) write simple – but thorough – style guides.

Make sure to start out by reading the Mozilla General Style Guide first, since it provides the basic guidelines for translating Mozilla products. This guide should be used in coordination with a locale-specific style guide for your language.

Then look at some general guidelines that will help you create your own locale style guide.

We encourage communities to participate actively and create or modify their existing style guides here. Everything is explained in the documentation above, so don’t be shy and give it a try! (or ask anyone from l10n-drivers to help out if you’re not sure how to proceed).

Now, are you interested in learning more about Fluent from a localizer perspective? Then this is just what you need!

Friends of the Lion

Image by Elio Qoshi

Know someone in your l10n community who’s been doing a great job and should appear here? Contact on of the l10n-drivers and we’ll make sure they get a shout-out (see list at the bottom)!

Useful Links

Questions? Want to get involved?

Did you enjoy reading this report? Let us know how we can improve by reaching out to any one of the l10n-drivers listed above.

Firefox Nightlies

We’ve run into a problem with localized Firefox Nightlies in some languages today. We’d like to apologize for that, and also help you getting unstuck.

The Nightly builds of Firefox from February 28 in some localizations listed below start with an XML parsing error, the infamous YSOD – the yellow screen of death. To fix your local installation, either go to the Nightly Download Page and reinstall Firefox Nightly, or run the following in your Firefox install location:

firefox.exe -chrome chrome://browser/content/aboutDialog.xul

The latter should just launch the about window, and download an update for Firefox Nightly. You might need to adjust the executable name, depending on your platform. The example above is for Windows.

The affected localizations are: as, bn-BD, bn-IN, en-GB, en-ZA, es-ES, gn, gu-IN, hi-IN, ia, ja, kn, ko, mai, mr, my, ne-NP, or, pa-IN, si, te, zh-CN, and zh-TW.

Please don’t blame the localizers for this, whether a localization was affected or not depended on technical details.

Check out bug 1442145 for those technical details and more, and bug 1442181 on how we intend to avoid this problem in the future.

Leadership shared agreements and localization

Cross-posted from Discourse. If you have comments, please join the discussion there.

A few days ago the Open Innovation team wrote two posts about the general direction of Mission Driven Mozillians and the Revised Leadership Principles – now titled “Shared Agreements”.

The number one biggest question we hear anytime we talk about the shared agreements is “But what will implementing these agreements actually look like? How are we going to do this?!”.

Understanding how these ideas start can positively shape and influence the way Mozilla communities function is primary goal of this work in 2018. By partnering with specific teams and communities to run pilots the Open Innovation team will create processes and support systems that will ultimately make it possible for every Mission Driven Mozillian to make these ideals a reality.

To start (in this first quarter) Open Innovation will be working with the L10n-drivers Team piloting an experiment on how we can implement these agreements into the functioning of specific L10N communities by finding implementations that advance community health with respect for the uniqueness of each.

The goals of this pilot are:

  • To develop a process for supporting communities as they figure out how to implement each agreement in a way that suits local needs and cultural contexts (that can then be shared with other communities in L10N and beyond).
  • To measure and understand ways we can improve the health of pilot communities.
  • To understand how implementation of agreements can drive meaningful change in communities.

The staff supporting this pilot: Jeff (@jbeatty), Delphine (@Delphine), Peiying (@pmo), Emma (@emma_irwin), Flod (@flod), Theo (@theo) and Ruben (@nukeador).

Don’t Wait! While we start working with pilot communities in Q1 we hope that all Mozillians start having conversations about the agreements including what changes might be required to make to roles and structures in make your community healthier and more inclusive. This is something that the #reps program has already started doing.

L10N Report: February Edition


New localizers

  • Kumar has recently joined us to localize in Angika. Welcome Kumar!
  • Francesca has joined Pontoon to localize Firefox in Friulan. Do you speak the language? Join her!

Are you a locale leader and want us to include new members in our upcoming reports? Contact us!

New community/locales added

  • Mixteco Yucuhiti (“meh”) locale was recently added to our l10n repositories and will soon have single-locale builds to test Firefox Android on!
  • Angika (“anp”) locale was added to Pontoon and will soon start to localize Focus for Android. Welcome!
  • Friulan (“fur”) has been enabled in Pontoon to localize Firefox, starting from old translations recovered from Pootle.

New content and projects

What’s new or coming up in Firefox desktop

Migration to FTL (Fluent)

In the past releases we reached a few small but important milestones for the Fluent project:

  • Firefox 58 was released on January 23 with the first ever Fluent string.
  • Firefox 59, which will be released on March 13, has 4 more Fluent strings. For this milestone we focused on the migration tools we created to seamlessly port translations from the old format (.properties, .DTD) to Fluent.

For Firefox 60, currently in Nightly, we aim to migrate as many strings as possible to Fluent for Firefox Preferences. The process for these migrations is detailed in this email to dev-l10n, and there are currently 2 patches almost ready to land, while a larger one for the General pane is in progress.

While Pontoon’s documentation already had a section dedicated to Fluent, constantly updated as the interface evolves, our documentation now has a section dedicated to Fluent for localizers, explaining the basic syntax and some of the specific features available in Gecko.

Plural forms

We already talked about plurals in the December report. The good news is that strings using the wrong number of plural forms are now reported on the l10n dashboard (example). Here’s a summary of all you need to know about plurals.

How plurals work in .properties files
Plural forms in Firefox and Firefox for Android are obtained using a hack on top of .properties files (plural forms are separated by a semicolon). For example:

#1 tab has arrived from #2;#1 tabs have arrived from #2

English has 2 plural forms, one for singular, and one for all other numbers. The situation is much more complex for other languages, reaching up to 5 or 6 plural forms. In Russian the same string has 3 forms, each one separated from the other by a semicolon:

С #2 получена #1 вкладка;С #2 получено #1 вкладки;С #2 получено #1 вкладок

The semicolon is a separator, not a standard punctuation element:

  • You should evaluate and translate each sentence separately. Some locales start the second sentence lowercase because of the semicolon, or with a leading space. Both are errors.
  • You shouldn’t replace the semicolon with a character from your script, or another punctuation sign (commas, periods). Again, that’s not a punctuation sign, it’s a separator.

Edge cases
Sometimes English only has one form, because the string is used for cases where the number is always bigger than 1.

;Close #1 tabs

Note that this string has still two plural forms, the first form (used for case ‘1’, or singular in English) is empty. That’s why the string starts with a semicolon. If your locale only has 1 form, you should drop the leading semicolon.

In other cases, the variable is indicated only in the second form:

Close one tab;Close #1 tabs

If your locale only has 1 form, or use the first case for more than ‘1’, use the second sentence as reference for your translation.

There are also cases of “poor” plural forms, where the plural is actually used as a replacement for logic, like “1 vs many”. These are bugs, and should be fixed. For example, this string was fixed in Firefox 59 (bug 658191).

Known limitations
Plurals form in Gecko are supported only in .properties files, and JavaScript code (not C++).

What about devtools?
If your locale has more plural forms than English, and you’re copying and pasting English into DevTools strings, the l10n dashboard will show warnings.

You can ignore them, as there’s no way to exclude locales from DevTools, or fix them by creating the expected number of plural forms by copying the English text as many times as needed.

Future of plurals
With Fluent, plurals become much more flexible, allowing locales to create special cases beyond the number of forms expected for their language.

What’s new or coming up in mobile

You might have noticed that Focus (iOS/Android) has been on a hiatus since mid-December 2017. That’s because the small mobile team is focusing on Firefox for Amazon Fire TV development at the moment!

We should be kicking things off again some time in mid-February. A firm date is not confirmed yet, but stay tuned on our dev-l10n mailing list for an upcoming announcement!

In the meantime, this means we are not shipping new locales on Focus, and we won’t be generating screenshots until the schedule resumes.

For Firefox on Fire TV – we are still figuring out which locales are officially supported by Amazon, and going to set up the l10n repositories to open it up to Mozilla localizations. There should also a language switcher in the works very soon, too.

Concerning the Firefox for iOS schedule, it’s almost time to kick-off l10n work for v11! Specific dates will be announced shortly – but expect strings to arrive towards the end of the month. March 29 will be the expected release date.

On the Firefox for Android front, we’ve now released v58. With this new version we bring you two new locales: Nepali (ne-NP) and Bengali from Bangladesh (bn-BD)!

We’re also in the process of adding Tagalog (tl), Khmer (km) and Mixteco Yucuhiti (meh) locales to all-locales to start Fennec single-locale builds.

What’s new or coming up in web projects

  • Marketing:
    • Firefox email: The team in charge of the monthly project targeting 6 locales will start following the standard l10n process by email team using bugzilla to communicate the initial requests, Pontoon to host the content, and l10n-driver sending the request through mailing list. Testing emails for verification purpose will be sent to those who worked on the project for the month. The process change has been communicated to the impacted communities. Thanks for responding so well to the change.
    • Regional single language request will also follow the standard process, moving localization tasks from Google docs to Pontoon. If you are pinged by marketing people for these requests through email or bugzilla, please let the l10n-drivers know. We want to make Pontoon the source of truth, the tool for community collaboration, for future localization references, consistency of terminology usage, for tracking contribution activity.
    • has a slow start this year. Most updates have been cleanups and minor fixes. There have been discussions on redesigning the site so the entire site has a unified and modern look from one page to another. This challenges the current way of content delivery, which is at page level. More to share in the upcoming monthly reports.
  • AMO-Linter, a new project is enabled on Pontoon. This features target add-ons developers. As soon as the information on the feature, the release cycle, the staging server is available, the AMO documentation and Pontoon will be updated accordingly. In the meantime, report bugs by filing an issue.
  • Firefox Marketplace will be officially shut down on March 30th. Email communication was sent in English. However, a banner with the announcement was placed on the product in top 5 languages.

What’s new or coming up in Foundation projects

Our 2017 fundraising campaign just finished, but we’re already kicking off this year’s campaign.
One area we want to improve is our communication with donors, so starting in February we will send a monthly donor newsletter. This will help us better communicate how donations are put to use, and build a trust relationship with our supporters.
We will also start raising money much earlier. Our first fundraising email will be a fun one for Valentine’s Day.

A quick update on other localized campaigns:

  • The *Privacy not included website is being redesigned to remove the holiday references, and some product reviews might be added soon.
  • We expect to have some actions this spring around GDPR in Europe, but there is no concrete plan yet.
  • We’ve got some news on the Copyright reform — the JURI Committee will be tentatively voting on March 27th, so we will do some promotion of our call tool over the next few weeks.

The final countdown has started for the Internet Health Report! The second edition is on its way and should be published in March, this time again in English, German, French and Spanish.

What’s new or coming up in Pontoon

  • On February 3, Pontoon passed 3,000 registered users. Congratulations to Balazs Zubak for becoming the 3,000th registered user of Pontoon!
  • We’re privileged to have VishalCR7, karabellyj and maiquynhtruong join the Pontoon community of contributors recently. Stay tuned for more details about the work they are doing coming up soon in a blog post!

Friends of the Lion

Image by Elio Qoshi

Shout out to Adrien G, aka Alpha, for his continuous dedication to French localization on Pontoon and his great progress! He is now an official team member, and we’re happy to have him take on more responsibilities. Congrats!

Know someone in your l10n community who’s been doing a great job and should appear here? Contact on of the l10n-drivers and we’ll make sure they get a shout-out (see list at the bottom)!

Useful Links

Questions? Want to get involved?

Did you enjoy reading this report? Let us know how we can improve by reaching out to any one of the l10n-drivers listed above.

L10N Report: December Edition

Please note some of the information provided in this report may be subject to change as we are sometimes sharing information about projects that are still in early stages and are not final yet.


New localizers

  • Amadou Sileymane Guèye has joined the Fulah localization team and has worked relentlessly in helping projects stay up to date in Pontoon. Fun fact: he is known for his high proficiency in the language and also for solving extremely difficult crossword puzzles in Fulah! Welcome!

New community/locales added

Sicilian (scn), Luxembourgish (lb), and Shuar (jiv) started translating Firefox on Pontoon. If you speak any of those languages, get in touch to help!

While Amharic (am) is not a brand new locale, it has recently known a period of revival. They are going to ship their first localized Mozilla product next week, which is Focus for Android. Congrats!

New content and projects

What’s new or coming up in Firefox desktop

Wondering why there weren’t new strings to translate for Firefox in the past few weeks? We hit a bit of a roadblock with cross-channel and merge day. Axel is working hard on finding a solution, we’re going to resume exposing new strings as soon as possible.

The current queue consists of about 130 strings, most of them belong to the new about:devtools page. This is the first step in decoupling Firefox Developer Tools from the main application, moving them into an add-on that can be disabled on release and beta channels.

We have also uncovered a couple of wide-spread (and long standing) l10n bugs.

PKCS #11 (security) has a peculiar set of limitations for a few strings: once encoded to UTF-8, they need to fit a 32 or 64 bytes buffer. Turns out we had 264 errors in our localizations, accumulated over 15 years!

A bug has been filed for each of the 71 affected languages, and within 24 hours we were already under 180 errors. Thanks for the quick response!

Incorrect number of plural forms

Plural forms in Firefox and Firefox for Android are obtained using a hack on top of .properties files (plural forms are separated by a semicolon). For example:

#1 tab has arrived from #2;#1 tabs have arrived from #2

English has 2 plural forms, one for singular, and one for all other numbers. The situation is much more complex for other languages, reaching up to 5 or 6 plural forms.

In Russian the same string has 3 forms, each one separated from the other by a semicolon:

С #2 получена #1 вкладка;С #2 получено #1 вкладки;С #2 получено #1 вкладок

It looks like several languages have an incorrect number of plural forms, or a completely wrong plural rule. You should have seen bugs if your locale is affected, or fixes directly in Pontoon if the mistake was easy to identify (e.g. a closing extra semicolon).

What’s new or coming up in mobile

Did you notice that Firefox iOS v10 came out, with many more languages added? Come check it out here if you haven’t! Languages added are: Afrikaans (af), Bosnian (bs), Spanish Argentina (es-AR), Galician (gl), Armenian (hy-AM), Interlingua (ia), Khmer (km), Kannada (kn), Malayalam (ml), Odia (or), Punjabi (pa-IN) and Sinhala (si).

If you see that your language is incomplete you can get involved and help! Just reach out to Delphine.

Focus iOS and Android should get a new release some time next week! V4 is right around the corner, and will offer a ton of cool new features. If you don’t have Focus yet, you can find the iOS version here and the Android one here. While usually on a two week release schedule, Focus will take some end of year vacations and come back in January. This means Focus localizers will also have some time off too 🙂

What’s new or coming up in web projects project is finally taking a break! This is after a few weeks of mad rush leading up to the Firefox Quantum launch to add a few more new pages and revisions. Thanks to all of you who have been part of this journey, keeping the site to date despite the tight schedule! site has gone through quite a transformation since the release of the new branding guideline. The logos, color schemes and palettes, layout, and navigation menu all went through major changes. Content style and tone had a major shift to correspond to the visual update. Since June, you have localized and reviewed about 10,000 words, in 20+ new, replacement, and updated pages.

During the “quiet” period, there will be some cleanups in the backend, so obsolete pages will be permanently removed from the dashboards. There might be small updates here and there as a result of the cleanup. Keep an eye on the dashboard for these non-urgent changes.

If you are still catching up with the updates, use the webdashboard for pending projects in your locale.

What’s new or coming up in Foundation projects

On the campaigns side, the Foundation is currently focused on the fundraising and the *Privacy Not Included campaigns.

For fundraising, we should be sending 2 or 3 more emails in December, you should see them appear on the webdashboard. Thanks a lot for all the work you’ve already done for fundraising so far, you’ve helped us a lot! We would be in a far worse position without your help.

This week we’ve worked with the snippets and product teams to launch an improved version of the snippets in Firefox Quantum, making them a bit more prominent and adding back the donate form. Hopefully more people will notice your work and donate eventually!

We are also doing some video testing in English and German, kudos to Michael for his quick help.

Newly published localizer facing documentation

A new document is available with basic instructions on how to use Bugzilla for localizers.


  • We held a Localization Workshop in Kolkata on November 18-19. Here are a few blog posts about this event from Drashti, Bala and Selva.
  • Want to showcase an event coming up that your community is participating in? Reach out to any l10n-driver and we’ll include that (see links to emails at the bottom of this report)

Localization impact by the numbers

  • [Snippets]: Since Quantum launch on Nov 14, and not counting the default onboarding messages all users see when they start 57, so impressions and clicks that have been made possible by L10N are much higher than the numbers below reflect:
    • As of Dec 2nd, non-EN snippets generated 355,676,300 impressions (WOW!)
    • Over 40,000 clicks.
    • Contributors have helped Mozilla raise over $50,000 fundraising dollars, and we expect this number to be much higher by the end of year. Fundraising snippets were mostly turned off between Quantum release and Giving Tuesday.
  • [Firefox Rocket]: Launched in Indonesia since Nov 7, the install number between in the four-week period was 100,930.

Friends of the Lion

Image by Elio Qoshi

  • Huge congratulations to Rodrigo Guerra, Carmelo Serraino, and the other members of the Interlingua team for doing an outstanding job in localizing Firefox. Target for Firefox desktop release is 59. The site is already live on production!
  • Latgalian is also moving to Beta and Release with Firefox 59. Thanks to Dainis for taking over translation ownership, and Raivis from the Latvian team for helping to kick-start it.
  • Vietnamese is moving to Beta and Release on Firefox Android and riding the 59 train as well. Congratulations to the team who worked hard on testing and making sure the app is in impeccable shape!
  • Bengali (from Bangladesh) and Nepali will be in the Firefox Android 58 release coming up next Jan. Congratulations on this achievement!
  • Wolof shipped with Firefox Android 57. Congrats to this small team that does an incredible effort each time!
  • Thanks to Hari Om Panchal, from the Gujarati team, for doing a great job, translating almost 2 thousand strings in a short period of time.
  • Thanks to the whole Malayalam team for reviving their localization effort after a long hiatus.
  • Kudos to all the teams that started cleaning up their bugs in the Mozilla Localization product, without forgetting all those that were already keeping a close eye on their queue.
  • Thanks to Stoyan of the Bulgarian community for identifying issues in AMO and pushing for product changes to make it more localizer friendly. The AMO developers will start this discussion at the All Hands.

Know someone in your l10n community who’s been doing a great job and should appear here? Contact on of the l10n-drivers and we’ll make sure they get a shout-out (see list at the bottom)!

Useful Links

Questions? Want to get involved?

Did you enjoy reading this report? Let us know how we can improve by reaching out to any one of the l10n-drivers listed above.

Please note that there will be no January l10n report as this is going to be a quiet month (for once) at Mozilla. Happy end of year holidays to those of you that celebrate it!

In Memoriam: Mamadou Niang, Fulah localizer

Guest post from Mozilla Fulah community leader, Ibrahima Saar. UPDATE: Added pictures and a PayPal link for donations to the Mamadou’s family.

It is with deep pain that we announce that our friend, teammate Mamadou Niang died in an accident while traveling from rural town Matam to Dakar to attend a workshop at his organization’s headquarters. We had just had a meeting the day before to sprint to our 31st October deadline for Firefox localization. His last words, the morning before he traveled: “Don’t worry, I will be available to work on Pontoon while away.” Mamadou Niang has been working as a Fulah specialist and rural development project coordinator for the organization Tostan (Humanitarian and Literacy). He was the co-organizer of our 2014 workshop in Dakar while also very busy moving around villages on his motorbike. Also Niang was almost the person who took care of many families as he was the only one earning a salary among a large family. He was my friend and mentee and I am so sad.

After the online meeting we had, he told me that he would leave for the town of Thiès the next morning. The city of Thiès is about 500 kilometers from where he worked. Actually Mamadou is from a small village called Aram, on the river Senegal in the far north of the country. Aram is a well-known village because a very famous Fulah singer who invented a new musical genre called “Pekaan” is from there. it is a fisherman’s village where everyone has fishing as a traditional occupation and that occupation is a very important cultural aspect because it consists not only of fishing but all the cultural practices that go with fishing.

That community of villages across the north of Senegal and the south of Mauritania is well known for their knowledge of water and the spirits of the river. If some of you you remember, you might have heard about many Firefox terms derived from the practice of fishing. Terms like “aspect ratio” and “Time Out” are directly derived from that community’s fishing tools and practices. Mamadou and I are both from that community and are also a specialist of the language. That, plus the fact he was working in the field in rural areas, made Mamadou Niang a valuable asset for the Fulah localization team.

On Wednesday, October 25th Mamadou was on a trip to the headquarters of his organization for a workshop. He frequently traveled there on public transport to attend meeting, submit reports, and the like. Last year, he posted on Facebook a photo warning people that the trip from Matam to Dakar was extremely difficult and dangerous and people should be very careful. He also called on the government to repair roads and make them more secure. Sadly, he died in a public transport accident on the same type of vehicle that he posted it on Facebook.

When he left in the morning I told him that we would chat after he’d arrive. He also assured me that he would be available for working on Pontoon while away. The day before we struggled to get him migrate his account from Pootle to Pontoon, since I could not see him on the team list to change his permissions. He had an extremely slow connection and we only succeeded late in the afternoon. Actually, I proposed he translate one string so that I can see him on the list of contributors, which he did. I added him to the Fulah team finally.

I have been mentoring Mamadou Niang for a few years now and I was so happy to see him contribute so much especially on Firefox OS back in 2014. Then he was also very active spreading the word about Firefox because he had first-hand contact with people learning local languages as part of his work for the organization Tostan. In 2014 he was very active helping me recruit people who would participate in the workshop we organized in Dakar, the capital of Senegal from the 3rd to the 6th of March. He was very very valuable to me because most of the people who subsequently participated in the workshop did not know me and there was no way I could get in touch with them. Most of them indeed are working in rural areas where literacy work is the most needed it was the first time to meet him and to meet many of the people who participated in the workshop. Since, we have become very very good friends and we chatted on Facebook or spoke on the phone virtually every day.

Although he was using a very busy traveling across the countryside on his motorbike, he helped a lot with translation work on Pootle. Since we migrated translations to Pontoon, it was his first time to come to the new platform to set up his account and start working. Unfortunately that lasted less than 24 hours.

We will miss Mamadou very much because he was so kind, so helpful to all and always joking. He was also very active in his Village to help with projects on human development as well as literacy. He was a husband and a young father who took care of many families. Therefore he left his family with sorrow and also concerned for the future. May his soul rest in peace.

A fund is being raised for Mamadou Niang’s family. If you are interested in contributing, please visit PayPal.

L10N Report: November Edition

Please note some of the information provided in this report may be subject to change as we are sometimes sharing information about projects that are still in early stages and are not final yet.


New localizers

  • Ian has just joined us to help localize Firefox for Android in Swahili! Welcome Ian!
  • The Italian team has a couple of new translators in training: sav22999 (Saverio) and gens (Gennaro). In the past few weeks they have been translating strings across several Mozilla projects, from software to and other web properties. Welcome to the group!

Are you a locale leader and want us to include new members in our upcoming reports? Contact us!

New community/locales added

  • The Swahili l10n team is kicking things off again after a moment of hiatus. We’re happy you are back!
  • The Occitan team is also back after a moment of pause. They’ve successfully translated Firefox for Android and are almost done with Firefox! Congrats!
  • Sardinian (sc) is starting to localize Firefox in Pontoon.

New content and projects

What’s new or coming up in Firefox desktop

Today was the deadline to ship localization updates in Firefox Quantum (57). All translations added from now on in Pontoon will be shipping in Firefox 58.

Last week we made Form Autofill available for localization as part of the Firefox project on Pontoon. Currently it consists of 66 strings, and testing instructions are available in this document.

Talking about testing Firefox Desktop, take a look at the new QA view in Transvision to check keyboard shortcuts.

What’s new or coming up in Test Pilot

A lot of obsolete strings (65) have been finally removed from the Test Pilot website. This should make it easier for new locales that want to pick up this project for localization.

What’s new or coming up in mobile

As for desktop, today was the last day to get in your strings to ship localization updates in v57. All translations added from now on in Pontoon will be shipping in Firefox Android 58.

Firefox iOS v10 l10n deadline is today as well, both for localizing and testing your work. Friendly reminder that St3fan is from now on generating daily screenshots, which means once you’ve translated in Pontoon, you can check your work on the screenshots the next day! Come check them out here:

This is a truly useful feature that you should take advantage of, especially if you don’t have an iOS device to check your work on. A big thanks to St3fan for automating these daily and improving the general experience of testing!

Sneak peak: many cool new features are coming up with this v10! Amongst other things, the Firefox team has been focusing on Photon, New Tab and iOS 11 compatibility with iPhone X, Face ID, and drag and drop support for iPad.

If you want to try out the v10 Beta, it has been available since Friday Oct 27. Sign-up here:

Don’t be shy: file bugs, suggest features, and help make Firefox iOS overall one of the best mobile browsers out there!

Focus Android and iOS are currently in the testing phase for Granite version (l10n deadline for testing and screens is next Tues, Nov 7th). The screenshots are updated for both, please let us know if you have any questions or concerns:

And as usual, don’t be shy and file any bugs if you find issues, or request feature improvements if you have any! If you want to be added to the test builds, you can reach out to Delphine. Also, Focus for Android is available as a beta on the Play Store here.

What’s new or coming up in web projects

There are quite a few updates and new pages added to on a weekly basis for more than a month. This surge of change and new content should subside as we are closer to launch date. Thanks to you all for your timely responses and questions.

The new Firefox landing page comes in two versions. The longer version, which is in the form of CEO’s letter, will be available in 12 locales. For those who are impacted by the late decision and timing of the finalized content, thanks to your dedication to address these localization requests at this late stage before a major launch.

For Mobile, we have locale specific requests for id (Firefox Rocket) and zh-TW. A new type of project called Mobile Contextual Hints create challenges for the select locales, as localizers must find creative ways to fit localized content in a tight space.

For the monthly email request from marketing team, we are making progress in convincing the team to move the project to Pontoon and communication through bugzilla, instead of individual emails.

What’s new or coming up in Foundation projects

The IoT survey results have been published! It will be promoted via various channel in the next days, but you can be amongst the first people to read it here. It’s great to see the diversity of respondents being represented in the report. And if you speak Spanish, in addition to our localized blog post, Univision published an article as well.

Also keep in mind that we’ve started ramping up our traditional fundraising campaign, now is a good time to complete the website translations and make sure everything looks good on the website. You might see a few edits to the website as we might try new experiments or land small improvements, or a few snippets to translate, but it shouldn’t be a lot of content. The main content that has yet to come is the fundraising emails (about 4 of them), they should all be ready mid-November and will target French, German, Spanish and Brazilian Portuguese in December. Stay tuned!

In terms of timing, the campaign will be quiet for the second half of November, to leave all the space to Quantum, then will ramp up again from the end of November and until December 31st.


  • Berlin Community meet-up: l10n has been invited to a cross-functional meeting from Nov 18-19, at the Mozilla Berlin office. The purpose of this meeting is to kick-off a conversation about volunteer leadership structures at Mozilla from the teams who are most connected to what we call “Non-Coding Enthusiasts”
  • Our last l10n hackathon this year is happening in Kolkata and on that same weekend:
  • Want to showcase an event coming up that your community is participating in? Reach out to any l10n-driver and we’ll include that (see links to emails at the bottom of this report)


We are still looking for an l10n intern next summer (“Community Localization Analyst”). You can apply here:

Friends of the Lion

Image by Elio Qoshi

  • Kudos to Sara and Sandro for doing a great job in organizing the work of new volunteers in the Italian community.
  • A huge thanks to Reza who has taken on the task of producing Focus for Android screenshots on a regular basis, so that the entire l10n community can check their work. It’s a hard and time-consuming task – so from the L10n and mobile teams: thank you Reza!

Know someone in your l10n community who’s been doing a great job and should appear here? Contact on of the l10n-drivers and we’ll make sure they get a shout-out (see list at the bottom)!

Sad News

It is with great sadness that we are announcing that our Fulah localizer and friend Mamadou Niang has passed away last week. He will be missed and we’ll have more to share about this tragic matter in a subsequent blog post.

Useful Links

Questions? Want to get involved?

Did you enjoy reading this report? Let us know how we can improve by reaching out to any one of the l10n-drivers listed above.

L10n Report: October Edition

Please note some of the information provided in this report may be subject to change as we are sometimes sharing information about projects that are still in early stages and are not final yet.


New localizers

  • Mika just started getting involved in the Finnish localization team. Welcome Mika!

Are you a locale leader and want us to include new members in our upcoming reports? Contact us!

New content and projects

What’s new or coming up in Firefox desktop

Firefox 57 is now in Beta. The deadline to get your localization updates into release is November 1st, please make sure to catch up with missing strings (if you need) and get as many eyes as possible on the versions of Firefox localized in your language.

On a positive note, now that cross-channel is ready and running, you only have to translate strings once for both Nightly and Beta.

Going into localization details: we’ll soon start localizing the Form Autofill system add-on, while we’re studying how to expose strings for about:studies.

Nepali (ne-NP), after a bit of a pause, is trying to ride the release train with 58: if you speak the language, download the Nightly build and help them finding and fixing issues.

Do you speak Assamese, Interlingua, Lao, Latgalian, Maithili, Malayalam, or Tagalog and want to help? Read this blog post.

What’s new or coming up in mobile

Focus iOS and Focus Android are not only now following a bi-weekly release cadence – but the releases are finally synced! Check out the Focus iOS release schedule, as well as the Focus Android one, for more specific details. Note that we do not put the l10n deadlines in Pontoon anymore, given we would have to change them every two weeks.

Firefox iOS strings for v10 strings should be coming shortly. There will be some great improvements with the v10, so stayed tuned on the dev-l10n mailing list to know when that happens (l10n deadline will also be entered in Pontoon)!

On a related note: have you noticed that Firefox iOS v9 now has Tracking Protection turned on by default for Private Browsing mode – and can easily be enabled for normal mode? It was one of the most requested features, and was therefore implemented. Firefox iOS 9.0 also provides improved bookmarks synchronization across devices. It makes the sync functionality – updating passwords, history and bookmarks between mobile and desktop – better and seamless.

On the Focus Android side, there are now multiple tabs! More information about the new Firefox iOS and Focus Android features can be found here. You can also join the public beta for Focus on Android channel on the Google Play Store now. Setup auto-update in the Google Play store to automatically get a new beta version once it’s available. More details here.

And last but not least, there’s a new mobile project targeting Indonesia, called Firefox Rocket. The soft launch was Monday, and it was released as a public beta. It is an experimental fast and lightweight browser made for the needs of emerging markets. The actual launch is targeted some time in November. If you are not in Indonesia, you can try out the app via the apk here.

As you can see, many of our projects are not only growing and improving – more and more new ones are created as well! As part of this ongoing growth, we’d also like to expand the number of localizations that we ship on mobile. As a first step in this direction, we’d like to invite anyone speaking Swahili or Amharic to come join the localization effort. Feel free to contact Delphine about this if you’re interested!

What’s new or coming up in web projects

[]: Thanks to all the communities for working hard to clear the web project dashboard. The anticipated new and updated pages will be coming your way on a weekly basis in the next few weeks. Keep an eye on the mailing list and always refer to the web dashboard for pending tasks.

[Marketing]: Firefox Rocket campaign messages written for the Indonesian market were prepared and localized by a local marketing agency. Huge thanks to the Indonesian community who was involved in reviewing and revising the campaign messages.

[Engagement]: Expect requests for the monthly snippets and emails in the default language sets in the weeks leading up to Firefox Quantum launch. Also the monthly email content is now staged in Pontoon for localization. If your community wants to move this project from spreadsheet to Pontoon, let us know!


  • Firefox Privacy Notice was rewritten for #56 and localized in select few languages. Thanks to all who took the time to review and fix linguistic and formatting errors. Your feedback was relayed to the agency. There will be an update for #57. Impacted teams will be notified when the updates are ready for review.
  • Firefox + Cliqz Privacy Notice in German: This was rewritten but largely leveraged from the new Firefox Privacy Notice. German docs were reviewed by legal counsel hired by legal team. There could be a revision as well.
  • Firefox Rocket Privacy Notice in indonesian: This is a brand new doc for a brand new product. The l10n community will be notified when it is ready for review.

What’s new or coming up in Foundation projects

We are happy to report some nice improvements to the donate experience, we’ve finally added support for SEPA donations! And we also removed fees for checks in foreign currencies. All that for both donations to Mozilla Foundation and Thunderbird. We expect this to have a positive impact on donation, and to lower frustration of our donors. We’ve updated the FAQs and donation instructions, so if your locale is not complete for the Fundraising project, help us reach 100% before our big push over the next weeks!

Next steps for fundraising are tweaking our snippets (a longer copy test should be starting really soon), then localizing emails starting mid-November that should be sent at the end of November and until the end of the year.

After several schedule changes at the European Parliament, the Copyright campaign is kicking off again this week.

We’ve got great findings to report after analyzing the (many) responses to the IoT survey launched in August. If you want to be among the first people to read them, help us localize our report in German, Spanish, French, Italian or Brazilian Portuguese!

We are also working in the U.S. with Univision on a holiday guide in English and Spanish featuring product reviews (of toys, game systems, fitness trackers, home assistants, smart TVs, and more) written by experts in our network. The main goal is to help people make educated choices, taking privacy & security into consideration before buying new connected devices.

Finally, MozFest is starting in a few days in London! If you’re attending, you may run into Théo. Say hi!

What’s new or coming up in Pontoon

As of the last week of September Pontoon exposes data about projects and locales through a publicly available API. Read more about it in the blog post. If you’re interested in the planning process of the upcoming milestones refer to the L10n:Pontoon/API wikipage.

We’ve also landed several optimizations; searching for strings is now 60% faster and we’ve also improved load times of various pages:

What’s new or coming up in Transvision

In the next few days, Transvision will support cross-channel for Gecko-based products, this means you will be able to search for strings in Beta and Nightly from a single place (and Release as soon as 57 is released).

We are also adding support for Focus for iOS and Android! There will also be some minor improvements, stay tuned.

Newly published localizer facing documentation

Several documents have been published over the last month, check them out!


  • Want to showcase an event coming up that your community is participating in? Reach out to any l10n-driver and we’ll include that (see links to emails at the bottom of this report)

Friends of the Lion

Image by Elio Qoshi

  • Benny Chandra is instrumental in the success of a brand new Mozilla product launch in Indonesia – a test market. He led the community in advising marketing team the message in English, reviewing and revising localized copy from a local marketing agency.  Thank you for being always responsive and for finding the time to address requests from the marketing team.
  • Kohei’s work and impact can be seen in many web projects. He is the unofficial liaison between the legal team and l10n team. He is the go-to person to review updates, manage and coordinate staging and production push which is manual. His involvement is much needed with recent rounds of legal documentation updates.

Know someone in your l10n community who’s been doing a great job and should appear here? Contact on of the l10n-drivers and we’ll make sure they get a shout-out (see list at the bottom)!

Useful Links

Questions? Want to get involved?

Did you enjoy reading this report? Let us know how we can improve by reaching out to any one of the l10n-drivers listed above.

Exposing Pontoon Data Through API

Application Programming Interface, or API for short, is how computer programs talk to each other. As of the last week of September Pontoon exposes data about projects and locales through a publicly available API.

In this first iteration we focused on one use-case outlined in bug 1302053.

It would be really useful being able to retrieve information from Pontoon via API. Interesting queries:

  • Stats for a locale: supported projects, status of each project.
  • Stats for a project: supported locales, incomplete locales, complete locales.

After a thorough discussion and research we settled on using GraphQL. GraphQL is both a language for describing the API queries and a runtime for running these queries against the real data. It was created by Facebook and has lately seen a lot of adoption due to its declarative nature, predictability of results and the GraphiQL IDE which allows to easily explore the API and test different queries in the browser.

With GraphQL, the users of the API have precise control over the data the API returns. In the following example, the API will return a list of all active projects and for each project listed only its name will be retrieved.

query {
    projects {

It’s also easy to query data spanning multiple relations in the data model. In the following example for every active project the API will also return a list of locales for which the project has been enabled.

query {
    projects {
        localizations {
            locale {

Queries can be made using GET and POST requests alike. Here are a few real-life examples which illustrate what’s already possible in the current version of the API:

In an effort to make it easy to get started with the API and make the available data discoverable, the first milestone of the API ships with the GraphiQL IDE. GraphiQL is a query editor which runs in the browser. You can use it to explore the API and test queries in the browser. Currently it’s only available in local deployments of Pontoon at http://localhost:8000/graphql. In the future we plan to enable it on production as well.


The end goal is to expose almost all data that Pontoon stores and processes: translations and suggestions, contributors’ activity, notifications and others.  Ultimately the API will also allow writing to the database and will become the back-end for the future versions of Pontoon. We’d like to keep the development of the API use-case-driven. If you’re interested in creating a report or an extension which pulls data from Pontoon please let us know about your use-case! We’d like to prioritize the upcoming features to best serve the needs of the community. Refer to the L10n:Pontoon/API wikipage for more information about the planning process.