Blag

He's not dead, he's resting

Three Simple Tips for Contributing to Open Source Projects

Three simple tips for contributing to open source projects:

  • If a program says “please provide this information when reporting a bug”, provide that information. If it says “please attach these files to your bug report”, attach those files — although you may want to check those files for incriminating data first…
  • When reporting a build failure, make sure the output you provide includes the actual error, and remember that the first such message is the actual error, not the last one. Don’t start your paste at the line that says “make: *** [check] Error 2” or “9 of 18 tests failed”, since the information needed to handle your bug is before that.
  • When sending a patch, make sure that your patch applies against a recent master. Receiving patches that don’t apply is annoying, although it’s understandable if your patch used to apply recently but now doesn’t (and often a three way merge will fix that automatically). But if you’re basing your patch off unpublished changes and it doesn’t apply, fixing it has to be done by hand. Spend a little of your time making sure your changes work against upstream (‘git rebase’ and ‘git cherry-pick’ are immensely handy here), rather than wasting the time of everyone who reviews your patch.
Advertisements

One response to “Three Simple Tips for Contributing to Open Source Projects

  1. iaindb September 30, 2009 at 5:08 am

    Catch 22: the people who read this blog, probably have common sense and know this already; and the people who need to know this probably won’t ever read this blog…

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s