making sense of open source licenses

54
Making Sense of Open Source Licenses J Aaron Farr Apache Asia Roadshow 2011 1 Wednesday, October 26, 2011

Upload: j-aaron-farr

Post on 07-Nov-2014

2.743 views

Category:

Technology


0 download

DESCRIPTION

Version of my talk given at Apache Roadshow Shanghai 2011

TRANSCRIPT

Page 1: Making sense of open source licenses

Making Sense of Open Source Licenses

J Aaron Farr

Apache Asia Roadshow 2011

1Wednesday, October 26, 2011

Page 2: Making sense of open source licenses

开源许可证

2Wednesday, October 26, 2011

Page 3: Making sense of open source licenses

Open Source ≠

Development Methodology

3Wednesday, October 26, 2011

Page 4: Making sense of open source licenses

Open Source =

License

4Wednesday, October 26, 2011

Page 5: Making sense of open source licenses

5Wednesday, October 26, 2011

Page 6: Making sense of open source licenses

Open Source↓

License↓

Rights and Conditions↓

Empower↓

Community5Wednesday, October 26, 2011

Page 7: Making sense of open source licenses

The license determinesthe rules the community

lives by.

6Wednesday, October 26, 2011

Page 8: Making sense of open source licenses

Different licenses createdifferent communities.

7Wednesday, October 26, 2011

Page 9: Making sense of open source licenses

Free Software&

Open Source

8Wednesday, October 26, 2011

Page 10: Making sense of open source licenses

The license captures thecommunity philosophy.

9Wednesday, October 26, 2011

Page 11: Making sense of open source licenses

Making Sense of OSS Licenses

Goals

Philosophy

Example Uses

Community Implications

10Wednesday, October 26, 2011

Page 12: Making sense of open source licenses

Why Not Public Domain?

11Wednesday, October 26, 2011

Page 13: Making sense of open source licenses

Why Not Public Domain?

Warranty

Attribution

Requirements on distribution

Requirements on derivative works

To ensure code remains open source

12Wednesday, October 26, 2011

Page 14: Making sense of open source licenses

A license is chosen to reach certain goals.

13Wednesday, October 26, 2011

Page 15: Making sense of open source licenses

What goals?

14Wednesday, October 26, 2011

Page 16: Making sense of open source licenses

License Goals

Ensure certain code remains open source

Reserve control

Build a commercial coalition

Encourage third-party marketplace

Challenge competitors

15Wednesday, October 26, 2011

Page 17: Making sense of open source licenses

Free Software Definition

16Wednesday, October 26, 2011

Page 18: Making sense of open source licenses

Four Freedoms

Freedom to run the program

Freedom to study and adapt the program

Freedom to redistribute

Freedom to improve

17Wednesday, October 26, 2011

Page 19: Making sense of open source licenses

Copyleft

18Wednesday, October 26, 2011

Page 20: Making sense of open source licenses

Open Source Definition

19Wednesday, October 26, 2011

Page 21: Making sense of open source licenses

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

Page 22: Making sense of open source licenses

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

Page 23: Making sense of open source licenses

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

Page 24: Making sense of open source licenses

License Proliferation开源许可的增殖问题

22Wednesday, October 26, 2011

Page 25: Making sense of open source licenses

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

Page 26: Making sense of open source licenses

Open Source License Families

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

24Wednesday, October 26, 2011

Page 27: Making sense of open source licenses

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

Page 28: Making sense of open source licenses

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

Page 29: Making sense of open source licenses

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

Page 30: Making sense of open source licenses

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

Page 31: Making sense of open source licenses

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

Page 32: Making sense of open source licenses

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

Page 33: Making sense of open source licenses

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

Page 34: Making sense of open source licenses

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

Page 35: Making sense of open source licenses

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

Page 36: Making sense of open source licenses

License Scope

“Viral Index”

31Wednesday, October 26, 2011

Page 37: Making sense of open source licenses

License Scope

AL MPL GPL

“Viral Index”

31Wednesday, October 26, 2011

Page 38: Making sense of open source licenses

License Compatibility

32Wednesday, October 26, 2011

Page 39: Making sense of open source licenses

33Wednesday, October 26, 2011

Page 40: Making sense of open source licenses

Can I Relicense?

AL MPL / LGPL GPL

34Wednesday, October 26, 2011

Page 41: Making sense of open source licenses

Can I Relicense?

AL MPL / LGPL GPL

34Wednesday, October 26, 2011

Page 42: Making sense of open source licenses

Can I Relicense?

AL MPL / LGPL GPL

34Wednesday, October 26, 2011

Page 43: Making sense of open source licenses

Can I Relicense?

AL MPL / LGPL GPL

35Wednesday, October 26, 2011

Page 44: Making sense of open source licenses

Can I Relicense?

AL MPL / LGPL GPL

35Wednesday, October 26, 2011

Page 45: Making sense of open source licenses

Can I Relicense?

AL MPL / LGPL GPL

35Wednesday, October 26, 2011

Page 46: Making sense of open source licenses

Can I Relicense?

AL MPL / LGPL GPL

36Wednesday, October 26, 2011

Page 47: Making sense of open source licenses

Can I Relicense?

AL MPL / LGPL GPL

36Wednesday, October 26, 2011

Page 48: Making sense of open source licenses

Can I Relicense?

AL MPL / LGPL GPL

36Wednesday, October 26, 2011

Page 49: Making sense of open source licenses

Apache License

37Wednesday, October 26, 2011

Page 50: Making sense of open source licenses

Apache License

Permissive License (Gimme Credit)

Requires Attribution via a NOTICE file

No Trademark Grant

Grant of Patent License

38Wednesday, October 26, 2011

Page 51: Making sense of open source licenses

Apache License Philosophy

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

39Wednesday, October 26, 2011

Page 52: Making sense of open source licenses

Making Sense of OSS Licenses

Goals

Philosophy

Example Uses

Community Implications

40Wednesday, October 26, 2011

Page 53: Making sense of open source licenses

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

Page 54: Making sense of open source licenses

Questions?

谢谢[email protected]

42Wednesday, October 26, 2011