5W1H of Open Source What—What are the Open Source Licenses?

2022-05-25 13:39:09
Chen Qi
Original 1321
Summary : Open Source License refers to the agreement developed by the open-source community to safeguard the legitimate rights of authors and contributors, ensure that the software will not be stolen by some commercial institutions or individuals, and affect software development.

Open Source License refers to the agreement developed by the open-source community to safeguard the legitimate rights of authors and contributors, ensure that the software will not be stolen by some commercial institutions or individuals, and affect software development. The Open Source License stipulates the rights and responsibilities of users when using open-source software. Although it does not necessarily have a legal effect, it is also one of the very important pieces of evidence when involving software copyright disputes.


While pursuing "freedom," software should not sacrifice the interests of programmers, otherwise, it will affect the creative passion of programmers. Therefore, there are more than 90 Open Source Licenses recognized by the Open Source Initiative to ensure the rights and interests of open-source workers.


For developers preparing to write open-source software, it is also highly recommended to learn about the current most popular Open Source License and choose an appropriate Open Source License to protect their software rights and interests to the greatest extent. From loose to tight ranking, the commonly used Open Source Licenses are:

  • MIT
  • BSD
  • Apache Licence
  • LGPL
  • GPL

MIT、BSD are both derived from universities, reflecting their simplicity, openness and inclusiveness.

MIT, BSD, and Apache all support the subsequent development of the closed source.

GPL, LGPL infectious open source, the code here is used in the compiled code. Both must be open source.


For specific selection, please refer to the analysis diagram of Ukrainian programmer Paul Bagwell:

MIT

MIT is a very permissive license that comes from universities. It can be one of the most concise and permissive Open Source Licenses in history.

  • Users can do whatever they want with their code
  • Users should include copyright notice and license notice in the copy of the project
  • The user does not take any responsibility

The author wants to keep the copyright without any other restrictions. Whether a binary distribution or a source code distribution, the original license must be included in the distribution. Application cases using the MIT include JQuery, Rails, etc.

BSD

The BSD is also very permissive, giving users a lot of freedom, basically allowing users to "do whatever they want": users can use, modify, and redistribute the software under the license, and they can distribute and sell the software as commercial software. The premise is that the following three conditions must be met:

  • If the redistributed software contains source code, the source code must continue to comply with the BSD.
  • You need to include the BSD in the original code in the class library/software documentation and copyright notice if the redistribution is only a binary class library/software.
  • Marketing using the original open-source software's name, author's name, or institution's name is not permitted.

BSD code encourages code-sharing but requires respect for the copyright of the code author. Because BSD allows users to modify and redistribute the code and allows the use or development of commercial software distribution and sales on the BSD code. It is a very friendly license for commercial integration and is popular with large companies because they can fully control these third parties. The code can even be modified or re-developed when necessary.

Apache Licence

Apache Licence is a license adopted by Apache, a well-known non-profit open-source organization. This agreement is similar to BSD. It is also applicable to commercial software, encourages code sharing and respects the original author's copyright, and allows code modification. Still, it pays more attention to patent rights.

  • If you modify the program source code, you need to declare it in the document.
  • If the software is written based on other people's source code, you need to retain the original code's agreement, trademark, patent statement, and additional content information declared by the original author.
  • If there is a declaration file in the reissued software, include the Apache license and other licenses in this document.

The Apache Licence is also a commercial application-friendly license. Users can also modify the code to meet needs and release/sell it as an open-source or commercial product. The popular Hadoop, Apache family, SVN, MongoDB, and other projects are developed based on the license.

GPL

The GPL comes from the free software alliance GNU, and GPL / LGPL all focus on the open-source and free use of code and derivative code.GPL is infectious open source. As long as the software contains products or code that follow the GPL, the software must also follow the GPL. It must be open-source for free and can not be charged for closed source. Therefore, this license is not suitable for commercial software.

  • Copy Freedom: software can be copied to anyone's computer without limiting the number of copies.
  • Freedom of dissemination: We allow the software to be distributed in various forms. Paid distribution enables the software to be sold on multiple media, but buyers must be informed that the software is available for free; therefore, open-source software generally makes money by providing a paid service to users.
  • Freedom of modification: developers are allowed to add or delete the functions of the software, but the modified software must still be licensed based on the GPL.

The number of open-source software following GPL is vast. Most open-source software, including the Linux system, is based on this license.

LGPL

LGPL is a derivative version of GPL, also known as GPL V2. This license is mainly an open-source license designed for class libraries. It also comes from the free software alliance GNU and can be translated into a more permissive GPL. It also belongs to infectious open source.

  • If the user only calls the program of the program library of LGPL software instead of including its source code, the relevant source program does not need to be open source.

The LGPL allows commercial software to use the LGPL class library through the class library reference (link) method without open-source commercial software code. This enables open-source code using the LGPL to be referenced, distributed, and sold by commercial software as a class library. GPL/LGPL both protect the intellectual property rights of the original author, preventing someone from using open source code to copy and develop similar products.

Write a Comment
Comment will be posted after it is reviewed.