What license should I pick on codeplex if I want an open source project? What are the pros and cons on all licenses?
Share
Sign Up to our social questions and Answers Engine to ask questions, answer people’s questions, and connect with other people.
Login to our social questions & Answers Engine to ask questions answer people’s questions & connect with other people.
Lost your password? Please enter your email address. You will receive a link and will create a new password via email.
Please briefly explain why you feel this question should be reported.
Please briefly explain why you feel this answer should be reported.
Please briefly explain why you feel this user should be reported.
If you want to ensure that anyone who modifies your program or builds on top of your program (by linking to it) should share their changes in the same way that you share yours, you should choose the GPL.
If you want to ensure that anyone who modifies your library share their changes, but allow people to dynamically link to it from a proprietary application, in which they don’t share the source with you under the terms you shared it with them, you should choose the LGPL.
If you want to allow anyone to use your code as they wish, with no significant restrictions other than providing you credit, you should use the MIT (also known as X11) license. It is short, simple, easy to understand, and permissive.
If you need to integrate with an existing project that already has a license, you should probably just use the same license. Having everything in one project under the same license makes life a lot easier for anyone who wants to use it. But if you’re creating a new project, I would recommend one of the three licenses listed above, since they are widely used, well known so people know exactly what you mean when you mention them, and will make it easier to integrate your code with existing projects. There are lots of other licenses to choose from, but in general, they just make things more complicated and difficult (because they are less well known, because of license incompatibilities, etc) without improving on one of the licenses listed above.