How to choose a GitHub license and why is it important not to make the wrong choice? GitHub is the largest service for the joint development of IT projects and their subsequent hosting. With the help of this web service, an unlimited number of people can work on a project at once, as well as from absolutely anywhere in the world. Also in GitHub there is a management system or control that allows you to view and control absolutely all changes by developers for any time, and it also allows you to return to the state that occurred before the changes.
What is a GitHub license
A license is a special document that was established by the state form and allows one to engage in a certain type of entrepreneurial activity, which necessarily requires special attention from the state party. But, most often, in practice, only abbreviated licensing agreements are used or agreements that provide for the issuance of private law licenses. In general, the license pursues only one, but the most important goal, it is an agreement on obligations and rights between the licensor and the licensee. These duties and rights can be absolutely anything, but only within the framework of the law. A striking example is that the licensor may require the mandatory indication of the name of the copyright holder when using the work by the licensee. Or, for example, to allow copying of the work,but prohibit absolutely any modification of it. Or, to deduce such requirements that the work should be produced on absolutely the same conditions as the original, and so on, there are a lot of examples of different conditions being put forward.
But, also we must not forget that the license protects the rights of not only the licensor, but also the licensee. Since in it you can clearly see and read all the terms of use of the work and therefore he does not need to be afraid that the licensor will suddenly demand any royalties or any other compensation for the use of his work.
If you opt out of a license that is associated with a work, the copyright will still apply in accordance with the legal rules in force in that country. Simply put, the absence of a license does not in any way imply that other authors can use this project however they want. Everything, absolutely, on the contrary, because without any specific license, a programmer in no way renounces the rights that were granted by law. It is also important to always remember that the license governs all rights and obligations. This is to protect the owner of the work from user expectations and what any warranty implies. After all, no one wants his code to go to court in any way.
What is copyright
Copyright appears to a person only when, as a result of intellectual activity, he creates a work that will be unique, but at the same time useful, as an example, you can take the writing of the same program. When all of the above is done, the person becomes the author and now he has absolutely all the copyright for this work. It must also be said that copyrights are proprietary and non-proprietary. Their difference is that property rights can be transferred to anyone, but not property rights will always remain only with the author in any situation. After all, being an author is an inalienable and inalienable right.
What is an Open Source license for?
This is also a fairly popular question among novice developers and programmers, since they simply don’t understand why they should attach any license to their projects, because without it the project can also easily exist. However, this is not entirely true, because if, for example, some novice developer wrote some rather important and useful piece of code, but did not protect it with a license, then other users have questions. And precisely because of this, when clients come to him and want to use this piece of code for their commercial purposes, they see that the code does not have any license and simply refuse it. This is due to the fact that companies simply will not use the code without a license, because they do not need problems with the law and lawyers.
Which GitHub license is right for certain conditions – how to choose?
There can be no exact answer to this question, since the choice of a license depends only on the goals of the project and on the personal preferences and desires of the developer himself. As you can see, there are a lot of various licenses on GitHub, and most importantly, they are all free and publicly available, which means that every programmer can find the
Open Source license that is exactly suitable for his project. But, most importantly, we must not forget that an Open Source license is not just a code with no license.
- Strongly protective.
- Weakly defending.
- Permissive.
Strongly protective
Strongly defensive licenses are most often variations of the GPL. These licenses necessarily require licensing of the project, as well as the disclosure of source codes, even in spite of how any code or project will be used or has already been used.
Weakly defending
Weakly defensive licenses are most often variations of the Lesser GPL. In which the main difference from permissive licenses is that it is simply necessary to license the program under the GPL license, as well as to provide the source codes without fail. Moreover, if a programmer’s project contains a library, that is, static linking or dynamic linking under the LGPL license, then it will also be compatible with any of the programmer’s project license.
Permissive
There are a large number of permissive licenses, among them the most popular licenses are MIT, Apache 2.0, and BSD. With slight variations, these licenses have the ability to allow the use of the code both in Open Source projects and for commercial purposes and projects. But, in this case, it is important to remember that it is necessary to indicate the authorship of the original program.
Other popular GitHub licenses
In addition to these three groups of licenses, there are others, for example, another of the most useful licenses is GPLv2 with classpath extensions. This license can also be used both in Open source projects and in commercial projects and purposes. Its most popular appearance is at Oracle, this company uses GPLv2 with classpath extensions to license its Open Source projects and solutions. This license is quite important and useful, as ordinary GPL licenses, for example, can never handle bytecode. That is, they have a special description of the compilation and linking process, which is completely inappropriate for other interpreted programming languages, such languages include the most popular Java language.It is for such cases that a special GPLv2 license with classpath extensions was released. After all, it very clearly and clearly says that the library that was released under this license can be used in commercial projects and purposes with absolutely any other license.
GitHub licenses .
Adding a license
After the final license is finally selected, all that remains is to add it to the project root itself. To perform this action, you need to add the selected license under the project root during the creation of the project itself, or in general at any other time. But even in this action, the GitHub web service managed to take care of its users and they made a fairly convenient way to add the final license even at the start of the project itself.