So you’ve heard about this great piece of open source software and you are considering either contributing to it or using it a very serious way, maybe even a business critical way. What are some of the questions you should be asking about the project?
- Is it good code and is it well architected?
- Who are the founders, contributors, and users?
- What are the motivations and behavior of each?
- What is the form and governance of the community?
- Is there a single dominant player that is controlling the direction or is it a more democratic community?
- Are there intellectual property issues involving copyrights or code provenance?
- What about that license?
You need the confidence that the code and the community that supports it is fit for your purpose, are sufficiently stable, and have no “gotchas.” That is, there should be no surprises around the intellectual property involved and no unexpected strangeness around the community and its leadership.
What other things do you look for and what other advice you would give along these lines?