Aller au contenu | Aller au menu | Aller à la recherche

jeudi 19 décembre 2013

My Q4-2013 report

It's the end of the quarter, just list last quarter I wrote down a summary of what I did this quarter for Mozilla for posterity, here it is ;)

Tools and code

Once again, I spent significant time working on tools this quarter. My activity was focused on Transvision, Langchecker and my FirefoxOS minidashboard.

There were 2 releases of Transvision, 2.9 and 3.0, adding many new features and additional support for Gaia repositories. I also created a #transvision IRC channel on Mozilla IRC server. You can now search strings for 3 locales simultaneaously, check all existing translations for an entity, list all potentially wrong varables in your repo or quickly check  all strings that need some extra QA for Firefox OS.

There were also many improvements to langchecker, the tool that I now maintain with my colleague Francesco Lodolo to track and manage progress of translations for projects using our .lang format. Many views were improved and we added features specific to the metadata used on mozilla.org (page activation and home page promos). We also added checks for UTF8 validity of the source files as well as checks for broken or missing python-style replacement variables in translations. We can also know how much of our l10n user base we cover not only per page but also per string on a page, which allows us to decide when we can activate a minor but visible text change on our pages (recently for example, html meta description and title tag changed for SEO reasons on the Firefox download pages).

As for my FirefoxOS mini dashboard (which syndicates data from the l10n dashboard, the langchecker and also contains some manually maintained data sources), it followed Gaia progresses and now tracks Gaia 1.1 and 1.2 in addition to the master branch.

Community building

This quarter I found 8 new localizers for mozilla.org and key Firefox web parts for the following locales: Afrikaans, Arabic, Basque, Bulgarian, Czech, Slovak and Spanish (Mexico). As usual I tried to focus on helping teams that lack manpower and / or maintain Firefox for a minor language.

I also created / revived IRC channels for these locales to help community building:  Catalan (#mozilla-cat), Slovak (#mozilla-sk) and Serbian (#mozilla.sr).

If we can find 5 to 10 localizers working on key content every quarter, we shouldn't have any problem growing with all of our locales together in the years to come, the thing is that we have to be proactive and look for these people and not wait for them to come to us :),

Events

The only event I went to was the Mozilla Summit, it was great and very productive from a localization point of view, I worked with Dwayne who maintains Locamotion, the Pootle instance focused on Mozilla projects for minor locales (Firefox, mozilla.org content, Firefox OS, Firefox health report) and we worked on improving our collaboration. One of the immediate results this quarter is that now we automate imports of strings for mozilla.org from Locamotion, which takes us a few minutes of work per week  and is faster for both Dwayne and ourselves. We are working on how to make it easier for locales on Locamotion to also follow mozilla.org work as this happens at a much quicker pace than product localization.

I also talked and worked with many localizers either on their specific issues (for example Brano and Wlado from the Slovak team asked me for help finding new localizers) or to check what problems a locale has and how to fix them.

Mozilla.org

A lot of work happened on mozilla.org this quarter. The most visible one is that we now have the home page available in 55 languages, versus 28 at the end of the last quarter. This is a steadily growing number, I hope that we can get the page in 70 locales, the most important is of course maintenance over time. The home page received also several updates promoting various topics and we scaled out l10n work to cover that (end of year donation promo, lightbeam, webmaker, addons). The webdev team implemented a way for us (l10n-drivers) to manage the activation of promos on the home page without code changes thanks to metadata in our lang files, that allowed us to never show mixed language content on the home page and activate these promos for locales as they get done.

Key pages in the main menu (products, mission, about, contribute) are all localizable and localized to about the same scale as the main page. Other key download pages (firefox/channels and firefox/installer-help) pages are also now translated anf maintained at large scale. Lightbeam and State of Mozilla sections were proposed as opt-in projects and have many translations (between 15 and 20 languages). I am happy that we were able to scale the localization of mozilla.org in terms of content (more pages, more content for products), number of locales and locale-specific improvements on the mozilla.org platform (better rtl support, better fonts, l10n friendly templates..), and our management tools to allow us to grow.

Another cool l10n feature that happened on the site was the creation of a 'translation bar' proposing you a mozilla.org page in your language if it exists. This was entirely done by a volunteer Mozillian, Kohei Yoshino, many thanks to him for this cool feature that may expand to other Mozilla sites ! Kohei wrote about it on the webdev blog. It is really cool to see improvements brought by volunteers and it is also cool to see that many people in the webdev team are also acquiring an l10n culture and often spot potential problems before myself or flod get to them !


That's all for this quarter, overall an excellent quarter for mozilla.org and tools which improve steadily. On a side note, it is also an excellent quarter for me at a personal level  as my daughter was born last month (which explains why I am less often connected  these days ;) )

mardi 1 octobre 2013

What I did in Q3

A quick recap of what I did in Q3  so as that people know what kind of work we do in the l10n-drivers team and because as a service team to other department, a lot of what we do is not necessarily visible.

Tools and code

I spent significantly more time on tool this quarter than in the past, I am also happy to say that Transvision is now a 6 people team and that we will all be at Brussels for the Summit (see my blog post in April). I like it, I like to create the small tools and scripts that make my life or localizers life better.

  • Two releases of Transvision (release notes) + some preparatory work for future l20n compatibility
  • Created a mini-dashboard for our team so as to help us follow FirefoxOS work
  • Wrote the conversion script to convert our Serbian Cyrillic string repository to Serbian Latin (see this blog post)
  • Turned my langchecker scripts (key part of the Web Dashboard) into a github project and worked with Flod on improving our management scripts for mozilla.org and fhr. A recent improvement is that we can now import automatically translations done on Locamotion You can see a list of the changes in the release notes.
  • Worked on scripts allowing to query bugzilla without using the official API (because the data I want is specific to the mozilla customizations we need for locales), that will probably be part of the Webdashboard soon so as to be able to extract Web localization bugs from multiple components (gist here). Basically I had the idea to use the CSV export feature for advanced search in Bugzilla as a public read-only API :)
  • Several python patches to mozilla.org to fix l10n bugs or improve our tools to ship localized pages (Bug 891835, Bug 905165, Bug 904703).

Mozilla.org localization

Since we merged all of our major websites (mozilla.org, mozilla.com, mozilla-europe.org, mozillamessaging.com) under the single mozilla.org domain name two years ago with a new framework based on Django, we have gained in consistency but localization of several backends under one single domain and a new framework slowed us down for a while. I'd say that we are now mostly back to the old mozilla.com speed of localization, lots of bugs and features were added to Bedrok (nickname of our Django-powered site), we have a very good collaboration with the webdev/webprod teams on the site and we are more people working on it. I think this quarter localizer felt that a lot more work was asked from them on mozilla.org, I'll try to make sure we don't loose locales on the road, this is a website that hosts content for 90 locales, but we are back to speed with tons of new people!

  • Main Firefox download page (and all the download buttons across the site) finally migrated to Bedrock, our Django instance.  Two major updates to that page this quarter (+50 locales), more to come next quarter, this is part of a bigger effort to simplify our download process, stop maintaining so many different specialized download pages and SEO improvements.
  • Mozilla.org home page is now l10n-friendly and we just shipped it in 28 languages. Depending on your locale, visitor see custom content (news items, calls for contribution or translation...)
  • Several key high traffic pages (about products updade) are now localized and maintained at large scale (50+ locales)
  • Newsletter center and newsletter subscription process largely migrated to Bedrock and additional locales supported (but there is still work to do there)
  • The plugincheck web application is also largely migrated to Bedrock (61 locales on bedrock, about 30 more to migrate before we can delete the older backend and maintain only one version)
  • The contribute page scaled up tp 28 locales with local teams of volunteers behind answering people that contact us
  • Firefox OS consumer and industry sub-sites released/updated for +10 locales, with some geoIP in addition to locale detection for tailored content!
  • Many small updates to other existing pages and templates

Community growth

This quarter, I tried to spend some time looking for localizers to work on web content as well as acompanying volunteers that contact us. I know that I am good at finding volunteers that share our values and are achievers, unfortunately I don't have that much time to spend on that. Hopefully I will be able to spend a few days on that every quarter because we need to grow and we need to grow with the best open source contributors! :)

  • About 20 people got involved for the folowing locales: French, Czech, Catalan, Slovenian, Tamil, Bengali, Greek, Spanish (Spain variant), Swedish. Several became key localizers and will be at the Mozilla summit
  • A couple of localizers moved from mozilla.org localization to product localization where their help was more needed, I helped them by finding new people to replace them on web localization and/or empowering existing community members to avoid any burn-out
  • I spent several days in a row specifically helping the Catalan community as it needed help to scale since they now also do all the mobile stuff. I opened a #mozilla-cat IRC channel and found 9 brand new volunteers, some of them professional translators, some of them respected localizers from other open source projects. I'll probably spend some more time to help them next quarter to consolidate this growth. I may keep this strategy every quarter since it seems to be efficient (look for localizers in general and also help one specific team to grow and organize itself to scale up)

Other

  • Significant localization work for Firefox Health Report, both Desktop (shipped) and Mobile versions (soon to be shipped)
  • Lots of meetings for lots of different projects for next quarter :)
  • Two work weeks, one focused on tooling in Berlin, one focused on training my new colleagues Peying and Francesco (but to be honest, Francesco didn't need much of it thanks to his 10 years of involvement in Mozilla as a contributor :) )
  • A lot of work to adjust my processes to work with my new colleague Francesco Lodolo (also an old-timer in the community, he is the Italian Firefox localizer). Kudos to Francesco for helping me with all of the projects! Now I can go on holidays knowing that i have a good backup :)

French community involvement

  • In the new Mozilla paris office I organized a meeting with the LinuxFR admins, because I think it's important to work with the rest of the Open Source ecosystem
  • With Julien Wajsberg (Gaia developer) we organized a one day meeting with the Dotclear community, a popular blogging platform alternative to  Wordpress in France (purely not-for-profit), because we think it's important to work with project that build software that allows people to create content on the Web
  • Preparation of more open source events in the Paris office
  • We migrated our server (hosting Transvision, womoz.org, mozfr.org...) to the latest Debian Stable, which finally brings us a decent modern version of PHP (5.4). We grew our admin community to 2 more people with Ludo and Geb :). Our server flies!

In a nutshell, a very busy quarter! If you want to speak about some of it with me, I will be at the Mozilla Summit in Brussels this week :)

lundi 17 janvier 2011

2010 yearly report

Here is my yearly report for 2010, this is the second time I do it. This year, I think that my work in the first semester was mostly around 3.6.4 and out of process plugins as well a the work related to the Windows ballot screen, while the second part of the year was more focused on Firefox 4 beta localization as well as Firefox Mobile.

One of the big achievements is probably that we were able to propose a beta cycle for Firefox 4 that also had localized web content for almost all betas, with subtitled videos and promotions. The idea was to help growing the community around beta testing for localized versions of Firefox so as to get feedback from users all around the workd. The end of the year was marked by the redesign of mozilla.com which impacted all of our locales.

I also feel that I did more coding this year than last year and that I improved at it, which is cool :)

I tried to categorize what I worked on last year in digestable sections, but of course this is always a bit artificial.

Release work (in-product pages)

  • 2 major releases: Firefox 3.6 (74 locales)  and Firefox Mobile 1.0 (18 locales)
  • 26 other releases (minor versions of Firefox and Thunderbird)
  • End of life pages for 3.0.19, reusable for future obsolete releases as well
  • Major update messaging for 3.0.x users

Community work

  • Went to 18 events (5 of them internal Mozilla events) like Fosdem, MozCamp Balkans, Ubuntu parties, Solutions Linux, OpenWorld Forum, Campus Party Valencia, Paris Web... More local events and a bit less travelling abroad this year compared to 2009, I also helped colleagues organize a few events I didn't go to.
  • With Mounir Lamouri (in charge of HTML5 Forms in Firefox 4) and Vivien Nicolas (Front-end developer for the mobile version of Firefox), we did a one day hackfest in December in the Paris office called "getting involved in beta testing and mozilla code" with local volunteers that we met at other open source events. We intend to continue this in 2011 and build a new generation of  hackers  around the Mozilla project in addition to our historical community, speciffically a community focused on mozilla code and beta testing.
  • Launched with Clarista (from the WoMoz community) bonjourmozilla.fr, a community site presenting every day a mozilla related picture, mostly presenting community members from the French community. This site is Claire's idea and I take  care of the web dev requirements (backend and front end).  The site is steadily growing in popularity with now more than 1000 unique visitors per day.
  • Worked with Laurent Jouanneau and Vivien Nicolas on generating weekly reports stats for several of the community sites I am involved in (planet.mozfr.org, www.mozfr.org, womoz.org, bonjourmozilla.fr)
  • mozilla.se now longer points to old mozilla suite 1.7 pages, now points to mozilla-europe.org/sv/
  • Created a mailing-list on mozilla-europe mailing list system for the Swedish l10n community
  • Kept on blogging in French about community building, QA and getting involved in Mozilla
  • Worked with Delphine on doing an inventory of Women working for Mozilla, resulted in a blog post

Promotional work

  • Worked on opentochoice.org localization with Stas and the marketing team
  • Worked on the ballot screen localization (messages provided by Microsoft and a mini website) with Stas
  • Gave several Radio and press interviews to the Spanish press (Onda Cero Euskadi, COPE Sevilla, Radio Euskadi, Netmedia Europe, IT Expresso, Cadena Ser)
  • regular monthly updates to the promotional snippets on the Firefox home page hosted by Google, improved the workflow with google by setting up a production tag on svn and a testing server on our side.
  • launched Student Reps website in 5 languages
  • lot of work along the year to promote globally Out of Process plugins since Firefox 3.6.4, Firefox Mobile and Firefox 4 beta in the last quarter.
  • Created pages for Firefox Home in 17 locales on the iPhone as well as product descriptions on the android marketplace (we created a special repo for "special projects" like the android market place since they don't fit in our repos,  https://svn.mozilla.org/projects/l10n-misc/trunk/)

Web developement

My work on web localization involves quite a lot of development work, since we have several sites and often build specific sites or new sections on our sites for marketing campaigns, I often have to add new features or find ways to be more flexible to allow faster release cycles:
  • Added a simple country-level geoIP support on mozilla europe in addition to our system based on HTTP accept-lang headers (we use it only for a few specific cases)
  • Improved my locale detection library, documented a demo with the source.
  • added video subtitling system for Firefox 4 beta pages using the <video> tag. This is based on the Timesheets javascript library created by Fabien Cazenave, kudos to him for helping us with it. Also added a double-subtitles view (English + translated) for quick proofreading.
  • Added new feature to the class  generating our download boxes on all mozilla sites, we can now easily mark a specific OS/locale couple as unavailable and it will be displayed as 'Not Yet Available' our our downloads listing page. Download boxes will be generated per platform with a fallback to English, so if Persian is not released for Mac for example, Windows and Linux visitors will still get proposed a localized version on our pages. Should give us more freedom to ship locales on partial OSes offerings.
  • Improved significantly page load speed on mozilla-europe.org with a specific focus on download pages so as to improve conversion rates
  • rewrote a large part of our page building system on both mozilla.com and mozilla-europe.org, documents are now easier to swap and link between the two sites, it is also much easier to use multiple templates and themes. Implemented site-wide theme switching on mozilla-europe.org but still experimental for now.
  • Mozilla.com was entirely redesigned in December with a new theme (project Nova), all localized pages ever created were migrated in that new refreshed design
  • lots of small code improvements on the sites

Other

  • One day conference at the MIAGE conference meeting of Aix, France (annual gathering of all teachers from universities teaching computing for business). Done with Fabien Cazenave who works on a seneca-like project since 2009 at University of Evry.
  • Milos Dinic, our Serbian Web localizer, is doing an internship with me on Web l10n QA and helping localizers getting involved since October
  • We moved to a new bigger office in Paris and it's already full of people, Europe is growing!
  • wrote my first Firefox UI patches (Linux version), one of them was approved \o/
  • Created a new Mozilla theme for my blog :)