<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
 
 <title>Nigel Babu</title>
 <link href="http://nigelb.me/atom.xml" rel="self"/>
 <link href="http://nigelb.me/"/>
 <updated>2012-01-16T04:29:21+00:00</updated>
 <id>http://nigelb.me/</id>
 <author>
   <name>Nigel Babu</name>
   <email>nigelbabu@ubuntu.com</email>
 </author>

 
 
 <entry>
   <title>Switched to Clang</title>
   <link href="http://nigelb.me/mozilla/2011/12/06/switched-to-clang.html"/>
   <updated>2011-12-06T18:40:00+00:00</updated>
   <id>http://nigelb.me/mozilla/2011/12/06/switched-to-clang</id>
   <content type="html">&lt;p&gt;A recent conversation in #devtools&lt;/p&gt;
&lt;div class=&quot;highlight&quot;&gt;&lt;pre&gt;&lt;code class=&quot;irc&quot;&gt;&lt;span class=&quot;nt&quot;&gt;&amp;lt;nigelb&amp;gt; &lt;/span&gt;My current build segfaults when I touch the webconsole.
&lt;span class=&quot;nt&quot;&gt;&amp;lt;robcee&amp;gt; &lt;/span&gt;that&amp;#39;s no good
&lt;span class=&quot;nt&quot;&gt;&amp;lt;nigelb&amp;gt; &lt;/span&gt;That&amp;#39;s counter productive when I&amp;#39;m patching the webconsole.
&lt;span class=&quot;nt&quot;&gt;&amp;lt;robcee&amp;gt; &lt;/span&gt;are you on linux?
&lt;span class=&quot;nt&quot;&gt;&amp;lt;nigelb&amp;gt; &lt;/span&gt;Ya.
&lt;span class=&quot;nt&quot;&gt;&amp;lt;robcee&amp;gt; &lt;/span&gt;are you building with clang?
&lt;span class=&quot;nt&quot;&gt;&amp;lt;nigelb&amp;gt; &lt;/span&gt;No I&amp;#39;m not.
&lt;span class=&quot;nt&quot;&gt;&amp;lt;nigelb&amp;gt; &lt;/span&gt;gcc forever &amp;lt;3
.
a little while later
.
&lt;span class=&quot;nt&quot;&gt;&amp;lt;nigelb&amp;gt; &lt;/span&gt;Wait, that&amp;#39;s a gcc bug?
&lt;span class=&quot;nt&quot;&gt;&amp;lt;msucan&amp;gt; &lt;/span&gt;yes
&lt;span class=&quot;nt&quot;&gt;&amp;lt;nigelb&amp;gt; &lt;/span&gt;Sadness.
&lt;span class=&quot;nt&quot;&gt;&amp;lt;nigelb&amp;gt; &lt;/span&gt;gcc &amp;lt;/3
&lt;span class=&quot;nt&quot;&gt;&amp;lt;nigelb&amp;gt; &lt;/span&gt;its time to move on.
&lt;span class=&quot;nt&quot;&gt;&amp;lt;robcee&amp;gt; &lt;/span&gt;it was a good run
&lt;/code&gt;&lt;/pre&gt;
&lt;/div&gt;&lt;p&gt;So, yeah, I&amp;#8217;ve switched to clang on Ubuntu.  A quick rundown of what I did for any Ubuntu or other Linux users.  The instructions are pretty much the same as what &lt;a href=&quot;http://ehsanakhgari.org/blog/2011-10-18/why-you-should-switch-clang-today-and-how&quot;&gt;ehsan posted for Mac&lt;/a&gt;, except I didn&amp;#8217;t install clang system-wide.&lt;/p&gt;
&lt;p&gt;So, here&amp;#8217;s what I did.&lt;/p&gt;
&lt;div class=&quot;highlight&quot;&gt;&lt;pre&gt;&lt;code class=&quot;bash&quot;&gt;mkdir clang
&lt;span class=&quot;nb&quot;&gt;cd &lt;/span&gt;clang
svn co http://llvm.org/svn/llvm-project/llvm/trunk llvm
&lt;span class=&quot;nb&quot;&gt;cd &lt;/span&gt;llvm/tools
svn co http://llvm.org/svn/llvm-project/cfe/trunk clang
&lt;span class=&quot;nb&quot;&gt;cd&lt;/span&gt; ../../
mkdir build
&lt;span class=&quot;nb&quot;&gt;cd &lt;/span&gt;build
../llvm/configure --enable-optimized --disable-assertions
make
&lt;/code&gt;&lt;/pre&gt;
&lt;/div&gt;&lt;p&gt;This got the clang binary in &lt;code&gt;Release/bin&lt;/code&gt;.  I use &lt;span class=&quot;caps&quot;&gt;ZSH&lt;/span&gt;, so I added that folder to my $&lt;span class=&quot;caps&quot;&gt;PATH&lt;/span&gt; variable like so&lt;/p&gt;
&lt;div class=&quot;highlight&quot;&gt;&lt;pre&gt;&lt;code class=&quot;bash&quot;&gt;&lt;span class=&quot;nb&quot;&gt;export &lt;/span&gt;&lt;span class=&quot;nv&quot;&gt;PATH&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;nv&quot;&gt;$PATH&lt;/span&gt;:&lt;span class=&quot;nv&quot;&gt;$HOME&lt;/span&gt;/clang/build/Release/bin
&lt;/code&gt;&lt;/pre&gt;
&lt;/div&gt;&lt;p&gt;The last bit is to add the following to your .mozconf&lt;/p&gt;
&lt;div class=&quot;highlight&quot;&gt;&lt;pre&gt;&lt;code class=&quot;bash&quot;&gt;&lt;span class=&quot;nb&quot;&gt;export &lt;/span&gt;&lt;span class=&quot;nv&quot;&gt;CC&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;=&lt;/span&gt;clang
&lt;span class=&quot;nb&quot;&gt;export &lt;/span&gt;&lt;span class=&quot;nv&quot;&gt;CXX&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;=&lt;/span&gt;clang++
&lt;/code&gt;&lt;/pre&gt;
&lt;/div&gt;&lt;p&gt;Note &amp;#8211; If you&amp;#8217;re working on Ubuntu 10.04 with gcc version 4:4.4.3-1ubuntu1, it might be essential to use clang and not gcc. As of now the segfaults are attributed to gcc.  For more details, see &lt;a href=&quot;https://bugzilla.mozilla.org/show_bug.cgi?id=694594&quot;&gt;bug 694594&lt;/a&gt;&lt;/p&gt;</content>
 </entry>
 
 
 
 <entry>
   <title>Mozcamp Asia</title>
   <link href="http://nigelb.me/mozilla/2011/12/06/mozcamp-asia.html"/>
   <updated>2011-12-06T15:26:00+00:00</updated>
   <id>http://nigelb.me/mozilla/2011/12/06/mozcamp-asia</id>
   <content type="html">&lt;p&gt;Finally, I&amp;#8217;m getting around the write my MozCamp Asia post.  This has been long pending and got delayed mostly because I&amp;#8217;ve been writing &lt;a href=&quot;https://bugzilla.mozilla.org/show_bug.cgi?id=609730&quot;&gt;patches&lt;/a&gt; &lt;a href=&quot;https://bugzilla.mozilla.org/show_bug.cgi?id=704204&quot;&gt;for&lt;/a&gt; &lt;a href=&quot;https://bugzilla.mozilla.org/show_bug.cgi?id=642598&quot;&gt;Firefox&lt;/a&gt; &lt;a href=&quot;https://bugzilla.mozilla.org/show_bug.cgi?id=698662&quot;&gt;and&lt;/a&gt; &lt;a href=&quot;https://bugzilla.mozilla.org/show_bug.cgi?id=641527&quot;&gt;Thunderbird&lt;/a&gt; instead of writing a blog post :P&lt;/p&gt;
&lt;h5&gt;Travel&lt;/h5&gt;
&lt;p&gt;The night before I was to due to travel, I fell ill and almost called the whole thing off.  After taking a break for a day, I decided that I was good to go, started packing, and left for the airport.  At the airport, I was sitting down and finishing the slides for my talk since I never got a chance thanks to work and other commitments.  We landed in Kuala Lumpur at about 12 am local time and I got into my room at 2:30 am.  I ended up waking up my roommate, Siddharth, who I&amp;#8217;ve known for a while but never met.  With all the excitement of the event, and also because it was just 12 am in India, I was wide awake (Proud member of &lt;a href=&quot;https://mozillians.org/en-US/group/10791-weird-hours&quot;&gt;Weird Hours&lt;/a&gt;) .  At some point, I even thought of not sleeping, but thankfully, I caught about 3 hours of sleep, which at least saved the day to some extent.&lt;/p&gt;
&lt;h5&gt;Day 1&lt;/h5&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;
&lt;p&gt;&lt;img src=&quot;http://nigelb.me/images/mozcamp-1.jpg&quot; title=&quot;Day 1, right before we started&quot; alt=&quot;Day 1, right before we started&quot; /&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;p&gt;At Breakfast, I met the &amp;#8220;IT crowd&amp;#8221; &amp;#8211; fox2mike, zandr, phong, and bkero. Fun gang, we were hanging out later on Sunday.  I then hurried to the Welcome session by Mitchell Baker.  I don&amp;#8217;t remember most of the session now, but I remember tweeting like crazy all through the morning.  The update from Mozilla China was particular interesting because, as the representative from China said, &amp;#8220;We don&amp;#8217;t have Facebook or Youtube on our internet&amp;#8221;.  I also remember Mozilla Japan had an interseting video of their work and Chibi was on stage for the first time giving a talk in English.  We had extra applause for her courage :-)  During the coffee break, I caught up with Tim Watts, who works on the &lt;a href=&quot;http://support.mozilla.org&quot;&gt;&lt;span class=&quot;caps&quot;&gt;SUMO&lt;/span&gt; team&lt;/a&gt;.  We realized that we were planning on talking about the same thing and decided we&amp;#8217;d merge our talks into one (all the work I did in the airport had to be re-done. &lt;span class=&quot;caps&quot;&gt;YAY&lt;/span&gt;!).  Mary then talked about Engagement.  There was a lot of learning from that session, like the fact that 2.2 million people download firefox every day, and about the huge poster in the &lt;span class=&quot;caps&quot;&gt;JFK&lt;/span&gt; arrival area.  Everyone loved the &amp;#8220;Don&amp;#8217;t work for the man, work for the mankind&amp;#8221; &lt;a href=&quot;http://yfrog.com/gzslzztmj&quot;&gt;poster&lt;/a&gt;.  Then, we had the most exciting bit ever, the community quilt.  It was great to listen to all the communities talk about their efforts and also about their challenges.  Again, it was great to hear people give a talk for the first time, especially in a langauge they&amp;#8217;re not used to speaking all the time.&lt;/p&gt;
&lt;p&gt;At lunch, I met Khairul (ejat) who I also know from the Ubuntu community and Stormy Peters who I&amp;#8217;ve heard about from friends.  After lunch I took one look at the schedule and wished I had a time machine.  I wanted to attend all the sessions!  After lunch I attended the session about building community websites.  It was interesting to hear Laura talk about the Mozilla websites from the product owner&amp;#8217;s point of view.  After this, I went to the talk about Developer Evangelism, &lt;span class=&quot;caps&quot;&gt;MDN&lt;/span&gt;, and Docs.  We all agreed to blog about &lt;a href=&quot;https://developer.mozilla.org&quot;&gt;&lt;span class=&quot;caps&quot;&gt;MDN&lt;/span&gt;&lt;/a&gt; and push it up in search rankings instead of &amp;#8220;other&amp;#8221; usual sources (I&amp;#8217;m looking at you w3schools).  Next was probably one of the most interesting sessions for me, David Dahl&amp;#8217;s &amp;#8220;From Web Developer to Firefox Hacker&amp;#8221; session.  I&amp;#8217;ve been shying away from hacking on Firefox or Thunderbird, because I&amp;#8217;m not exactly a C++ person.  ddahl&amp;#8217;s session kind of got me intersted in Firefox hacking and I&amp;#8217;ve been doing a fair bit of Firefox hacking since I got back (Thanks again ddhal!).  The last session for the day was the user engagement session by Chelsea and William.  It was nice to hear about &lt;a href=&quot;https://affiliates.mozilla.org&quot;&gt;Affiliates&lt;/a&gt; and about how campaigns could use a lot of localized help to connect to the right audience.&lt;/p&gt;
&lt;p&gt;Most of the things after this is a blur thanks to the lack of sleep from previous night.  We went had dinner at a resturant which also had a cultural show, but I was too tired to watch any of it and just headed back to the hotel to crash.&lt;/p&gt;
&lt;h5&gt;Day 2&lt;/h5&gt;
&lt;p&gt;On the Day 1 open session, Mitchell announced that we&amp;#8217;d all have wake up calls at 8 am and they actually did it!  Thankfully, I&amp;#8217;d set a 7 am wake up call, so we didn&amp;#8217;t have the 8 am wake up call, but I did see other people comment about it on twitter.  Despite all this, we did start about 15 minutes late because we waited for everyone to finish breakfast.  I was much more alert thanks to a good night&amp;#8217;s sleep.  We opened the day with the &amp;#8220;State of the Product&amp;#8221; talk.  There was a lot of applause during the talk, especially for the B2G demo (philikon and qDot recently &lt;a href=&quot;http://www.youtube.com/watch?v=RuIQskGD3u0&quot;&gt;managed to get the B2G phone to dial&lt;/a&gt;!).  It was mind blowing to see the View Source.  The devtools demo, especially, the Tilt demo also generated a fair bit of applause. After this, I attended Siddharth&amp;#8217;s session about building a Thunderbird Extension.  Sid0 demoed writing a simple Hello World extension to using &lt;a href=&quot;https://developer.mozilla.org/en/Thunderbird/gloda&quot;&gt;Gloda&lt;/a&gt;.  It was a fun session with a lot of code to digest through.  The WebFWD talk was something I was looking forward to and Diane explained about what WebFWD does and how it can help potential startups with the same ideologies as Mozilla, especially openess.&lt;/p&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;
&lt;p&gt;&lt;a href=&quot;http://www.flickr.com/photos/yofiesetiawan/6373062883/&quot;&gt;&lt;img src=&quot;http://nigelb.me/images/mozcamp-5.jpg&quot; title=&quot;Photobombed by timw - Photo by Yofie Setiawan&quot; alt=&quot;Photobombed by timw - Photo by Yofie Setiawan&quot; /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;p&gt;The leader Q &amp;amp; A was interesting for its format and for the questions that were asked.  Some of the answers, like the ones about Mozilla Spaces, and Thunderbird were particularly interesting.  Right after lunch, was the session about contributing to Mozilla webdev led by Tim Watts and I.  We &lt;a href=&quot;https://twitter.com/#!/fox2mike/status/138143503912939520/photo/1&quot;&gt;talked&lt;/a&gt; about contributing to Mozilla&amp;#8217;s Webdev projects, some of the blockers, and the respective solutions.  Tim talked about everything except trouble with setting up the environment, while I focused on getting an environment setup with Vagrant.  The audience already had people using Vagrant so it was fun to talk about it.  We had most of Mozilla IT at our talk as well, so we had some good feeback from the about getting our environment as close as possible to production environment.  I summarized most of these thoughts into a &lt;a href=&quot;http://blog.mozilla.com/webdev/2011/11/24/guest-post-i-want-to-contribute-how-do-i-start/&quot;&gt;blog post&lt;/a&gt; on the Mozilla WebDev blog a few weeks back.&lt;/p&gt;
&lt;p&gt;I then went to Dan&amp;#8217;s session about BrowserID and apps.  I had a lot of questions about BrowserID and few of us heckled Dan throughout and after the talk :P  Nevertheless, it cleared up a lot of questions I had about BrowserID.  The last session of the day before the closing was Community IT.  Shyam, Phong, and Ben talked about the scale of IT at Mozilla and how they&amp;#8217;re trying to open it up for the community to contribute.  Memorable phrase from the session was &amp;#8220;We&amp;#8217;ll all be one big happy family and we&amp;#8217;ll all have root&amp;#8221; by fox2mike :-) (and yeah, he&amp;#8217;s probably going to kill me for that).  Another issue raised was how bouncer wasn&amp;#8217;t working and needed some debugging; as time permits over the next few months I intend to look into this and figure out how to improve it.  Finally, we had the closing remarks from Mitchell.  It dawned on me that Mozcamp was over and most of us would be leaving that night or the next morning, and it was indeed saddening.&lt;/p&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;
&lt;p&gt;&lt;img src=&quot;http://nigelb.me/images/mozcamp-2.jpg&quot; title=&quot;Always stylish ddahl in Jalan Aloor&quot; alt=&quot;Always stylish ddahl in Jalan Aloor&quot; /&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;p&gt;I joined Arky, bkero, cedricv, Dave, ddhal, fox2mike, Harinder, John, Mihca, phong, and zandr in exploring Jalan Aloor. Harinder suggested a chineese place there for dinner.  It was indeed a great dinner.  We did some experimentation with food &amp;#8211; the biggest of which was &lt;a href=&quot;http://en.wikipedia.org/wiki/Durian&quot;&gt;Durian&lt;/a&gt;.  When I entered the street I did smell some sort of sticky sweet smell which seemed pleasant.  When we had the Durian, I matched the smell to Durian and it wasn&amp;#8217;t so pleasant after that ;-)  We also tasted some &lt;a href=&quot;http://en.wikipedia.org/wiki/Bakkwa&quot;&gt;bakkwa&lt;/a&gt; (bacon candy!) and &lt;a href=&quot;http://en.wikipedia.org/wiki/Rambutan&quot;&gt;Rambutan&lt;/a&gt;.  It was a long street filled with the most eatable things ever!  We had a 10 pm drink up planned at the hotel, so we got back to hotel to be there on time, only to walk into an empty pub.  Later everyone else joined us and we pretty much took over the pub.  We were all chatting for the next few hours.  I think it was eventually 4 am when I headed to bed.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;tl;dr: I went to Mozcamp Asia, and started writing patches for Firefox :)&lt;/strong&gt;&lt;/p&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;
&lt;p&gt;&lt;img src=&quot;http://nigelb.me/images/mozcamp-3.jpg&quot; title=&quot;Durian adventure&quot; alt=&quot;Durian adventure&quot; /&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;
&lt;p&gt;&lt;img src=&quot;http://nigelb.me/images/mozcamp-4.jpg&quot; title=&quot;The drinkup&quot; alt=&quot;The drinkup&quot; /&gt;&lt;/p&gt;
&lt;/div&gt;</content>
 </entry>
 
 
 
 <entry>
   <title>Please nitpick</title>
   <link href="http://nigelb.me/ubuntu/mozilla/2011/10/30/please-nitpick.html"/>
   <updated>2011-10-30T19:21:00+00:00</updated>
   <id>http://nigelb.me/ubuntu/mozilla/2011/10/30/please-nitpick</id>
   <content type="html">&lt;p&gt;When working with Open Source, some of the best learnings come from code reviews.  When I first started coding on projects with strict code reviews (&lt;a href=&quot;https://launchpad.net&quot;&gt;Launchpad&lt;/a&gt;), I was uncomfortable getting nitpicked.  I (wrongly) thought the goal was to have a code review that has absolutely no nitpicks (crazy right?).  Whenever someone had a nitpick with my code, I felt like I couldn&amp;#8217;t code properly.  That&amp;#8217;s when I read this &lt;a href=&quot;https://lists.launchpad.net/launchpad-dev/msg07867.html&quot;&gt;excellent mail&lt;/a&gt; from &lt;a href=&quot;https://launchpad.net/~jtv&quot;&gt;Jeroen Vermeulen&lt;/a&gt; to the &lt;a href=&quot;https://launchpad.net/~launchpad-dev&quot;&gt;launchpad-dev team&lt;/a&gt;:&lt;/p&gt;
&lt;p&gt;&lt;em&gt;A rubber-stamp approval can save you minutes or more in the short term, but it does nothing for your longer-term development.  A rubber-stamp approval leaves you without proof that the reviewer has read and understood the branch.  A rubber-stamp approval sets no performance bar, no communicable standard for reviewers to live up to.  A rubber-stamp approval does not tell you whether your branch was excellent, so-so, or too hard to read.  A rubber-stamp approval buys you time that you could use towards the self-improvement you&amp;#8217;re missing out on, but fails to tell you where you need it most.  A rubber-stamp approval deprives you of a chance to harmonize your part of the codebase with our best practices.  So I don&amp;#8217;t like getting rubber-stamped any more than I like to rubber-stamp others.  Good reviews take time, and that&amp;#8217;s not time I put in for the sheer fun of it.&lt;/em&gt;&lt;/p&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;
&lt;p&gt;&lt;a href=&quot;http://www.flickr.com/photos/jenosaur/3776887321/&quot;&gt;&lt;img src=&quot;http://nigelb.me/images/good-advice.jpg&quot; title=&quot;&amp;#39;good advice&amp;#39; by jen collins&quot; alt=&quot;&amp;#39;good advice&amp;#39; by jen collins&quot; /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;p&gt;It changed my world.  I&amp;#8217;ve had &lt;a href=&quot;https://code.launchpad.net/~nigelbabu/launchpad/bug-title-849121/+merge/75267&quot;&gt;epic&lt;/a&gt; &lt;a href=&quot;https://github.com/mozilla/input.mozilla.org/pull/29&quot;&gt;nitpicky&lt;/a&gt; code reviews after that.  Its even changing how I do my code reviews; I&amp;#8217;m warming up to be more nitpicky.  Lesson learnt &amp;#8212; code reviews are one of the strongest takeaways from open source.  So, if you&amp;#8217;re reviewing code, please nitpick.  Don&amp;#8217;t rubber stamp.  The professional development of the person whose code you&amp;#8217;re reviewing depends on it!&lt;/p&gt;
&lt;p&gt;PS: For acceptable levels of nitpick ;-)&lt;/p&gt;</content>
 </entry>
 
 
 
 <entry>
   <title>How I Got Involved With Mozilla</title>
   <link href="http://nigelb.me/webdev/mozilla/2011/10/16/how-i-got-involved-with-mozilla.html"/>
   <updated>2011-10-16T22:05:00+00:00</updated>
   <id>http://nigelb.me/webdev/mozilla/2011/10/16/how-i-got-involved-with-mozilla</id>
   <content type="html">&lt;p&gt;There have been a fair number of responses to &lt;a href=&quot;http://davidwboswell.wordpress.com/2011/10/11/how-i-got-involved-with-mozilla-and-why-that-wouldnt-work-today/&quot;&gt;David Boswell&amp;#8217;s post&lt;/a&gt; about how he got involved with Mozilla.  Most of the responses have been from fairly established contributors and contributing for a while.  I thought I&amp;#8217;d share my experience since I&amp;#8217;ve been around for hardly 4 months now and moderately active.&lt;/p&gt;
&lt;p&gt;My first attempt at contributing to Mozilla was a disaster.  It was around January 2011 and I tried to contribute to &lt;a href=&quot;https://addons.mozilla.org/&quot; title=&quot;AMO&quot;&gt;addons.mozilla.org&lt;/a&gt; before its cleaned database was publically available.  It took me a while to set the whole thing up and eventually when I did have things setup, I couldn&amp;#8217;t properly reproduce bugs since I had no data and I had trouble adding new data.  Eventually, I gave up out of frustration and I had lesser time available and my interest died out.  Things have definitely changed since, the database for &lt;span class=&quot;caps&quot;&gt;AMO&lt;/span&gt; is now downloadable and I&amp;#8217;m pretty sure my setup troubles were my lack of experience; thank you Wil Clouser for being patient with me back then.&lt;/p&gt;
&lt;p&gt;Around June 2011, I applied to a web developer opening at Mozilla.  The email which confirms my application said this, &amp;#8220;&lt;em&gt;If you’ve gotten this far, we’re certain you care about the future of  the web.  It’s easy to get involved and further that mission.&lt;/em&gt;&amp;#8221;  I think this struck a note in me (whoever thought to add it, great job!).  I wanted to give it another shot.  This time, I just joined &lt;a href=&quot;irc://irc.mozilla.org/#webdev&quot;&gt;#webdev&lt;/a&gt; and asked if any projects needed help.  &lt;a href=&quot;http://davedash.com&quot;&gt;Dave&lt;/a&gt; quickly responded saying that &lt;a href=&quot;http://input.mozilla.com&quot;&gt;Input&lt;/a&gt; could use some help and I started checking out the code and setting it up.  By July, I had cleaned up &lt;a href=&quot;https://bugzilla.mozilla.org/buglist.cgi?list_id=1513777&amp;amp;emailtype1=substring&amp;amp;emailassigned_to1=1&amp;amp;query_format=advanced&amp;amp;bug_status=RESOLVED&amp;amp;bug_status=VERIFIED&amp;amp;bug_status=CLOSED&amp;amp;email1=nigelbabu%40gmail.com&amp;amp;product=Input&quot;&gt;most of the easy bugs on Input&lt;/a&gt; and I continue to &lt;a href=&quot;http://harthur.github.com/bzhome/?user=nigelbabu@gmail.com&quot;&gt;help fix bugs&lt;/a&gt;.  I ended up not getting picked for the position I applied for, but I&amp;#8217;m really glad to be contributing.&lt;/p&gt;
&lt;p&gt;Things have changed since my attempt in January.  There is now a significant interest in making virtual machine images available via either vagrant or some other means so setting up a dev environment is much easier (See posts by &lt;a href=&quot;http://blog.mozilla.com/webdev/2011/10/04/developing-with-vagrant-puppet-and-playdoh/&quot;&gt;tofumatt&lt;/a&gt;, &lt;a href=&quot;http://decafbad.com/blog/2011/10/02/putting-clouds-in-boxes&quot;&gt;lochard&lt;/a&gt;, and &lt;a href=&quot;http://groovecoder.com/2011/10/11/virtual-machines-real-humans/&quot;&gt;groovecoder&lt;/a&gt;).  This reduces the barrier of entry and frustration levels significantly.  A frontend person need not be a linux sysadmin anymore to be able to fix a small &lt;span class=&quot;caps&quot;&gt;CSS&lt;/span&gt; bug.  Another good thing about this is, since everyone will be on the same environment, we&amp;#8217;re reducing the chances of a weird environment problem.&lt;/p&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;
&lt;p&gt;&lt;a href=&quot;http://www.quickmeme.com/meme/356py9/&quot;&gt;&lt;img src=&quot;http://nigelb.me/images/create-vm-all-the-things.jpg&quot; title=&quot;Create VM, for all the things&quot; alt=&quot;Create VM, for all the things&quot; /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;p&gt;Is the route I took still possible?  I&amp;#8217;d definitely say yes.  If you know Python and Django or &lt;span class=&quot;caps&quot;&gt;PHP&lt;/span&gt; or &lt;span class=&quot;caps&quot;&gt;CSS&lt;/span&gt; or JavaScript, there are a bunch of webdev projects, and just asking in #webdev channel could guide you to projects that need help.  It&amp;#8217;s probably a good idea to ask during &lt;span class=&quot;caps&quot;&gt;UTC&lt;/span&gt;-8 working hours since working hours of most of Mozilla WebDev overlap significantly around that time.&lt;/p&gt;</content>
 </entry>
 
 
 
 <entry>
   <title>Monkeypatching Django Admin</title>
   <link href="http://nigelb.me/webdev/mozilla/2011/10/14/monkey-patching-djangoadmin.html"/>
   <updated>2011-10-14T05:10:00+00:00</updated>
   <id>http://nigelb.me/webdev/mozilla/2011/10/14/monkey-patching-djangoadmin</id>
   <content type="html">&lt;p&gt;When I started contributing to Mozilla Webdev, I started with &lt;a href=&quot;http://input.mozilla.com&quot;&gt;Input&lt;/a&gt;.  The bug that was always a mystery to me was &lt;a href=&quot;https://bugzilla.mozilla.org/show_bug.cgi?id=658658&quot;&gt;bug 658658&lt;/a&gt;.  The login page to Django&amp;#8217;s admin worked in Django 1.2.3, but didn&amp;#8217;t work with 1.3, which is what was in the input vendor.  At that time, I didn&amp;#8217;t know about monkeypatching Django well enough, or care enough to fix this.  Last night, I was scrolling through &lt;a href=&quot;http://harthur.github.com/bzhome/&quot;&gt;bzhome&lt;/a&gt; (Thanks again Heather!) to find this bug again.&lt;/p&gt;
&lt;p&gt;This is how it looks before I fixed it&lt;/p&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;
&lt;p&gt;&lt;img src=&quot;http://nigelb.me/images/input-before.png&quot; title=&quot;Before fixing&quot; alt=&quot;Before fixing&quot; /&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;p&gt;After 3 hours of working with folks in #webdev, especially &lt;a href=&quot;https://twitter.com/#!/jamessocol&quot;&gt;jsocol&lt;/a&gt;, &lt;a href=&quot;https://twitter.com/#!/peterbe&quot;&gt;peterbe&lt;/a&gt;, and &lt;a href=&quot;https://twitter.com/#!/r1cky&quot;&gt;r1cky&lt;/a&gt;, we finally &lt;a href=&quot;https://github.com/mozilla/input.mozilla.org/commit/0ac2660d7dc4db2b3e1db5aed49124398a7fd2b4&quot;&gt;fixed it&lt;/a&gt;.  The problem was that the monkey patching didn&amp;#8217;t catch one case, the login and logout views which where not in &lt;code&gt;django.contrib.admin&lt;/code&gt; but in &lt;code&gt;django.contrib.auth&lt;/code&gt;.  Thanks to everyone&amp;#8217;s patience (especially r1cky, since we spent about 1 hour trying various combinations of things), the bug is fixed and I now know a little more about monkeypatching.&lt;/p&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;
&lt;p&gt;&lt;img src=&quot;http://nigelb.me/images/input-after.png&quot; title=&quot;After fixing&quot; alt=&quot;After fixing&quot; /&gt;&lt;/p&gt;
&lt;/div&gt;</content>
 </entry>
 
 
 
 
 
 
 
 
 
 
 
 <entry>
   <title>Hello Mozilla!</title>
   <link href="http://nigelb.me/mozilla/2011/09/06/hello-mozilla.html"/>
   <updated>2011-09-06T19:35:00+00:00</updated>
   <id>http://nigelb.me/mozilla/2011/09/06/hello-mozilla</id>
   <content type="html">&lt;p&gt;Hello Planet Mozilla! I was added to the planet about 2 weeks ago and never actually got around to writing a hello post.  I&amp;#8217;m Nigel and I contribute to a few of the WebDev projects, most notably &lt;a href=&quot;http://input.mozilla.org&quot;&gt;input&lt;/a&gt; and &lt;a href=&quot;https://crash-stats.mozilla.com&quot;&gt;socorro&lt;/a&gt;. I&amp;#8217;m also currently writing a patch for firefox to help &lt;a href=&quot;http://support.mozilla.org&quot;&gt;&lt;span class=&quot;caps&quot;&gt;SUMO&lt;/span&gt;&lt;/a&gt;, which I seem to work on when I&amp;#8217;m sleep deprived.  I&amp;#8217;m also an active contributor to Ubuntu and Launchpad and often blog about my work there, however, my posts to the planet will exclusively be the work I do on Mozilla projects.  Hopefully, I shall have lots to write soon!&lt;/p&gt;</content>
 </entry>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 <entry>
   <title>Helping with breakpad</title>
   <link href="http://nigelb.me/mozilla/2011/07/23/helping-with-breakpad.html"/>
   <updated>2011-07-23T10:55:00+00:00</updated>
   <id>http://nigelb.me/mozilla/2011/07/23/helping-with-breakpad</id>
   <content type="html">&lt;p&gt;Wednesday was a fun day. I finally decided to take the plunge and step in and help with &lt;a href=&quot;https://wiki.mozilla.org/Breakpad&quot;&gt;Breakpad&lt;/a&gt;. Fine day to make that decision too, since the &lt;a href=&quot;https://wiki.mozilla.org/Breakpad/Status_Meetings&quot;&gt;Breakpad status meetings&lt;/a&gt; are on Wednesdays at 11 am Pacific Time.  I ended up being on the call via Google Voice. (Side note: Skype on linux had problems with Mozilla toll-free number).&lt;/p&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;
&lt;p&gt;&lt;a href=&quot;http://www.flickr.com/photos/35323150@N02/3389668627/&quot;&gt;&lt;img src=&quot;http://nigelb.me/images/giftbox.jpg&quot; title=&quot;Gift Box by Ken&amp;#39;s Oven&quot; alt=&quot;Gift Box by Ken&amp;#39;s Oven&quot; /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;p&gt;I now have &lt;a href=&quot;https://developer.mozilla.org/en/What_to_do_and_what_not_to_do_in_Bugzilla#Editbugs_privilege&quot;&gt;editbugs privilege&lt;/a&gt; on bugzilla and I already fixed my &lt;a href=&quot;https://bugzilla.mozilla.org/show_bug.cgi?id=605574&quot;&gt;first bug&lt;/a&gt; on Breakpad!&lt;/p&gt;</content>
 </entry>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
</feed>

