> > If you want to encourage people to contribute to your project, and you > want your project to survive and prosper, then GPL is a better choice > because it doesn't encourage people to make proprietary programs to > compete with yours, and it forces people who use your code to share their > enhancements with you. So GPL is a much better choice for many projects > and that is why it is so widely used. > I guess that depends on what sort of software you are developing. In the Java ecosystem, almost all of the useful 3rd party libraries for Java are not GPL licensed - since so many Java developers work for large companies that are scared of GPL. In my current job, I'm not allowed to use any GPL libraries. But Apache, and other less restrictive licenses are fair game. When I make use of a third party library, I have no interest in competing with that library. Nor do I have any interest in maintaining my own modified, perhaps better or bug fixed copy of that library. If I have to modify the library for my job at hand, I'm going to release my changes back to the maintainer - because that is the pragmatic thing to do. I want my changes integrated into the next version, so I don't have to re-fix later I have no interest in maintaining my own copy of his code. With most types of software, there is no reason to put the GPL gun to your users heads. They are already inclined to make the project better by providing patches, etc. At least that's the way it works with most of the opensource software that I interact with.