Monday, October 24, 2011

Mozilla's release process at FSOSS

FSOSS is back and this year I will be there presenting a new presentation. This time I will be talking about the release process at Mozilla.
Last year I presented about Mozilla's Release Engineering infrastructure which is accomplished with many open-source tools but mainly by Buildbot.

I am looking forward to see you there!


On another note, you will have in total four Mozilla co-workers presenting about different topics:
How to ship Open Source software to half a billion users - Armen Zambrano Gasparnian
http://fsoss.senecac.on.ca/2011/node/108

How Web Browsers Work - Ehsan Akhgari
http://fsoss.senecac.on.ca/2011/node/113

Introduction to Mozilla's Add-on SDK - Jeff Griffiths
http://fsoss.senecac.on.ca/2011/node/77

Take control of your TV with XBMC - Lawrence Mandel
http://fsoss.senecac.on.ca/2011/node/58




Creative Commons License
This work by Zambrano Gasparnian, Armen is licensed under a Creative Commons Attribution-Noncommercial-Share Alike 3.0 Unported License.

Monday, September 26, 2011

How I got involved with Mozilla's Armenian localization and we shipped it :)

I have been asked how I got involved with the localization process and I would like to have a post so I can always make reference back to it.

It was back at the beginning of 2007 when Dave Humphrey taught during Seneca's study week how to Dive into Mozilla. After that, he encouraged us to take on a project and push it forward. Most of the projects sounded scary, I lacked technical confidence and were not important to me. The only project that caught my attention was to translate Firefox into Armenian. My grandfather had recently started using the Internet and I was hoping to make him happy by making the browser to be in Armenian (his mom's tongue). My major problem was that I did not read/write Armenian so I had to teach myself. The other problem I had was that the localization process was convoluted with wiki pages and lacking a Mozilla supported web tool.  I left the project for a while as I undertook the development of a localization tool.

It was during the summer of 2008 that Robert Sargsyan contacted me and soon after we managed to get him an approver's account on Narro (a web tool for localization). 


During 2009 there was a long silence but Robert kept on working hard for all those months. In September, we setup a Mercurial repository on bitbucket and figured out all issues and imported the translations from Narro.


Early in 2010 we opened a registration for the Armenian team and created a language package for Firefox 3.6 while we waited to receive the approval. On August 2010 the first import landed and on November we managed to make it for Firefox 4's beta 7. 


Since then you can download Firefox in Armenian in here.


My grandpa never got to use Firefox in Armenian as he passed away before that but I bet many other grandpas will be able to.


Creative Commons License
This work by Zambrano Gasparnian, Armen is licensed under a Creative Commons Attribution-Noncommercial-Share Alike 3.0 Unported License.

Friday, September 09, 2011

Mozilla's Automation Infrastructure explained (DRAFT)

Hi all,
I have previously done a releng brownbag (Dec. post & Apr.'s slide) to help new employees to understand how our infrastructure works. The problem with such presentation is that is hard for people to choose my brownbag during the All Hands when there are such awesome sessions to attend to. Therefore, I created a couple of screencasts in which I give a tour of our infrastructure.

This was a very quick and dirty screencast, I didn't have the right tools (trial version) and many of the diagrams have been reused from April's brownbag which some have become out of date.

Please, please, please, give me all the feedback that you think will make this tutorial much better and clearer.

Without more delay here are the 2 videos:

Direct URL: http://www.youtube.com/watch?v=ahfb94_aaBE
Direct URL: http://www.youtube.com/watch?v=DY6P-uG_ylk

Here is also a list of all URLs used during the screencast in order of appearance:
https://github.com/armenzg/playground/raw/master/mozilla/slides/images/simple%20releng.png
https://github.com/armenzg/playground/raw/master/mozilla/slides/omnigraffle/releng%20simple%20setup.png
https://github.com/armenzg/playground/raw/master/mozilla/slides/omnigraffle/pods.png
https://github.com/armenzg/playground/raw/master/mozilla/slides/omnigraffle/diagrams%20of%20builds%20%28mobile%20included%29.png
https://github.com/armenzg/playground/raw/master/mozilla/slides/omnigraffle/branches.png
https://wiki.mozilla.org/Inbound_Sheriff_Duty
http://hg.mozilla.org/
http://hg.mozilla.org/mozilla-central/
https://tbpl.mozilla.org/
http://perf.snarkfest.net/compare-talos
https://github.com/armenzg/playground/raw/master/mozilla/slides/images/tbpl%20status.png
https://github.com/armenzg/playground/raw/master/mozilla/slides/images/tbpl.png
https://github.com/armenzg/playground/raw/master/mozilla/slides/images/star%20oranges.png
https://tbpl.mozilla.org/?tree=Try&usebuildbot=1&tree=Try
https://github.com/armenzg/playground/raw/master/mozilla/slides/images/tree%20status.png
http://graphs.mozilla.org/
http://graphs-new.mozilla.org/index.html
http://graphs-new.mozilla.org/graph.html
http://graphs-new.mozilla.org/graph.html#tests=[[89,1,1],[89,1,14]]&sel=none&displayrange=7&datatype=running
https://wiki.mozilla.org/ReleaseEngineering/TryServer#How_to_push_to_try
http://people.mozilla.org/~lsblakk/trychooser/
http://hg.mozilla.org/try/
https://build.mozilla.org/
http://build.mozilla.org/builds/
https://build.mozilla.org/clobberer/
https://build.mozilla.org/buildapi/self-serve
https://build.mozilla.org/buildapi/self-serve/mozilla-central
http://build.mozilla.org/builds/running.html
http://build.mozilla.org/builds/pending.html
http://build.mozilla.org/builds/pending/
https://build.mozilla.org/buildapi/reports/waittimes
http://brasstacks.mozilla.com/gofaster/#/
http://brasstacks.mozilla.com/gofaster/#/buildcharts
http://brasstacks.mozilla.com/gofaste/buildchart.html?buildid=78856c1ce34b4e85bf23bdc6a887f28c

Creative Commons License
This work by Zambrano Gasparnian, Armen is licensed under a Creative Commons Attribution-Noncommercial-Share Alike 3.0 Unported License.