Contribute to Open Source Projects

Robin Kim
therobinkim
Published in
2 min readSep 27, 2014

Note: This was originally posted on my blog at https://therobinkim.com/blog/contribute-to-open-source-projects. Any updates will appear there and not here.

Have a solution to a problem that nobody’s solved before? Write your own app! Somebody has something you want to build on? Find it on Github!

When you first find an open source project that looks fairly interesting, for a newbie, the idea of actually contributing to that project can be daunting. But in truth, it’s not too bad. There’s something to do for everybody.

  • Update/write new documentation for recently added features
  • Update/write new tests
  • Fix a bug (check out the “issues” tab for the Github repo of your iterest)
  • Add new features

But wait! You forked the repo, cloned it to your local machine, updated a dead link on the Readme.md, pushed the changes to your repo on Github… now what?

It’s time to make a pull request! But a few tips to keep in mind:

  1. Have good commit messages. Make sure you’ve read the Contributing.md (or similar notes) to see what kind of standards have been set for commit messages. Oops, you messed up? Try looking into git rebase -i to squash commits or edit the commit messages! (You may have to git push -f origin master to forcefully update your Github repo afterwards.)
  2. Only submit one commit per pull request. The collaborators of the Github project can’t pick and choose your changes; it’s an all or nothing deal. So give them as little code as possible to reject!
  3. Be very specific with your pull request message. Say what you changed, say what you didn’t change, and say it again if you need to.
  4. Screenshots are amazing. Take one before and after your change, if it has an impact on the frontend. This helps the collaborator merging in your pull request by eliminating the need to (a) find your fork (b) clone your fork (c) run your fork locally on their machine (d) guess as to what changed (e) go back to your pull request or (f) do none of the above and just let your pull request sit around.

Following these tips won’t guarantee your pull request to a open source project will be merged, BUT they’ll certainly break down the initial barriers.

--

--

Robin Kim
therobinkim

Full stack software engineer. I teach at Hack Reactor Remote @ Galvanize.