Thursday, January 19, 2012

Baby steps into Open Source

"You should get involved in Open Source. It'll help you network, and practice your skills, and bolster your resumé. And we need more women in Open Source."

To which I think "Hmm... that sounds complicated, and I don't know where to start and I'm busy and I'll get around to it someday."

Well, Someday showed up yesterday afternoon. I'd like to talk about 2 reasons why I think Someday showed up, and then I'll tell you how it went.

The first reason Someday showed up is that I found something I wanted to fix and cared enough about to actually go fix.

"Today has been a prime example of why productivity should never be measured in lines of code! Spent hours just to *move* a line to fix bug." -- Me, on Twitter, yesterday afternoon.

I was using this library for some internal testing at work. The gem version worked, but the latest on GitHub was failing. (Hurray for test cases I could easily run against both versions, toggling back & forth!)

I don't think I would have spent so many hours puzzling over this code just for the sake of working on Open Source. I have to be solving some problem that I care about. (Or at least that I care about getting paid for!)

Once I committed the code to the subversion repository at work, I could have said "Done!" But this is when Someday's other reason kicked in. For months (years?) now, DevChix women have been encouraging each other to get involved in Open Source projects, for all the reasons mentioned at the beginning of this post. And emphasizing how easy it was. And not letting each other get hung up on whether our code is good enough or other silly excuses. All this came flooding back to me as I tried to move on to the next piece of work. I kind of HAD to at least look at GitHub and see whether I might want to give this change back to the original project. Just check and see how hard it would be.

I set up a GitHub account, and walked through their guide for installing git locally, forking a repository, (making a local change), and sending the original developer a change request. All of that took only about an hour. One hour. Seriously. (One and a half, if you count the time to write this blog post.)

Thank you, GitHub, for making it so easy to contribute to a project.

Thank you, DevChix, for encouraging me to dip my toes in an open source project. This is me maybe helping encourage the next person.

As for finding a project you care about, I'm not sure what to suggest. But when it comes along, please join in.