Assuming I've found an open source project I'm interested in, how do I evaluate the project(the members, the activity level, etc) to determine if joining the project will be a good use of my time and energy?

6 Answers 6


Look at the source control history.

From that, you can see checkins, review code, gauge the activity level, and generally see the quality of commits. You can learn the most from just looking at the source code activity.

  • 2
    +1 . Acts say lot more than promises
    – user2567
    Oct 1, 2010 at 16:56
  • 2
    Also look into the bug tracker. May 27, 2011 at 8:57

You can do several things:

  1. Look at their mailing list archives, see how the community behaves in public
  2. Look at the frequency of their releases and the quality of the release notes
  3. Look for a clear mission statement and a list of features/requirements on their site
  4. Check its maturity - if you're looking to be mentored/eased into a project then a mature project is more forgiving than a brand new project. The reverse is also true.
  5. Look at the structure, is it a Benevolent Dictator or a community council approach
  6. Look for their joining instructions, friendly? clear?

That's a start anyhow :)


Test the waters a little bit first. Hang out in the mailing lists, irc channels etc and watch how things work. Fix a bug or add a known requested feature yourself and submit a patch. See how it is accepted ... do they work with you to get it edited and included or fight you?

Also evaluate yourself. Do you really have the time and interest to stick around and be worth the project investing in getting you up to speed?


Look at the test coverage. Contributing to a project with a history/mandate of only accepting pull requests/patches with passing tests is going to be a much more successful and enjoyable process than trying to collaborate on something with developers who can't/won't write unit tests.

I've had to work on updating old versions of abandoned libraries a couple of times for work. Normally, I'd be excited to get paid to contribute to open source projects. But when there are no tests and poor documentation, it's just hellish.


Join if you will enjoy1 working on the project.

1: "enjoy" could mean whatever makes you happy.


Base it on your goals (not sure what they are). If you're trying to get programming experience, you don't realy have much to lose by trying it out. If anything, you may learn how 'not' to code.

If you're trying to make a name for yourself by attaching yourself to a great project, you may have a tougher time. Try searching the net for any blogs or comments from other developers and users of the software (If it is that far along.). Take a look at the coding progress. Is it moving along at a pace to your liking.

Trying to find out if the other members "play nice with others" may take a combination of some of the practices I just mentioned.

Try it out. "It don't cost nothin'" - John Belushi, Animal House.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.