{"id":296,"date":"2010-07-27T12:16:28","date_gmt":"2010-07-27T19:16:28","guid":{"rendered":"http:\/\/blog.mozilla.org\/axel\/?p=296"},"modified":"2010-07-27T12:16:28","modified_gmt":"2010-07-27T19:16:28","slug":"porcupine-meet-churchill","status":"publish","type":"post","link":"https:\/\/blog.mozilla.org\/axel\/2010\/07\/27\/porcupine-meet-churchill\/","title":{"rendered":"Porcupine, meet Churchill"},"content":{"rendered":"<p>I&#8217;ve been talking with Seth today on how we can answer questions about the status of l10n. My grumpy argument was that I wouldn&#8217;t know how to make graphs over time actually show progress, instead of just &#8220;failure&#8221;. I had two naive graphs, one is showing all missing strings summed up over all locales. That graph would be dominated by the long tail of several dozen locales with a few hundred strings each, and you wouldn&#8217;t see a dozen fighting over a few strings each.<\/p>\n<p>The other is what I nick-name &#8220;porcupine graph&#8221;, show how many locales have no missing strings, vs those that have some missing strings. This is what&#8217;s actually implemented on the l10n dashboard as tree progress graphs. But how ever small a string change would be, it goes to all red. And it doesn&#8217;t help that one can&#8217;t mix green and red color gradients, so the graph usually shows spikes of red and a little black.<\/p>\n<p><a href=\"http:\/\/www.flickr.com\/photos\/axelhecht\/4834738435\/\" title=\"porcupine by Axel Hecht, on Flickr\"><img decoding=\"async\" loading=\"lazy\" src=\"http:\/\/farm5.static.flickr.com\/4090\/4834738435_c1dac145a2_z.jpg\" width=\"640\" height=\"378\" alt=\"porcupine\" \/><\/a><\/p>\n<p>Who&#8217;d want that as their progress stats, huh?<\/p>\n<p>Now, during the chat with Seth I came up with the idea to just give a little bit of leeway, and accept some missing strings to be OK, at least for some time. I filed <a href=\"https:\/\/bugzilla.mozilla.org\/show_bug.cgi?id=582280\">bug 582280<\/a> on that, and made a rough initial implementation of it. Nothing fancy, just a constant ignored bound of missing strings. Let&#8217;s see how the past two weeks of Firefox 4 look now, with just a total of 5 missing strings being OK, <code>?bound=5<\/code>:<\/p>\n<p><a href=\"http:\/\/www.flickr.com\/photos\/axelhecht\/4834738689\/\" title=\"two weeks good and bad by Axel Hecht, on Flickr\"><img decoding=\"async\" loading=\"lazy\" src=\"http:\/\/farm5.static.flickr.com\/4106\/4834738689_45d9cb4219_z.jpg\" width=\"640\" height=\"378\" alt=\"two weeks good and bad\" \/><\/a><\/p>\n<p>Now Churchill won over the porcupine, but it&#8217;s still pretty red. Which is OK, we haven&#8217;t even branched yet, right? So I went ahead and figured I&#8217;d add an option <code>hideBad<\/code>:<\/p>\n<p><a href=\"http:\/\/www.flickr.com\/photos\/axelhecht\/4834738881\/\" title=\"two weeks good by Axel Hecht, on Flickr\"><img decoding=\"async\" loading=\"lazy\" src=\"http:\/\/farm5.static.flickr.com\/4085\/4834738881_2b3beba630_z.jpg\" width=\"640\" height=\"383\" alt=\"two weeks good\" \/><\/a><\/p>\n<p>Wow, progress. This graph actually looks like our community rocks as much as it does. Gets me grumpy, because this was really just about half an hour of work, plus a few years of thinking.<\/p>\n<p>Now, how do we look on the long run, say, well over half a year? Bumping the bound up to 15, we&#8217;re doing like<\/p>\n<p><a href=\"http:\/\/www.flickr.com\/photos\/axelhecht\/4834746465\/\" title=\"half year progress by Axel Hecht, on Flickr\"><img decoding=\"async\" loading=\"lazy\" src=\"http:\/\/farm5.static.flickr.com\/4105\/4834746465_c9cd423d83_z.jpg\" width=\"640\" height=\"382\" alt=\"half year progress\" \/><\/a><\/p>\n<p>Pretty good, heh? You can <a href=\"https:\/\/l10n-stage-sj.mozilla.org\/dashboard\/tree-status\/fx40x?starttime=1255682183&#038;bound=15&#038;hideBad\">play with it on the dashboard<\/a>, too. The overall take aways would be:<\/p>\n<p>We have about 20 locales that really track trunk.<\/p>\n<p>We didn&#8217;t have that many landings with a high amount of added strings.<\/p>\n<p>I like both :-).<\/p>\n","protected":false},"excerpt":{"rendered":"<p>I&#8217;ve been talking with Seth today on how we can answer questions about the status of l10n. My grumpy argument was that I wouldn&#8217;t know how to make graphs over time actually show progress, instead of just &#8220;failure&#8221;. I had two naive graphs, one is showing all missing strings summed up over all locales. That [&hellip;]<\/p>\n","protected":false},"author":17,"featured_media":0,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[7,5],"tags":[23779,23778],"_links":{"self":[{"href":"https:\/\/blog.mozilla.org\/axel\/wp-json\/wp\/v2\/posts\/296"}],"collection":[{"href":"https:\/\/blog.mozilla.org\/axel\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/blog.mozilla.org\/axel\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/blog.mozilla.org\/axel\/wp-json\/wp\/v2\/users\/17"}],"replies":[{"embeddable":true,"href":"https:\/\/blog.mozilla.org\/axel\/wp-json\/wp\/v2\/comments?post=296"}],"version-history":[{"count":0,"href":"https:\/\/blog.mozilla.org\/axel\/wp-json\/wp\/v2\/posts\/296\/revisions"}],"wp:attachment":[{"href":"https:\/\/blog.mozilla.org\/axel\/wp-json\/wp\/v2\/media?parent=296"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/blog.mozilla.org\/axel\/wp-json\/wp\/v2\/categories?post=296"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/blog.mozilla.org\/axel\/wp-json\/wp\/v2\/tags?post=296"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}