• Travel

    February 6th, 2009 by seth bindernagel with 2 comments »

    Yesterday, I embarked on a long journey where I will visit much of the Mozilla community.  By the time I am done, I will interact with about 30 of our localization teams at various conferences where I will be a participant.  Here’s an itinerary for anyone who might be interested in meeting up:

    February 6 – 9:  FOSDEM in Brussels with many European localizers and open source developers
    February 10 – 11:  Delhi, India for MozDelhi Camp
    February 12 – 13:  Kanpur, India for FOSSkriti at ITT Kanpur
    February 14 – 15:  Pune, India for GNUify
    February 18 – 21:  Beijing, China with a big community event on Saturday, February 21 at the Mozilla office

    On my journey through the subcontinent, I will be joined by fellow Mozillan, Arun Ranganathan.  When I separate from Arun, I’ll go to our China office in Beijing to visit Li Gong and the team and to present to the community there.

    During our presentations, we will demo several tools for developers and localizers to use to expand their impact, build new community, and drive more mainstream adoption of Mozilla ideas.  It will be a breakneck pace and we are staying with friends along the way in hope to make this trip as leveraged as possible.  Many thanks to Shashank (FOSSkriti) and Harshad (GNUify) for providing me and Arun both transportation and accommodation at their respective conference locations.

    My presentation has four sections, designed for easy plug-and-play, depending on the audience.  Here is what I plan to discuss on the quest.

    1. Mozilla and Community overview, using localization efforts to illustrate the breadth of Mozilla’s community contribution.  I’ll present some interesting Firefox 3.1 localization participation statistics, including new languages since FF 3.0.
    2. New Community tools, demoing Mozilla Community Sites project
    3. Improving localization tools, recapping Verbatim, demoing Silme, and discussing new ideas
    4. Where do we go next?  L20n demos

    I’ll post the slides when they are ready.  They are still in pieces and demos are still being finalized.

  • L20n

    February 3rd, 2009 by seth bindernagel with 14 comments »

    I spent last week writing about some limitations with DTD files and promised to lead up with something about l20n.  In fact, a lot has been written about this concept and can be found here:

    https://wiki.mozilla.org/L20n

    The introduction from that page is particularly helpful in describing l20n.  It opens with the following:

    “L20n is the codename for a localization architecture taking existing approaches one step further. The name stands for l10n 2. The architecture is laid out with Mozilla applications in mind, but should be applicable to other areas as well. As for Mozilla, Mozilla 2 will give us a chance to implement significant changes in our l10n architecture, and this is one attempt to do that.”

    It may come as no surprise, but Axel is mostly responsible for this TERRIFIC introduction and write up.  The wiki covers:

    I really suggest everyone take some time to read through this wiki to get a better sense of what l20n is and how to contribute.  Rather than try to rewrite something that is already superb, I highly suggest reading the background document linked to above (and again just now).

    Let’s give a taste of just what l20n might be one day.  Here is some sample code from Axel that helps with plural forms:

    <plural: (n) -> {n != 1}>
    /**
     * Complex string
     * @param: beers
     */
    <axel: "Axel had ${beers}i ${axel.bottles[plural(beers)]}s of beer." bottles: ["bottle", "bottles"]>

    And the translation by a localizer:

    <plural: (n) -> {n != 1}>
    
    /**
     * Complex string
     * @param: beers
     */
    <axel: "Axel hat ${beers}i ${axel.bottles[plural(beers)]}s Bier getrunken."
     bottles: ["Flasche", "Flaschen"]>

    The nice thing here is that the code is flexible to provide for multiple plural forms.  Ping if you have a question.

    Some really excellent demos are on the Examples link from above.  I will link to a few I liked here:

    These are great because they show the power and flexibility of the code with a straightforward UI to go along.

    There is so much fun to be had with l20n, I hope you take the time to go through this wiki, comment on it, blog about it, email me, etc.  We are not ready to implement l20n, but we are certainly ready to discuss.

    Thank you to Axel and Gandalf for helping me with these posts.  Most of what I write is simply me learning new things and then rewriting.  I hope you can play along and get involved in the next generation of Mozilla l10n.