Team:Paris Saclay/opensourcezouh
From 2013.igem.org
Open Source for synthetic biology
Some notes for the license agreement of open source software.
Open source is originally a philosophy promotes a universal access via free license to a
product's design or blueprint, and universal redistribution of that design or blueprint,
including subsequent improvements to it by anyone.(Wikipedia)
Nowadays, the concept of open source has grown more complex. It becomes a rule, an
agreement, and a way of which we work every day.
A free soft could be no open source software, meanwhile a commercial software could also
be open source.
For the open source software, there are many license agreements, 4 licenses among these is
quite popular. They are GPL、LGPL、BSD、Apache.
GPL : GNU General Public License
LGPL : GNU Library or "Lesser" General Public License
BSD : Berkeley Software Distribution
Apache : Apache License
There are 2 basic types for open source software license: first is Reciprocal Licenses, for
instance, GPL and LGPL; the other is Permissive Licenses, such as BSD, Apache. 70% of open
source software use GPL or LGPL, include Linux core. (Source Forge)
All GPL/LGPL license software, under the premise of providing code source, is reproducible,
utilizable and distributable for no matter commercial or no commercial purposes. But, the
source code must be complete, besides the source program, the compiled script and binary
executable program are also demanded in the same package. The current distributor of
software is the only subject who is responsible for his act of distribution in despite of the
original author and former distributor.
A program and all derivation of this programs which is based on GPL/LGPL must keep the
license term. We call this “copy left” which
The GPL version 3 gives a clear definition for the copy right of GPL based software. The user
and the distributor of GPL software enjoy automatically usage right in condition of deference
for all the terms of GPL version 3
In this example of open source license, I figure out 2 essences: one is to ease communication
and exchange which allow the software spread without copyright issue; second is for the
protection. Outwardly the license has defined clearly the right of software, but there is no
reel responsible subject. The open source software belongs to every participant of the
software, they have the usage right etc., but on the other side, no single person has the
proprietary tights.
BSD and Apache license are more flexible than GPL, which don’t demand code source during
distribution, user can change the open source license even proprietary software license.
In website of http://opensource.org/ , I find something concrete
Introduction Open source doesn't just mean access to the source code. The distribution terms of open-source software must comply with the following criteria:
1. Free Redistribution
The license shall not restrict any party from selling or giving away the software as
a component of an aggregate software distribution containing programs from
several different sources. The license shall not require a royalty or other fee for
such sale.
2. Source Code
The program must include source code, and must allow distribution in source code
as well as compiled form. Where some form of a product is not distributed with
source code, there must be a well-publicized means of obtaining the source code
for no more than a reasonable reproduction cost preferably, downloading via the
Internet without charge. The source code must be the preferred form in which a
programmer would modify the program. Deliberately obfuscated source code is
not allowed. Intermediate forms such as the output of a preprocessor or translator
are not allowed.
3. Derived Works
The license must allow modifications and derived works, and must allow them to
be distributed under the same terms as the license of the original software.
4. Integrity of the Author's Source Code
The license may restrict source-code from being distributed in modified form only
if the license allows the distribution of "patch files" with the source code for the
purpose of modifying the program at build time. The license must explicitly permit
distribution of software built from modified source code. The license may require
derived works to carry a different name or version number from the original
software.
5. No Discrimination against Persons or Groups
The license must not discriminate against any person or group of persons.
6. No Discrimination against Fields of Endeavor
The license must not restrict anyone from making use of the program in a specific
field of endeavor. For example, it may not restrict the program from being used in
a business, or from being used for genetic research.
7. Distribution of License
The rights attached to the program must apply to all to whom the program is
redistributed without the need for execution of an additional license by those
parties.
8. License Must Not Be Specific to a Product
The rights attached to the program must not depend on the program's being part
of a particular software distribution. If the program is extracted from that
distribution and used or distributed within the terms of the program's license, all
parties to whom the program is redistributed should have the same rights as
those that are granted in conjunction with the original software distribution.
9. License Must Not Restrict Other Software
The license must not place restrictions on other software that is distributed along
with the licensed software. For example, the license must not insist that all other
programs distributed on the same medium must be open-source software.
10. License Must Be Technology-Neutral
No provision of the license may be predicated on any individual technology or
style of interface.
These definitions are little idealized. In reality, for those license of open source software, some modification is always needed for adaptation concrete situation. Understanding the license of open source line by line is quite impossible without aid. In the interest of time, I focus on the option that experts said and make a summary.
Some advantages for open source software, precisely open source project: 1. Low initial capital. Don’t need to paid license and fee for upgrade
2. Avoid the dependence on a single supplier. This means the enterprise can choose the service which have a high quality-price 3. Obtain the technology As code source is available for everyone, the developers learn important skills
4. Efficient system. Everyone can see you work, for some developer, soft must be perfect for the publication, which leads usually some high quality product
5. Independence Community runs without much income
Disadvantage: 1. Do not pay enough attention to the user experience in some project
2. much imitate
3. Hard to have an ecosystem
4. Independence. The project dies if some key developer change the subject
5. High running cost. Not always free The source code may modify by any user so there are too many version. The upgrade of open source software is not include all the modification which the user has made.
If some users are distracted by something else, a dead community is worth than closed
company
Open source software is not safer than those closed software. The security is depend on the
software upgrade and the people who utilize the software
No professional technic support. And the responsibility is not clear at all.