The localizers perspective

My name is Abdulkadir Topal. I’m a student of (computational) linguistics and German literature by day, but by night I’m the lead localizer for the German version of Firefox (sometimes it’s the other way around).

I know what you think (especially you devs out there): how boring! …translating the wording of a web browser from one language to another for others to use in their own language. Well, that’s how it may look from the outside, but actually it’s one of the most interesting things to work on.  And, if you care about HCI (Human Computer Interaction) or user experience, then this type of work can be even more interesting.

When we first stared, we had a very small user base for Firefox in Germany. We have almost 20 million  regular users of the German version. That means, that almost 20 million people read what I translated, every day! That’s huge, at least for Germany. By my estimation, you probably won’t find many German translators or authors with more readers. Granted, the words are not completely mine and there is not so much to read to begin with, but still, just thinking about it gives me the chills. And, it shows how far we have come. This very fact makes me very cautious when I have to decide whether to translate a string or just leave it in English, since our end users are more “main stream” and less technical than maybe 3 or 4 years ago.

Oddly enough, most of the time, my indicator of whether or not a translation is correct is my dad. He is a casual user, checking e-mail every once in a while, buying his flights online etc.  If he is happy, I know most of our users will be happy. Thanks, dad!

I started with the localization of Firefox in the Winter of 2002. Back then very few knew about the project and only a handful people were actively working on it. I really had no idea about localization, but had a big desire to make the best translation possible for Firefox. Localizing Firefox from scratch took almost 2 full month, even though I heavily copied work done for the Mozilla Suite!! As you know Firefox grew bigger than any of us could have ever imagined and over the years our localization strategy changed as well.

Today I’m working on the localization with two other Mozilla partners. Alexander Ihrig (from Thunderbird) and Robert Kaiser (from Seamonkey fame). We check each others’ translation, preventing any spelling/grammatical mistakes or wrong translations from slipping through. Nothing is perfect and errors will slip through occasionally…and that’s when the big userbase comes in handy. Thanks to our nightly testers (yes, there are nightly tester of localized builds) very rarely do we get a report after a final version is released.

Since Firefox 1.0, all our translation work lands in the Mozilla code repository in CVS. Before we got privileges to check our work into CVS, a localizer like me had to finish the translation and then start bundling the work into a language pack.  Then, I had to find someone to upload it on the Mozilla servers and then link to the work from a website (like a personal blog or something like that). Since our German translation is now a part of the Mozilla code base on CVS, it’s much easier to coordinate the work. Everyone can see the last changes, what’s missing, and how the translation evolves. And, since there are nightly builds of localized versions, people don’t have to wait for the final language pack version to test our localization.

During the past years, our use of tools has also changed. We started with Mozilla Translator, but with the change to CVS, Mozilla Translator itself became pretty unusable. For Firefox 3, Alexander and I ended up using just plain text editors, and Robert used his heavily modified Mozilla Translator. Unfortunately it’s not so easy for us to switch to one tool as we all work on different platforms: Robert on Linux, Alexander on Windows, and me on Mac OS. Web apps could be an alternative, but their user experience is rather “limited”.  IMO, they don’t respond quickly enough to replace a desktop editor. Essentially, the only thing that a specialized editor could give us would be a translation memory, since we have no problem with the technical side.  But, this one benefit was not enough to endure all the other problems. Hopefully this will change for the time after Firefox 3 (see Verbatim).

Firefox 3 localization doesn’t only mean the product itself. An often neglected, but very important part, is the help system. For Firefox 3 it was decided to move the help both online and into a wiki, since the traditional help system seemed too inflexible for a project like Firefox. That meant a lot of work for us localizers and it would certainly not have been possible to make it in time with only 2 or 3 people.  Again, it really helps that Firefox is so popular. For the Help localization, I just had to ask for help on my blog and a got all the help I could ask for.

As you may already know, we have a market share of more than 30% for Firefox in Germany, which is really huge and a great indicator for how much people like our work. We are very proud of Firefox 3 and hope it helps even more people to just enjoy the web.

My dad loves it, at that’s usually a good sign 😉

4 thoughts on “The localizers perspective”

  1. Hello,
    Thanks for sharing with us about the view of a localizer.

    At the moment, I want to localize Firefox 3 into Vietnamese. However, the guide on Mozilla wiki is so old, it wouldn’t help! So, I got to Google and came across your site.

    From the things you told here, I’d like to ask some small questions. It’d be great if you could help 🙂
    a) What are the first things to do to localize FF 3.0?
    b) With Moztrans 5.22 (so old, too), the exported JAR pack can’t be used with FF 3. And in this entry, you told that your team has been using a “heavily modified Moztrans”.
    Does the JAR exported from this “modified” version work with FF 3? And, uhm, if there was a chance, may I use your tool?

    I’d appreciate your help.
    Thanks in advance.

  2. Pingback: seth’s blog

Leave a Reply

Your email address will not be published. Required fields are marked *