A while back, I wrote a post about poxx.py which talked about a script I based on Ned Batchelder's poxx.py script and overhauled to provide a faux "Swedish Chef" translation of Miro strings allowing me to test localizations of the application.
The transform from English to "Swedish Chef" had the following four impotant properties:
Back in August, I made some changes and pulled it into fjord. This helped us suss out localization issues on a new site. However, I wasn't really happy with it. Amongst other things, I always wondered if "Swedish Chef" was kind of culturally insensitive.
A couple of weeks ago, I overhauled poxx.py again. This time, PIRATE! It continues to have the four properties I think are important for a test locale.
We're using it now for SUMO development. It's the grog to your Jolly Roger:
We're using this script on both SUMO and Fjord now. You can use it for your site, too! The code is at https://github.com/mozilla/kitsune/tree/master/scripts/.
If you see any problems with it, toss me a message in a bottle.
This localization is only available in development environments. Unlike Miro where we shipped the Swedish Chef translation (or used to---I'm not sure if they do anymore), you cannot see this on the -dev, -stage or -prod SUMO sites.
This was my first full year at Mozilla and it was intense. I essentially worked on four projects: SUMO, Input, ElasticUtils and Gaia. This blog post talks about the first two which are worked on by the James' Rifles SUMINPUT Megalosaur team.
We accomplished a lot on SUMO this year. I spent a couple of hours last week throwing together a rough "year in review" script that looked at Bugzilla and git and crunched some numbers:
Twas the year: 2012 =================== Bugzilla ======== Bugs created: 938 rrosario : 201 a.topal : 188 willkg : 108 scoobidiver : 51 igarcia : 41 mverdi : 36 swarnavasengupta : 30 james : 29 bram : 19 tobbi.bugs : 17 Bugs resolved: 1025 rrosario : 335 : WORKSFORME 18 : INVALID 16 : DUPLICATE 23 : WONTFIX 7 : FIXED 263 : INCOMPLETE 8 a.topal : 182 : WORKSFORME 36 : INVALID 41 : DUPLICATE 11 : WONTFIX 70 : FIXED 21 : INCOMPLETE 3 willkg : 131 : DUPLICATE 6 : FIXED 110 : WORKSFORME 2 : WONTFIX 11 : INVALID 2 rdalal : 84 : FIXED 84 james : 51 : WORKSFORME 6 : INVALID 5 : DUPLICATE 3 : WONTFIX 15 : FIXED 14 : INCOMPLETE 8 mcooper : 37 : FIXED 36 : INVALID 1 tobbi.bugs : 29 : FIXED 29 tgavankar : 28 : WONTFIX 1 : WORKSFORME 1 : FIXED 26 scoobidiver : 28 : FIXED 4 : DUPLICATE 4 : WORKSFORME 11 : WONTFIX 3 : INVALID 6 bmo2010 : 13 : FIXED 1 : DUPLICATE 3 : WORKSFORME 3 : INVALID 6 INCOMPLETE : 21 DUPLICATE : 61 WORKSFORME : 82 INVALID : 91 WONTFIX : 117 FIXED : 653 git === Total commits: 916 Ricky Rosario : 430 Will Kahn-Greene : 192 Rehan Dalal : 98 Mike Cooper : 44 Erik Rose : 34 Tobbi : 29 Tanay Gavankar : 23 Kadir Topal : 11 Tim Watts : 10 Berker Peksag : 9 James Socol : 7 Victor Neo : 6 Cesar Carruitero : 5 David Lilly : 4 Ibai : 3 Isac Lagerblad : 2 icaaq : 1 TylerDowner : 1 browning : 1 ricky rosario : 1 Anatoli Papirovski : 1 Clauber Stipkovic : 1 Jason Thomas : 1 atopal : 1 Florin Strugariu : 1
There are some interesting bits in there:
Ricky does a lot of work! Holy cow!
There were 23 people who contributed code to Kitsune (the SUMO codebase) this year. Of those, about half are volunteer contributors.
Compare with 2011, we had 19 people who contributed to the code base and less than half were volunteer contributors.
We resolved more bugs than we created in 2012. We did that in 2011 as well, so that's two years in a row. I've never seen that happen before on a project I work on.
The codebase is pretty different now than it was at the beginning of the year. I helped with the following semi-massive overhauls:
On top of that, we did a lot of work on the documentation and making it easier to get to a working Kitsune development environment. We switched to a sprint-based work flow using Scrumbugz. We also nixed our daily checkin conference call for an IRC-based checkin system that we wrote called Standup.
It's been a big year.
For Input, it was a bigger year. We decided to abandon the old Input codebase (omfg yay) in favor of rewriting it from the ground up. The rewrite took a couple of months and then has sort of been sitting around waiting for a security review. In the meantime, we (actually, Mike did) fixed a bunch of issues with the old site code because that's what's currently in production.
Rewriting Input wouldn't have taken so long except that we did a lot of work fixing bugs in external libraries and updating Playdoh. That work definitely cut into our schedule, but it benefitted a bunch of other groups/people/sites, so that's good.
That's the gist of the year: it was a lot of work, but we accomplished a ton.
w00t for 2012!
I haven't had time to blog much in the last few months. At work, I've been spending all my time with elasticsearch, elasticutils, and SUMO bug fixing. I've been working on the conversion from Sphinx search to elasticsearch for SUMO since I started at Mozilla, but I've only recently felt like I'm really getting the hang of it. There are a bunch of elasticutils-related things I want to blog about, but those will come in fugure entries.
In my spare time, I've been working on richard. This project has nothing to do with Richard of air mozilla fame, but rather is a video indexing web application. It's the software that runs pyvideo.org.
pyvideo.org has the distinction of being the first Django application I've built from the ground up. That distinction is both a virtue (yay for first apps!) and a vice (boo for silly things I did when doing it!).
The one thing I did that I'm really proud of is that when building the software, I knew I needed help if it was to succeed and thus I worked to make it easy and inviting for contributors to get involved:
The end result of that is that there are 4 contributors to richard including myself and one of them is very active.
Well, I've got 5 on my video index web application software that I "launched" a month ago. I'm feeling good about that.
|||Several of my friends point out that GitHub kind of takes the D out of DVCS.|
|||Though didn't have any tests when I "launched".|
|||I may fix this paragraph after Asheesh corrects me.|
Copyright 1996 to 2013, Will Guaraldi Kahn-Greene, under the Creative Commons BY-SA 3.0 license
Will's Blog by William Kahn-Greene is licensed under a Creative Commons Attribution-ShareAlike 3.0 Unported License.