3 ms·
In my experience, you don't need to be a major contributor to an open source project to gain notice. I've only 3-5 minor contributions (work rules generally pre
by hermitdev 7y ago
In my experience, you don't need to be a major contributor to an open source project to gain notice. I've only 3-5 minor contributions (work rules generally preclude me from being more active)
While my contributions haven't been large in terms of LOC, nor have I added new features, I have identified, debugged and supplied patches for bugs.
I mean, I did this out of self interest, of course.
A defect in a certain DB lib on bulk copying with nulls would fail (uninitialized memory in the C portion of the lib). That took about 6 weeks of on again/off again attention. Debugging a C module in Python is a bit of a pain in the ass.
Fixing 64-bit compatibility in a Windows ODBC C++ wrapper was another. This was a pain because it required a line by line audit to make sure the correct types were used on every ODBC call.
A problem with some inline assembly using rtdsc as a highres timer reporting 200 years had elapsed in a few minutes. This took a long while to figure out and only stumbled into the cause of the bug. I was using the timer to measure socket timeouts. We were supposed to timeout after 30 seconds, but randomly, the timeout would trigger immediately. Stumbled into it because we were using the same timer to measure database queries. Found it odd that my logs were reporting queries were taking more than 200 years to complete, as I sat there reading the logs and seeing them complete.
Another was an issue of file handles being, no pun intended, mishandled on a .Net logging lib. I forget the details on this one. Dont think the file was being properly closed at exit?
Reported an issue with Boost DateTime overflowing on certain arithmetic situations. Coworker found the issue, but I narrowed down the issue, figured out a solution and reported upstream. Finding the wrong typeset in a template zoo like Boost is an arduous task.
I'm sure there's more I've forgotten, but my contributions haven't been much in the way of LOC. My contributions have been in the hours spent and expertise in finding the typically 1 or 2 lines that are wrong.
Having experience like that on a resume (and being able to talk knowledgeably about what you did and how you do it) do open doors. Having "found and fixed obscure bug" in a widely used OSS lib is nearly just as valuable as churning out lots of OSS code. Probably more noticeable if you fix bugs in an OSS project that lots of people/companies use, rather than churning out tons of lines in a project almost no one has heard of or uses (beyond the authors).
Edit: spelling
Addendum: providing bug fixes for 3rd party libs also demonstrates an ability to work with and understand code written by someone else, which is a valuable skill in of itself.
- xiphias2 7y agoI would add one more thing: if you contribute patches to an OSS, you are already working with people who can help you find a job and skip the HR part.