Making sense of open source licenses

Post on 07-Nov-2014

2739 Views

Category:

Technology

0 Downloads

Preview:

Click to see full reader

DESCRIPTION

Version of my talk given at Apache Roadshow Shanghai 2011

Transcript

Making Sense of Open Source Licenses

J Aaron Farr

Apache Asia Roadshow 2011

1Wednesday, October 26, 2011

开源许可证

2Wednesday, October 26, 2011

Open Source ≠

Development Methodology

3Wednesday, October 26, 2011

Open Source =

License

4Wednesday, October 26, 2011

5Wednesday, October 26, 2011

Open Source↓

License↓

Rights and Conditions↓

Empower↓

Community5Wednesday, October 26, 2011

The license determinesthe rules the community

lives by.

6Wednesday, October 26, 2011

Different licenses createdifferent communities.

7Wednesday, October 26, 2011

Free Software&

Open Source

8Wednesday, October 26, 2011

The license captures thecommunity philosophy.

9Wednesday, October 26, 2011

Making Sense of OSS Licenses

Goals

Philosophy

Example Uses

Community Implications

10Wednesday, October 26, 2011

Why Not Public Domain?

11Wednesday, October 26, 2011

Why Not Public Domain?

Warranty

Attribution

Requirements on distribution

Requirements on derivative works

To ensure code remains open source

12Wednesday, October 26, 2011

A license is chosen to reach certain goals.

13Wednesday, October 26, 2011

What goals?

14Wednesday, October 26, 2011

License Goals

Ensure certain code remains open source

Reserve control

Build a commercial coalition

Encourage third-party marketplace

Challenge competitors

15Wednesday, October 26, 2011

Free Software Definition

16Wednesday, October 26, 2011

Four Freedoms

Freedom to run the program

Freedom to study and adapt the program

Freedom to redistribute

Freedom to improve

17Wednesday, October 26, 2011

Copyleft

18Wednesday, October 26, 2011

Open Source Definition

19Wednesday, October 26, 2011

Open Source Software Definition

Free Redistribution

Source Code

Derived Works

Integrity of Author’s Code

No Discrimination

Distribution of the License

No Specific Technology

Cannot Restrict Other Software

Technology-Neutral

20Wednesday, October 26, 2011

Academic Free License 3.0 (AFL-3.0)Affero GNU Public License: See "GNU Affero General Public License 3.0 (AGPL-3.0)"Adaptive Public License (APL-1.0)Apache License 2.0 (Apache-2.0)Apple Public Source License (APSL-2.0)Artistic license 2.0 (Artistic-2.0)Attribution Assurance Licenses (AAL)BSD 3-Clause "New" or "Revised" License (BSD-3-Clause)BSD 2-Clause "Simplified" or "FreeBSD" License (BSD-2-Clause)Boost Software License (BSL-1.0)Computer Associates Trusted Open Source License 1.1 (CATOSL-1.1)Common Development and Distribution License 1.0 (CDDL-1.0)Common Public Attribution License 1.0 (CPAL-1.0)CUA Office Public License Version 1.0 (CUA-OPL-1.0)EU DataGrid Software License (EUDatagrid)Eclipse Public License 1.0 (EPL-1.0)Educational Community License, Version 2.0 (ECL-2.0)Eiffel Forum License V2.0 (EFL-2.0)Entessa Public License (Entessa)European Union Public License, Version 1.1 (EUPL-1.1) (links to every language's version on their site)Fair LicenseFrameworx License (Frameworx-1.0)GNU Affero General Public License v3 (AGPL-3.0)

GNU General Public License version 2.0 (GPL-2.0)GNU General Public License version 3.0 (GPL-3.0)GNU Library or "Lesser" General Public License version 2.1 (LGPL-2.1)GNU Library or "Lesser" General Public License version 3.0 (LGPL-3.0)Historical Permission Notice and Disclaimer (HPND)IBM Public License 1.0 (IPL-1.0)IPA Font License (IPA)ISC License (ISC)LaTeX Project Public License 1.3c (LPPL-1.3c)Lucent Public License Version 1.02MirOS LicenceMicrosoft Public License (Ms-PL)Microsoft Reciprocal License (Ms-RL)MIT license (MIT)Motosoto License (Motosoto)Mozilla Public License 1.1 (MPL-1.1)Multics LicenseNASA Open Source Agreement 1.3 (NASA 1.3)NTP License (NTP)Naumen Public License (Naumen)Nethack General Public License (NGPL)Nokia Open Source LicenseNon-Profit Open Software License 3.0 (Non-Profit OSL 3.0)OCLC Research Public License 2.0 (OCLC-2.0)Open Font License 1.1 (OFL 1.1)Open Group Test Suite License (OGTSL)Open Software License 3.0 (OSL-3.0)

PHP License 3.0 (PHP-3.0)The PostgreSQL License (PostgreSQL)Python License (Python-2.0) (overall Python license)CNRI Python license (CNRI portion of Python License)Q Public License (QPL-1.0)RealNetworks Public Source License V1.0 (RPSL-1.0)Reciprocal Public License 1.5 (RPL-1.5)Ricoh Source Code Public License (RSCPL)Simple Public License 2.0 (Simple-2.0)Sleepycat License (Sleepycat)Sun Public License (SPL)Sybase Open Watcom Public License 1.0 (Watcom-1.0)University of Illinois/NCSA Open Source License (NCSA)Vovida Software License v. 1.0 (VSL-1.0)W3C LicensewxWindows Library License (WXwindows)X.Net License (Xnet)Zope Public License 2.0 (ZPL-2.0)zlib/libpng license (Zlib)

21Wednesday, October 26, 2011

Academic Free License 3.0 (AFL-3.0)Affero GNU Public License: See "GNU Affero General Public License 3.0 (AGPL-3.0)"Adaptive Public License (APL-1.0)Apache License 2.0 (Apache-2.0)Apple Public Source License (APSL-2.0)Artistic license 2.0 (Artistic-2.0)Attribution Assurance Licenses (AAL)BSD 3-Clause "New" or "Revised" License (BSD-3-Clause)BSD 2-Clause "Simplified" or "FreeBSD" License (BSD-2-Clause)Boost Software License (BSL-1.0)Computer Associates Trusted Open Source License 1.1 (CATOSL-1.1)Common Development and Distribution License 1.0 (CDDL-1.0)Common Public Attribution License 1.0 (CPAL-1.0)CUA Office Public License Version 1.0 (CUA-OPL-1.0)EU DataGrid Software License (EUDatagrid)Eclipse Public License 1.0 (EPL-1.0)Educational Community License, Version 2.0 (ECL-2.0)Eiffel Forum License V2.0 (EFL-2.0)Entessa Public License (Entessa)European Union Public License, Version 1.1 (EUPL-1.1) (links to every language's version on their site)Fair LicenseFrameworx License (Frameworx-1.0)GNU Affero General Public License v3 (AGPL-3.0)

GNU General Public License version 2.0 (GPL-2.0)GNU General Public License version 3.0 (GPL-3.0)GNU Library or "Lesser" General Public License version 2.1 (LGPL-2.1)GNU Library or "Lesser" General Public License version 3.0 (LGPL-3.0)Historical Permission Notice and Disclaimer (HPND)IBM Public License 1.0 (IPL-1.0)IPA Font License (IPA)ISC License (ISC)LaTeX Project Public License 1.3c (LPPL-1.3c)Lucent Public License Version 1.02MirOS LicenceMicrosoft Public License (Ms-PL)Microsoft Reciprocal License (Ms-RL)MIT license (MIT)Motosoto License (Motosoto)Mozilla Public License 1.1 (MPL-1.1)Multics LicenseNASA Open Source Agreement 1.3 (NASA 1.3)NTP License (NTP)Naumen Public License (Naumen)Nethack General Public License (NGPL)Nokia Open Source LicenseNon-Profit Open Software License 3.0 (Non-Profit OSL 3.0)OCLC Research Public License 2.0 (OCLC-2.0)Open Font License 1.1 (OFL 1.1)Open Group Test Suite License (OGTSL)Open Software License 3.0 (OSL-3.0)

PHP License 3.0 (PHP-3.0)The PostgreSQL License (PostgreSQL)Python License (Python-2.0) (overall Python license)CNRI Python license (CNRI portion of Python License)Q Public License (QPL-1.0)RealNetworks Public Source License V1.0 (RPSL-1.0)Reciprocal Public License 1.5 (RPL-1.5)Ricoh Source Code Public License (RSCPL)Simple Public License 2.0 (Simple-2.0)Sleepycat License (Sleepycat)Sun Public License (SPL)Sybase Open Watcom Public License 1.0 (Watcom-1.0)University of Illinois/NCSA Open Source License (NCSA)Vovida Software License v. 1.0 (VSL-1.0)W3C LicensewxWindows Library License (WXwindows)X.Net License (Xnet)Zope Public License 2.0 (ZPL-2.0)zlib/libpng license (Zlib)69

21Wednesday, October 26, 2011

License Proliferation开源许可的增殖问题

22Wednesday, October 26, 2011

Most Common Licenses

Apache License, 2.0

BSD licenses

GNU General Public License (GPL)

GNU Library or "Lesser" General Public License (LGPL)

MIT license

Mozilla Public License 1.1 (MPL)

Common Development and Distribution License

Eclipse Public License

Artistic Licenses

23Wednesday, October 26, 2011

Open Source License Families

- Dave Johnsonhttp://rollerweblogger.org/page/roller?entry=gimme_credit_gimme_fixes_gimmem

24Wednesday, October 26, 2011

Open Source License Families

Give Me Credit

AL, BSD, MIT

- Dave Johnsonhttp://rollerweblogger.org/page/roller?entry=gimme_credit_gimme_fixes_gimmem

24Wednesday, October 26, 2011

Open Source License Families

Give Me Credit

AL, BSD, MIT

Give Me Fixes

MPL, EPL, LGPL

- Dave Johnsonhttp://rollerweblogger.org/page/roller?entry=gimme_credit_gimme_fixes_gimmem

24Wednesday, October 26, 2011

Open Source License Families

Give Me Credit

AL, BSD, MIT

Give Me Fixes

MPL, EPL, LGPL

Give Me Everything

GPL

- Dave Johnsonhttp://rollerweblogger.org/page/roller?entry=gimme_credit_gimme_fixes_gimmem

24Wednesday, October 26, 2011

Give Me Credit

Software “Commons”

Derivatives can sub-license

May have some conditions

No warranty

Credit to original authors required

Apache (AL), BSD, MIT

25Wednesday, October 26, 2011

Give Me Credit

Universal donor

Limited control by any one entity

Little value in direct commercial licensing

Allows for commercial product development

Allows for competing services

Commoditized and “low-level”

26Wednesday, October 26, 2011

Give Me Fixes

File or derivative based conditions

Original author may have special rights

Differentiate between source and binary

Larger works can be under a different license

Mozilla (MPL), Eclipse (EPL/CPL), LGPL

27Wednesday, October 26, 2011

Give Me Fixes

Single entity control

Still very “business friendly”

Encourages incorporation of code into larger works

Ensures direct development benefits all

Tends towards libraries or platforms

28Wednesday, October 26, 2011

Give Me Everything

Copyleft

Derivative works remain under the license

Linked works may also remain under the license

Ensures all ‘down stream’ have the same rights

GPL

29Wednesday, October 26, 2011

Give Me Everything

All direct development is contributed back

Contributors assured code remains open source

Encourages a full free software economy

Copyright holder retains much control

Limits commercial adoption

Dual-license business strategy

30Wednesday, October 26, 2011

License Scope

“Viral Index”

31Wednesday, October 26, 2011

License Scope

AL MPL GPL

“Viral Index”

31Wednesday, October 26, 2011

License Compatibility

32Wednesday, October 26, 2011

33Wednesday, October 26, 2011

Can I Relicense?

AL MPL / LGPL GPL

34Wednesday, October 26, 2011

Can I Relicense?

AL MPL / LGPL GPL

34Wednesday, October 26, 2011

Can I Relicense?

AL MPL / LGPL GPL

34Wednesday, October 26, 2011

Can I Relicense?

AL MPL / LGPL GPL

35Wednesday, October 26, 2011

Can I Relicense?

AL MPL / LGPL GPL

35Wednesday, October 26, 2011

Can I Relicense?

AL MPL / LGPL GPL

35Wednesday, October 26, 2011

Can I Relicense?

AL MPL / LGPL GPL

36Wednesday, October 26, 2011

Can I Relicense?

AL MPL / LGPL GPL

36Wednesday, October 26, 2011

Can I Relicense?

AL MPL / LGPL GPL

36Wednesday, October 26, 2011

Apache License

37Wednesday, October 26, 2011

Apache License

Permissive License (Gimme Credit)

Requires Attribution via a NOTICE file

No Trademark Grant

Grant of Patent License

38Wednesday, October 26, 2011

Apache License Philosophy

To allow the maximum use of our software for any purpose and by all people.

39Wednesday, October 26, 2011

Making Sense of OSS Licenses

Goals

Philosophy

Example Uses

Community Implications

40Wednesday, October 26, 2011

Open Source License Families

Give Me Credit

AL, BSD, MIT

Give Me Fixes

MPL, EPL, LGPL

Give Me Everything

GPL

- Dave Johnsonhttp://rollerweblogger.org/page/roller?entry=gimme_credit_gimme_fixes_gimmem

41Wednesday, October 26, 2011

Questions?

谢谢!farra@apache.org

42Wednesday, October 26, 2011

top related