Once upon a time there was a string freeze… pt.2

Since it probably looks like my favorite hobby is whining without a reason, let’s check what happened so far (always an optimist…) in this cycle.

Broken strings in Mozilla Beta

  • Bug 797036 – Update updater strings and icon
  • Bug 803344 – poor discoverability of the enable/disable menu item for Social API

Landing strings in Beta means that we did something wrong before (haste of moving forward features that weren’t probably ready, “we need this in ESR”, etc.).

Broken strings in Mozilla Aurora

Obviously the two changesets landed on beta, plus:

  • Bug 795691 – b2g fixes for the web console actors
  • Bug 800373 – Change marketplace strings to ‘Firefox Marketplace’

Consider several adding/removing strings both in beta and aurora (e.g. Bug 803630 or Bug 760951) and you’ll get the picture.

Bug 797036 is a good example of how bad we are working on the l10n side lately:

  1. changes land on central on Oct 02 16:34:08 (end of cycle is only 6 days ahead)
  2. the day after I wrote a comment in the bug about the bad review (that’s pure luck, I don’t work on localization every day, and there are very few localizers doing this kind of checks on central)
  3. nobody reacts, bad strings move to aurora and we need to break string freeze

For a starter a better review process could have avoided all this.

Once upon a time there was a string freeze…

Nine months ago I wrote this post. Are things better now? Not at all, they keep getting worse.

When people asked me “how can you be happy with the rapid release cycle?”, I always answered “because finally I have a clear schedule”. Now imagine how I feel about the rapid release cycle.

I’m not a developer, I’m not an engineer either,  but guess what: if you’re breaking things every single cycle, you’re doing it wrong. I think it would be a good time to start thinking about it, maybe before localizers start giving up.

l10n Memo for the Next Meeting

My personal short memo for the next meeting, even if I’m sure Axel is already on this:

  • Aurora is supposed to be string frozen, so that localizers have a full cycle to update their localization, test their work and sign-off the best changeset available for Beta. This worked quite well for 5 releases, why did everything go wrong this time? We’re just a couple of days away from the end of this cycle (Firefox 10 release, Jan 30th), a backout on toolkit broke everything1 and then a bug on devtools added even more confusion.
  • Being a Mozilla localizer already requires an awful amount of technical skills, please don’t even think of adding more stuff on top of that (“why can’t we or localizers just retrieve the previous string from hg blame?”).
  • Working on two different repositories is painful (see Native Fennec), I realized that I can’t transplant changesets around because often they change more strings that I need, so I have to move text around manually. I’m scared of seeing what will happen when I’ll merge my work from central to aurora.

1 Thanks to our l10n logic this is not literally true, since products fall back to the English string. From my point of view, this still means “breaking things”: exposing a partial translated UI means lowering the quality of our work, and that’s not something I like to do.

Native Localized Android Build

Not without difficulties or issues, but it seems we finally have a localized native build on Android. Kudos to all people involved, I’m pretty sure there’s a lot of work behind this small screenshot (and there’s still a lot more to do).

Having said that, I still wish for better communication toward the project’s “periphery” (see for example how lively mozilla.dev.platforms.mobile is). When I found out that a native build was going to be released as Firefox 11 I was seriously annoyed: what about localized builds? Then I discovered on Mobile Test Drivers‘ mailing list that localization for Firefox 11 would start on aurora instead of central. Good to know, too bad I had absolutely no clue about that 😉

Dear reviewer,

I’m aware that l10n can be a nuisance for a lot of developers – and some localizers (e.g. me) can be a real pain in the *** – but when reviewing a patch that involve a change of existing strings you only have a short and quick checklist to follow:

  • Does the patch fix a typo or does it make a substantial change to the string? In the first case just fixing the string is fine, in the latter case you need to change the string ID, since not all localization tools (or localizers who simply use a text editor) can catch this kind of change.
  • Are you changing a string ID? Always check if there’s an associated access key and maintain the relation STRINGID.label <-> STRINGID.accesskey (again, localization tools rely on this kind of structure).

Once in a while a mistake can happen, but three times in a few days seems a bit out of average 😉

Many of the Mozilla localizers have met @Moz08, the Mozilla summit in Whistler
Happy localizers in Whistler ’08 (source Tristan Nitot)

What needs to happen before you open your eyes?

As already happened in the past on this blog, this is a guest post from my friend Iacopo Benesperi (iacchi), a long-standing member of the Italian Mozilla community. I agree with him that we’re living hard times, what’s happening inside our (small) community is probably happening elsewhere. And if it’s not clear, this post is here because we still care about Mozilla and its future 😉

This last has been a hard year for the Mozilla world, in many ways. What is left of this year, among other things, is a very tense situation; a feeling of estrangement in many people, a sour taste in the mouth.
It’s not hard to notice it: you can see it in a good bye letter due to a resignation; you can see it in more and more posts on the planet; you can see it in mail exchanges or chats with other community members; you can see it in long time community members leaving because they don’t believe anymore in what Mozilla is doing; you can see it in all the blog posts of lovers of the free (as in freedom) Web who, because of this reason, care about Mozilla; you can see it in the comments of normal, non-techie users on your national forum, people that choosed Mozilla not necessarily because it’s better, but because it’s different; you can see it in the words of an extension writer, saying that he’ll stop updating his extensions because it’s become impossible for him to keep the pace; you can see it almost everywhere. Everything you need to do to notice it is to open your eyes and start paying attention on what’s around you.

In this last year Mozilla has lost many people but many, many more are the ones who are just an inch away from leaving; people who stay because they care so much about Mozilla and the Manifesto, who think that they can still fight to push everything back on the right path, on what they believe is the right path.
I won’t say here what’s wrong and what should be done, it’s all written already. What I will say here is that if you keep going this way, when (not if) all the people mentioned above will leave Mozilla, or stop believing in it, you may even be able to keep working somehow; but from that moment on, every success (what you consider as a success, anyway) you’ll get, if you will get some, will be a Mozilla Company success, the Mozilla Project being dead already. You’ll may even be able to win the browser war in the future, going on this way, but you’ll have lost your soul in the process.

Back From Canada


Back to Italy from Vancouver the Summit of Awesomeness, still trying to catch up with the jet lag (9 hours). If you want to see some photos of the trip – both from Vancouver and the Summit in Whistler – I created a set on Flickr: feel free to add tags, comments or people to the photos.

It’s always a pleasure and honor to be part of the awesome, big and crazy Mozilla family 🙂

Technorati Tags: ,

European Browser Choice (With Screenshots)

[sound track] Woke up this morning, don’t believe what I saw… 😛

Note: I’ve received the update only on my HTPC (Windows Vista Ultimate English with Italian language pack), still nothing on my notebook (Windows 7 Ultimate Italian). I suppose the original language of the OS is the discriminant.

Update KB976002 is finally available.

Nothing happens after installing. If you reboot the system, you’ll see the Choice Screen (note also the new icon on the desktop).

First layer browsers in pseudo-random order.

Some “WTF moments”:

  • The “Learn More” link opens in a new Internet Explorer window, not inside the Choice Screen as I expected.
  • After downloading and installing Firefox as default browser, the “Browser Choice” icon is not removed.

P.S. There’s also a Belorussian version of this article

Technorati Tags: , ,

Followers Or Leaders?

This is a sort of guest post, since it’s the English translation of an article originally published in Italian by Giacomo Magnini (prometeo), a long time contributor to the Italian Mozilla community. Even if I don’t agree with him on some points, I share the overall feeling that comes from his considerations and I thought it could be worth sharing this article with other Mozillians.

I would like to share some not really positive gut feelings about the Mozilla project as a whole. I’m very puzzled about two ongoing trends within the project that frankly I don’t like at all:

  1. Cloning Chrome
  2. Focus on marketing

For the first point, I’d say it started with separate processes for plugins (and the ultimate goal is separating each window or tab of Firefox in its own process, just like Chrome) and is proceeding in a similar manner with graphical appearance. And this happens while many people are complaining about the removal of support for Mac OS X 10.4, the incentive to use Jetpack (once finalized, because for now it is on the high seas) over real extensions and the implementation of not very useful features (and I would say even questionable) like Personas.

It really seems that we are rapidly losing sight of the technological superiority to chase ghosts and competitors, instead of presenting new features. And when you also have to recover architectural holes that you’ve been putting off for years (separate processes, limitations in Gecko, browser’s startup time, old fashioned JavaScript interpreter, etc.), this situation becomes much more difficult.

On one hand it is true that Firefox has achieved very good market share, albeit somewhat uneven overall, but on the other hand the arrival of new very aggressive competitors has found MoCo/Mofo rather unprepared (to say the least). And the heat of competition is pushing the project to throw everything possible in the field: all the available technology, even if not ready, as well as technologies possibly taken/cloned from others, complete rewrites of large parts of the software to eliminate structural weaknesses, etc.

In addition to this, and passing onto the second point, there is this new push in the marketing field, hoping to reach new promised lands where the verb has not yet arrived (without even glancing at the pastures of enterprise installations, as usual), where new recruits should increase market share or at least compensate for the more “geek” ones who have already left or are moving to other shores. So we get the hive of activity of social marketing, viral marketing, guerrilla marketing and so many “cool” or “modern” terms. The problem is that Mozilla launches itself into such operation against three competitors who can rely on unlimited resources and who’ve been in that field for decades: Google, Apple and Microsoft (not to be underestimated, never). And the other problem is that without a better and different (from the others) product, marketing is what it is, i.e. very little.

Mozilla as a platform/embedding software has died, rightly ousted by WebKit: after losing Gnome, few products are still standing, perhaps not for long. The promise of stable long-term releases supported for years has been made to disappear. Instead of having to manage twenty different development branches, and their own releases, Mozilla has introduced a ploy to bring out new and invasive features as a “minor update”, reducing support for older versions to only 6 months. We’ll see if even this commitment holds since there’s a run-up to Chrome in action.

Mobile Firefox has some space only through MeeGo, though it is already light years better than the situation until the last week with only Maemo… The market share of WinMobile is disappearing like snow in Rome: the version 7 will have to sweat a lot and be damn good. Android, iPhone, RIM and webOS are closed. The version for Symbian exists only in its epitaph.

I deliberately did not comment on Thunderbird: let’s say I gave it the benefit of the doubt, given the huge technological gap that it had to fill in a short time. I’ll just note that Postbox has some very positive press and it seems to be moving beyond TB abilities. And do not tell me that email clients have had their day: there is no gmail-like thing, not even in picture, which holds its own compared to a well done specific client.

I hear the frame creaking, and I do not like it.