Many developers and designers want to publish their work in the form of open source projects. They want to be able to share their code. The open-source community keeps its feet on the ground every day. Open programs exist for any kind of task you can imagine. And many web developers use free software as a foundation for their work (WordPress, Drupal and many other CMS are open, free and free).
But the situation is such that there are a great many open-source licenses, and sometimes it is not easy to understand what they really mean. What rights do developers get when they choose an open license? Let's try to figure out at least in general terms.
What is licensing?
In a nutshell: licensing gives third-party authority to use your product.
')
Licensing is an excellent alternative to simply transferring a product to the public domain or giving permission in each case. Having released your product to the public, you lose all rights to it and no one is obliged to you. In particularly clinical cases, this step is fraught with litigation, if your program has caused someone harm. And in the second case, you will spend more time on issuing permits than on the development itself.
Open source licenses give people the opportunity to contribute to the project without asking anyone for special permission. They also protect you as an author, which guarantees at least the presence of your name in the list of developers. It will also protect your work from being stolen by others.
GNU General Public License
The GNU GPL license is one of the most commonly used licenses for open-source projects. The GPL guarantees a wide range of rights to developers who work on open source projects. It allows users to legally copy, distribute and modify software. This means that you can:
Copy software.Copy to your servers, to client servers, to your own computer, and indeed anywhere. Also, there are no restrictions on the number of copies made.
Distribute software on your own.You can make a direct link to your site. You can write to the discs and give to friends. You can print the source code of the program, make them airplanes and start up from the roof of the house.
Earn on software distribution.If you want to sell free software - no problem. But you must attach a GPL license to it, which explains the fact that this software is actually free. Many people earn money on technical support, mailing lists, etc.
Make any software modifications.If you want to add or remove some functionality of the program - there are no obstacles for this. If you want to use part of the code in your project, you have the right to do so. The condition is that the projects based on the GPL should continue to be distributed under this license.
Using the GPL is very easy. You only need to enter the necessary information into the source code of your program and attach a copy of the GPL to it.
GNU Lesser General Public License
There have been many derivative licenses from GNU. The most popular of them is the LGPL. It gives a few more rights than the standard GPL. Typically used for licensing libraries that need to work in conjunction with non-GPL and non-open source software. Since the GPL requires that software with areas of the GPL also be distributed under the GPL, developers cannot use the code under the GPL license to develop proprietary commercial software. The LGPL gives this right.
BSD license
There is a whole family of BSD licenses that impose far fewer restrictions on the distribution of a product than a strict GPL. Among the entire range of BSD licenses, there are 2 of the most used: New BSD / Modified BSD and Simplified BSD / FreeBSD. Both are GPL-compliant and approved as free licenses by the powerful Open Source Initiative.
The New BSD license allows unlimited distribution for any purpose, does not give any guarantees and does not bear any responsibility. The license also contains a provision restricting the use of the names of the project participants to confirm the work without special permission. Speaking in normal language, “do what you want with the code, but don’t say that you wrote it”. The main difference between New BSD and Simplified BSD is that the latter does not include the clause of this “special permit”.
MIT License
The MIT license is probably the shortest and most generalized of all popular open source licenses. Its provisions are more liberal than other licenses. The main provisions are as follows:
This license permits, free of charge, to persons who receive a copy of this software and related documentation (hereinafter referred to as “the Software”) to use the Software without restriction, including unlimited right to use, copy, modify, add, publish, distribute, sublicense and / or sale of copies of the Software, as well as the persons to whom this Software is provided, subject to the following conditions:
The aforementioned copyright and these terms and conditions must be included with all copies or relevant parts of this Software.What does all of this mean:
You can use, copy and modify the software as you like. No one can prevent you from using such software in your projects, copy as many times as you need and modify as you want.
You can provide your software for free, or you can sell it. There are no restrictions on this.
The only limitation is that your software must be accompanied by a license agreement.
Simply put, everyone can do everything they need as long as the product is accompanied by a license.
Apache License
Apache license, version 2.0, gives a set of clear rights. These rights may apply to both copyrights and patents. Since many licenses can be applied only to copyrights or only to patents, the flexibility of the Apache license has in certain cases an obvious advantage.
Here are the main points:
Rights are foreverAs soon as they are provided to you, you can always use them.
Global RightsIf rights are granted in one country, then they are distributed in all other countries. For example, if you live in the USA, and the original license was issued in India, you are still not limited to using the code (I can’t say anything about Ukraine, Russia and Belarus, we are all very unsteady).
Rights granted free of chargeIn no case will there be a charge for use.
Rights are not exclusive.You can use work like any other.
Rights are inherentNo one can take away your rights. In other words, you don’t have to worry that one day, by creating some amazing code, someone will tell you: “Sorry, but you can’t see it anymore.”
Distribution of the code also has special requirements, mainly related to the mention of the names of the developers.
Creative commons
Creative Commons (CC) license is not a completely open-source license, as it is usually used in multimedia and design projects. There are a wide variety of CC licenses and each of them gives certain rights. The CC has 4 main points that can be used alone or in combination with each other. Here they are:
Attribution (attribution) - BYThis license allows others to distribute, process, correct and develop the work, even for commercial purposes, provided that the author of the work is indicated. This is the freest license in terms of what users can do with the work.
Copyleft - SAThis license allows others to modify, correct and develop the work, even for commercial purposes, provided that authorship and licensing of derivative works under similar conditions are indicated.
Non-commercial use - NCWork may be modified, distributed, etc., but only for non-commercial needs. The concepts of “commercial” and “non-commercial” are a bit vague. For example, some may interpret “non-commercial” as synonymous with the phrase “not for sale”. Others may assume that they do not have the right to use even where there is simply advertising. In general, “commercial” means any material benefit.
Derivative - NDThis means that you can copy and distribute a licensed work, but you have no right to modify it or create your own work based on the original.
As already mentioned, these components can be combined. The most rigid license is “With attribution - Non-commercial - Without derivatives” (BY-NC-ND). This is the best option in order to free up your work, but to maintain control over it. And the least rigid license - “With indication of authorship” (BY) means that people can use your work as long as they indicate your authorship.
CC licenses are designed for design work, not for software development, but nothing prevents you from using it in both cases. Just carefully go through all the items and choose what you like.
PS
Here are the six most commonly used open-source licenses. In fact, they are much more, some sources claim that about 60. Many practically duplicate each other with some small reservations, which creates difficulties in their selection and use. The Open Source Initiative is working to reduce their number to an acceptable level. I think that four things would be enough for all occasions: GPL, LGPL, BSD and CC. I recommend that you familiarize yourself with each of them in more detail, and if you are interested in using these licenses in your business, as IBM, Google and hundreds of other large companies do, be sure to consult your lawyer. In the post-Soviet countries, as far as I know, there is no legal protection for open-source licenses, at least there was not a single judicial precedent. On the other hand, the lawyers of the OSI (Open Source Initiative) guarantee the protection of your rights under each of these licenses.
Amendment from
tarzanasg :
“Non-commercial use - NC” and “Without derivatives - ND” do not apply to open source. The use of these conditions makes the license and texts with media files proprietary.