Contributing to open sources

<p>How does one go about contributing to open source projects? I know I won’t be able to do very much to help right now, but I read that there are open sources that need help with documentation/simple tedious tasks. I really want to start getting my foot through the door. I’ve tried googling things but most of my results dated 5years or so ago :s</p>

<p>Point your IRC client at irc.freenode.net, and start joining some of the IRC channels towards various open source projects. </p>

<p>If you’re a hardware hacker like I, go out and acquire something relatively unique that doesn’t have a driver, or has some novel use – and start coding something up. For instance, there’s the new “Raspberry Pi” project, which has a plethora of potential applications in an embedded low-power (but relatively high performance) platform that you can tinker with. Just by working with a platform like that, you’ll get experience doing cross-compilation, working on embedded platforms, working in constrained memory and I/O environments.</p>

<p>If you follow the IRC channels its not unheard of for people to have problems with various things. Sometimes fixing those problems or minor bugs can be literally just a couple lines of code.</p>

<p>For instance, on one project, I was on there the other day, and an individual had a network card with a PCI ID that wasn’t previously enumerated in pci.h, the master Linux enumeration table for PCI IDs. I whipped up a patch, helped the user build the kernel with my patch, got him to test it, and then reported the results and a proposed patch to the kernel maintainers. Such results will likely appear in the next iteration of the kernel.</p>

<p>As for documentation, yes, there’s tons of documentation-type stuff that can be done on the drivers, but you’ll probably need to gain an intimate understanding of what the various modules and drivers actually do.</p>

<p>@KevinTz, what types of projects are you interested in? Have you looked at any of the projects in SourceForge? What languages do you program in? If you program in Perl, there are plenty of CPAN projects to contribute to. Also, a five year old open-source project may not be a bad thing to work on. If it’s something that uses IPv4 addressing, for example, it will need to be upgraded to be IPv6-compliant.</p>