But how do you decide to use a certain project for your specific needs? you have to consider the following basic questions:
- what is the goal of the project and does it match to the goal of your usage?
If you are not able to answer the question or if both goals doesn't match the roadmap is likely to mismatch => you cannot participate on improvements and in same cases are no more able to upgrade to newer version.
- how big is the user community?
the more people using the project the more use-cases are implemented and considered to be stable
- Is your use case similar to a significant group of the user community?
same rational as in point one and two
- How many active developers working on the project?
The activity multiplied with the amount of developers divided by the size of the project gives you an impression how mature the current code is and how sufficient development will be
note: big is no value for itself. a small but focused developer community sometimes is a better choice as long as their interest for the project stays stable
- How active is the development?
Same rational as above
- Does the license fits to my use-case or company policy?
- And of course the most important one: does the project fits to my system requirements?