I’m developing a suite of software tools that I need help with which is why I want to release my software open-source. People should be able to use and modify my code as they please while contributing to my project. Ultimately, the tools that I develop will require a paid commercial license, but may be free to those for non-commercial purposes. This software suite will consist mostly of website plug-ins. Other tools I develop open source be used for consulting.
What would you suggest as a license?
1
Licensing some part of the code under open-source license means that this part will be always open-source. Then you can’t control how the people will use it. If you choose copyleft license, you only can be sure that no one will be allowed to use this code for closed source projects.
If you choose some permissive license – then everyone will be allowed to create whatever projects he wants based on the released code.
If you can keep all copyright for you (and this can be done only by additional agreement with the contributors) then you (and only you) can use this open source cpde for closed source projects. Also, later you can decide to stop releasing the new versions under open source license. (but not the already released versions) – in this case (if your project is really attractive) the project will be forked and all contributors will move to work on the open source fork.
Disclaimer: talk to an attorney. I am not an attorney.
You are contemplating the need to be able to dual-license your software someday down the road. The authority to licence something is derived (directly or indirectly) through owning the copyright to the materials.
Therefore, you NEED to get copyright assignments from all contributors, or at a minimum, have them sign an agreement which gives you the unlimited right to sublicense/relicense the materials.
As for the open source part of the dual licence, that is your pick. If you wish to prevent it from becoming part of a closed-source product, then you should pick a viral licence like the GPL. If you are not so worried about that, then the BSD or Apache license would be quite suitable.
In summary:
- If this matters to you, consult an attorney
- You need to have the legal authority from the copyright holder to licence the software as closed source. This means either they transfer the copyright to you or you are granted liberal rights to this.
1