Settings

Theme

Ask HN: How to Start Contributing to Open Source?

1 points by gcz92 11 years ago · 2 comments · 1 min read


I have been a serious follower and user of a couple open source projects but have been extremely overwhelmed by the idea of contributing to the project. How do I start? How did you start? What should I follow to get more information about open source communities?

viraptor 11 years ago

Where to start? Find a project that interests you, or one where you already reported some bug. Depending on your skills, it may be better to choose a project which doesn't have a huge codebase (quicker iterations possible), but does have more than one developer (you'll get quicker responses).

How to start? Get as much information as possible about the project: what's the dev/review strategy (github pull requests / mailing list / review board / ...), do they have contribution guidelines, do you have to sign any forms, etc. Browse through existing issues - some projects label easy bugs as "entry level" or similar. They're a good way to get involved.

Have a look at other contributions and find make sure you know what checks they go through. Make sure you're not wasting other developer's time. For example be sure that your new code passes all tests and adheres to the project coding guidelines. If it looks like it may need updated documentation, include updated documentation. If it looks like it may need extra explanation, make sure to include it in the patch.

The only thing that's common in open source communities is that every one is completely different and has its own rules. :) (And that they're mostly based on free time contribution and mutual respect)

informatimago 11 years ago

1- get the source, 2- read the source, 3- find the bug list (trac, github issues, launchpad, whatever the project uses), 4- search for an open bug that seems easy to correct, 5- correct the bug, 6- request a merge, or send a patch, 7- listen to comments and reviews about your patches, 8- repeat a certain number of times, 9- eventually ask for write permissions on the project repo, 10- continue correcting bugs and adding features, 11- write some documentation, 12- help newbies.

Keyboard Shortcuts

j
Next item
k
Previous item
o / Enter
Open selected item
?
Show this help
Esc
Close modal / clear selection