{"id":1738,"date":"2025-01-02T10:02:54","date_gmt":"2025-01-02T10:02:54","guid":{"rendered":"https:\/\/blog.mozilla.org\/l10n\/?p=1738"},"modified":"2025-01-02T17:15:35","modified_gmt":"2025-01-02T17:15:35","slug":"mozilla-localization-in-2024","status":"publish","type":"post","link":"https:\/\/blog.mozilla.org\/l10n\/2025\/01\/02\/mozilla-localization-in-2024\/","title":{"rendered":"Mozilla Localization in 2024"},"content":{"rendered":"<h2>A Year in Data<\/h2>\n<p>2024 was a year with plenty of achievements for the Mozilla localization community (here\u2019s the <a href=\"https:\/\/blog.mozilla.org\/l10n\/2024\/01\/15\/mozilla-localization-in-2023\/\">2023 report<\/a> in case you missed it, or want to check how we fared against our original plans). Let\u2019s start with the numbers first:<\/p>\n<ul>\n<li aria-level=\"1\">30 projects (-2 compared to last year) and 369 locales (+111) set up in <a href=\"https:\/\/pontoon.mozilla.org\/\">Pontoon<\/a>.<\/li>\n<li aria-level=\"1\">4,991 new user registrations<\/li>\n<li aria-level=\"1\">1,202 active users, submitting at least one translation (on average 222 users per month)<\/li>\n<li aria-level=\"1\">466,187 submitted translations<\/li>\n<li aria-level=\"1\">385,722 approved translations<\/li>\n<li aria-level=\"1\">20,931 new strings to translate<\/li>\n<\/ul>\n<p>While the overall number of projects decreased, this is mostly due to removal of obsolete projects (we actually added a new one in November). The astounding increase in the number of locales is driven once again by <a href=\"https:\/\/commonvoice.mozilla.org\">Common Voice<\/a>, which has 318 locales enabled in Pontoon.<\/p>\n<p>Thank you to all the volunteers who contributed their time, passion, and expertise to Mozilla\u2019s localization over the last 12 months.<i><\/i><\/p>\n<h2>Pontoon Development<\/h2>\n<p>At the start of the year, we focused on improving Pontoon\u2019s performance \u2014 a less glamorous but essential part of maintaining an effective platform: if the platform doesn&#8217;t perform well, users can quickly lose motivation and stop contributing. To assess the current state, we used the <a href=\"https:\/\/docs.newrelic.com\/docs\/apm\/new-relic-apm\/apdex\/apdex-measure-user-satisfaction\/\">Apdex<\/a> score, a standard measure of user satisfaction for web application performance. Between January and March, we successfully raised the average score for our lowest performing transactions from 0.77 to 0.87, making significant progress toward achieving what is considered a \u201cgood\u201d performance level. Later in the year, we also moved to a larger database plan to further improve performance.<\/p>\n<p><a href=\"https:\/\/blog.mozilla.org\/l10n\/files\/2025\/01\/image5.gif\"><img decoding=\"async\" loading=\"lazy\" class=\"aligncenter size-full wp-image-1743\" src=\"https:\/\/blog.mozilla.org\/l10n\/files\/2025\/01\/image5.gif\" alt=\"Animated GIF showing Pontoon's LLM integration in the machinery tab.\" width=\"600\" height=\"654\" \/><\/a>In May, we launched our <a href=\"https:\/\/blog.mozilla.org\/l10n\/2024\/05\/28\/transforming-translations-how-llms-can-help-improve-mozillas-pontoon\/\">first LLM integration<\/a>. Users now have additional options if they\u2019re not satisfied with the suggestion provided by Google Translate. They can choose from three actions: <b>Rephrase<\/b>, to generate an alternative version; <b>Make formal<\/b>, to adjust the tone to a more formal register; and <b>Make informal<\/b>, to create a more casual version. These options are especially valuable for languages like German or Spanish, where tone can significantly impact translation quality and consistency.<\/p>\n<p>Between May and December 2024, this feature has been used 2,571 times across 69 locales, with approximately 35% of the generated text being copied into the editor. This adoption rate suggests that the feature is delivering good-quality results and meeting user needs effectively, and that we should look into expanding its use.<\/p>\n<p><a href=\"https:\/\/blog.mozilla.org\/l10n\/files\/2025\/01\/image7.png\"><img decoding=\"async\" loading=\"lazy\" class=\"aligncenter size-full wp-image-1745\" src=\"https:\/\/blog.mozilla.org\/l10n\/files\/2025\/01\/image7.png\" alt=\"Screenshot of Pontoon advanced search options.\" width=\"481\" height=\"266\" srcset=\"https:\/\/blog.mozilla.org\/l10n\/files\/2025\/01\/image7.png 481w, https:\/\/blog.mozilla.org\/l10n\/files\/2025\/01\/image7-300x165.png 300w\" sizes=\"(max-width: 481px) 100vw, 481px\" \/><\/a>In October, we introduced advanced search options, giving users more flexibility and precision in finding the content they need. By default, Pontoon now searches through source text, approved translations, and pending suggestions. However, users still retain the option to expand their search to include identifiers, rejected translations, or further refine results by matching case or whole words.<\/p>\n<p>For more details on how to use this feature, check out <a href=\"https:\/\/mozilla-l10n.github.io\/localizer-documentation\/tools\/pontoon\/translation_workspace.html#search\">our documentation<\/a>. We\u2019re currently analyzing the usage data to understand if we should change the default options, and exploring how to make the feature more discoverable.<\/p>\n<p><a href=\"https:\/\/blog.mozilla.org\/l10n\/files\/2025\/01\/image3.png\"><img decoding=\"async\" loading=\"lazy\" class=\"aligncenter size-large wp-image-1741\" src=\"https:\/\/blog.mozilla.org\/l10n\/files\/2025\/01\/image3-600x327.png\" alt=\"Screenshot of translation memory management in Pontoon\" width=\"600\" height=\"327\" srcset=\"https:\/\/blog.mozilla.org\/l10n\/files\/2025\/01\/image3-600x327.png 600w, https:\/\/blog.mozilla.org\/l10n\/files\/2025\/01\/image3-300x165.png 300w, https:\/\/blog.mozilla.org\/l10n\/files\/2025\/01\/image3-768x418.png 768w, https:\/\/blog.mozilla.org\/l10n\/files\/2025\/01\/image3-1536x837.png 1536w, https:\/\/blog.mozilla.org\/l10n\/files\/2025\/01\/image3-1000x545.png 1000w, https:\/\/blog.mozilla.org\/l10n\/files\/2025\/01\/image3.png 1999w\" sizes=\"(max-width: 600px) 100vw, 600px\" \/><\/a>December was an especially busy month for releasing new features. We kicked things off with the long-awaited ability to <a href=\"https:\/\/mozilla-l10n.github.io\/localizer-documentation\/tools\/pontoon\/teams_projects.html#translation-memory-management\">edit translation memory (TM) entries<\/a>, addressing one of the most frequently requested enhancements from our users. Shortly after, we introduced another powerful feature: the ability to <b>upload custom translation memories<\/b> in TMX format, giving locales even more control over their localization workflows.<\/p>\n<p><a href=\"https:\/\/blog.mozilla.org\/l10n\/files\/2025\/01\/image6.png\"><img decoding=\"async\" loading=\"lazy\" class=\"aligncenter size-large wp-image-1744\" src=\"https:\/\/blog.mozilla.org\/l10n\/files\/2025\/01\/image6-600x330.png\" alt=\"Image showing achievement badges available in Pontoon.\" width=\"600\" height=\"330\" srcset=\"https:\/\/blog.mozilla.org\/l10n\/files\/2025\/01\/image6-600x330.png 600w, https:\/\/blog.mozilla.org\/l10n\/files\/2025\/01\/image6-300x165.png 300w, https:\/\/blog.mozilla.org\/l10n\/files\/2025\/01\/image6-768x422.png 768w, https:\/\/blog.mozilla.org\/l10n\/files\/2025\/01\/image6-1000x550.png 1000w, https:\/\/blog.mozilla.org\/l10n\/files\/2025\/01\/image6.png 1400w\" sizes=\"(max-width: 600px) 100vw, 600px\" \/><\/a>We also launched our <a href=\"https:\/\/blog.mozilla.org\/l10n\/2024\/12\/11\/celebrating-pontoon-contributors-with-achievement-badges\/\">first glimpse of gamification<\/a>! Users can now earn three different types of badges for translating, reviewing, and promoting other contributors. The goal isn\u2019t just to recognize and celebrate the invaluable efforts of volunteers but also to encourage positive behaviors. These include reviewing others\u2019 work and promoting promising contributors, helping communities grow and encouraging effective participation across the platform.<\/p>\n<p><a href=\"https:\/\/blog.mozilla.org\/l10n\/files\/2025\/01\/image4.png\"><img decoding=\"async\" loading=\"lazy\" class=\"aligncenter size-large wp-image-1742\" src=\"https:\/\/blog.mozilla.org\/l10n\/files\/2025\/01\/image4-600x142.png\" alt=\"Available user banners in Pontoon.\" width=\"600\" height=\"142\" srcset=\"https:\/\/blog.mozilla.org\/l10n\/files\/2025\/01\/image4-600x142.png 600w, https:\/\/blog.mozilla.org\/l10n\/files\/2025\/01\/image4-300x71.png 300w, https:\/\/blog.mozilla.org\/l10n\/files\/2025\/01\/image4.png 608w\" sizes=\"(max-width: 600px) 100vw, 600px\" \/><\/a>As part of this work we also introduced <a href=\"https:\/\/mozilla-l10n.github.io\/localizer-documentation\/tools\/pontoon\/translation_workspace.html#user-banners\">user banners<\/a> to help clarify roles within a locale or project.<\/p>\n<p>Finally, we wrapped up the year by enhancing Pontoon\u2019s ability to keep users informed. Users can now opt to <a href=\"https:\/\/mozilla-l10n.github.io\/localizer-documentation\/tools\/pontoon\/users.html#notification-subscriptions\">receive notifications via email<\/a>, choosing between daily or weekly updates. Additionally, we introduced a <b>Monthly Activity Summary<\/b> \u2014 a digest that highlights both their personal contributions and their team\u2019s activity. If you\u2019re a locale manager, we highly recommend enabling this feature to stay on top of your community\u2019s progress and engagement.<\/p>\n<p><a href=\"https:\/\/blog.mozilla.org\/l10n\/files\/2025\/01\/image2.png\"><img decoding=\"async\" loading=\"lazy\" class=\"aligncenter size-large wp-image-1740\" src=\"https:\/\/blog.mozilla.org\/l10n\/files\/2025\/01\/image2-600x432.png\" alt=\"Email options in Pontoon's profile settings.\" width=\"600\" height=\"432\" srcset=\"https:\/\/blog.mozilla.org\/l10n\/files\/2025\/01\/image2-600x432.png 600w, https:\/\/blog.mozilla.org\/l10n\/files\/2025\/01\/image2-300x216.png 300w, https:\/\/blog.mozilla.org\/l10n\/files\/2025\/01\/image2-768x553.png 768w, https:\/\/blog.mozilla.org\/l10n\/files\/2025\/01\/image2-1000x720.png 1000w, https:\/\/blog.mozilla.org\/l10n\/files\/2025\/01\/image2.png 1278w\" sizes=\"(max-width: 600px) 100vw, 600px\" \/><\/a>If you check your settings, you\u2019ll find a new option for <b>News and Updates<\/b>. We highly encourage users to enable this checkbox to stay informed about online events, new features, surveys, and more. The content will be strictly focused on Mozilla Localization and Pontoon, and you can opt out or change your preferences at any time.<\/p>\n<p>Lastly, a lot of work happened behind the scenes to improve Pontoon&#8217;s functionality and stability. We introduced the <i>Messaging Center<\/i>, a new feature that enables program managers to communicate with users more effectively through targeted notifications or emails.<\/p>\n<p>In addition, we\u2019ve been rewriting the code responsible for syncing Pontoon with repositories. This foundational work lays the groundwork for a broader set of initiatives planned for 2025. We also implemented measures to mitigate DDoS attacks, ensuring the platform remains stable, secure, and reliable for all users.<\/p>\n<h2>Community<\/h2>\n<p>This year, we collaborated with members of the community and other community-focused teams at Mozilla to improve our existing documentation and create comprehensive <a href=\"https:\/\/mozilla-l10n.github.io\/localizer-documentation\/community\/l10n_community_roles.html\">community guidelines<\/a> aimed at building vibrant and sustainable communities. These guidelines address key topics, such as the expectations for managers and translators, and provide clear processes for assigning permissions to new contributors when existing leaders are not available.<\/p>\n<p>Unfortunately, the situation around in-person community events hasn\u2019t changed. We know how important these gatherings are for you \u2014 and for us \u2014 but in the meantime, we continued to focus on organizing online events. You can find all the recordings for the 2024 events <a href=\"https:\/\/mozilla.hosted.panopto.com\/Panopto\/Pages\/Sessions\/List.aspx#folderID=%220e65cd7b-1564-4b1c-9537-aff1000a5aa5%22\">here<\/a>. We\u2019ve also recorded an <a href=\"https:\/\/www.youtube.com\/watch?v=FRpGe9MLbUA&amp;t=93s\">Introduction to Pontoon<\/a>, designed to help onboard new contributors and familiarize them with the platform.<\/p>\n<h2>What\u2019s coming in 2025<\/h2>\n<p>While we made significant strides in improving Pontoon\u2019s performance this year, we believe that we\u2019ve reached the limits of our current setup. As we move into the new year, our focus will shift to exploring alternative deployment solutions. Our goal is to make Pontoon faster, more reliable, and better equipped to meet the needs of our users.<\/p>\n<p>We aim to make mobile projects (Android and iOS) first-class citizens in our localization ecosystem. The first step is introducing support for plural forms, which will significantly enhance the localizability of these projects. This improvement will enable more natural-sounding content in English and other languages, ensuring a better experience for both contributors and end users.<\/p>\n<p>Talking about Pontoon, we\u2019re committed to improving translation memory utilization, particularly for handling multi-value strings commonly found in Fluent. Currently, Pontoon only suggests translations for a single value within these strings. Moving forward, we aim to provide suggestions or translation memory matches for entire strings, ensuring a more comprehensive and efficient translation experience.<\/p>\n<p>We plan to work on a <b>Mozilla Language Portal <\/b>\u2014 a unified hub that highlights Mozilla\u2019s unique approach to localization while serving as a comprehensive resource for translators. This webpage will feature searchable translation memories, a rich repository of documentation, best practices, blogs, and more, fostering knowledge-sharing and collaboration across the global translation community.<\/p>\n<p>Finally, we will continue exploring innovative ways to engage our community and strengthen its connections. As part of this work, we will keep advocating for increased investment in community building at the organization level, emphasizing its critical role in driving our mission forward.<\/p>\n<p>If you have any thoughts or ideas about this plan, let us know on <a href=\"https:\/\/fosstodon.org\/@mozilla_l10n\/\">Mastodon<\/a> or <a href=\"https:\/\/chat.mozilla.org\/#\/room\/#l10n-community:mozilla.org\">Matrix<\/a>!<\/p>\n<h2>Thank you!<\/h2>\n<p>As we step into 2025, we\u2019re constantly reminded of the transformative power of localization. Together, we\u2019ll continue to break down barriers, and create a digital world that speaks everyone\u2019s language. Thank you for being part of this journey.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>A Year in Data 2024 was a year with plenty of achievements for the Mozilla localization community (here\u2019s the 2023 report in case you missed it, or want to check &hellip; <a class=\"go\" href=\"https:\/\/blog.mozilla.org\/l10n\/2025\/01\/02\/mozilla-localization-in-2024\/\">Read more<\/a><\/p>\n","protected":false},"author":663,"featured_media":1739,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[12691,137],"tags":[],"_links":{"self":[{"href":"https:\/\/blog.mozilla.org\/l10n\/wp-json\/wp\/v2\/posts\/1738"}],"collection":[{"href":"https:\/\/blog.mozilla.org\/l10n\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/blog.mozilla.org\/l10n\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/blog.mozilla.org\/l10n\/wp-json\/wp\/v2\/users\/663"}],"replies":[{"embeddable":true,"href":"https:\/\/blog.mozilla.org\/l10n\/wp-json\/wp\/v2\/comments?post=1738"}],"version-history":[{"count":0,"href":"https:\/\/blog.mozilla.org\/l10n\/wp-json\/wp\/v2\/posts\/1738\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/blog.mozilla.org\/l10n\/wp-json\/wp\/v2\/media\/1739"}],"wp:attachment":[{"href":"https:\/\/blog.mozilla.org\/l10n\/wp-json\/wp\/v2\/media?parent=1738"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/blog.mozilla.org\/l10n\/wp-json\/wp\/v2\/categories?post=1738"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/blog.mozilla.org\/l10n\/wp-json\/wp\/v2\/tags?post=1738"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}