open source software licensing what every technologist
play

Open Source Software Licensing: What Every Technologist Needs to - PowerPoint PPT Presentation

May 8, 2018 Open Source Software Licensing: What Every Technologist Needs to Know Heather Meeker Foundations of Open Source 1 What is Open Source Development? Cathedral Bazaar http://www.catb.org/esr/writings/cathedral-bazaar/ 2 RMS v.


  1. May 8, 2018 Open Source Software Licensing: What Every Technologist Needs to Know Heather Meeker

  2. Foundations of Open Source 1

  3. What is Open Source Development? Cathedral Bazaar http://www.catb.org/esr/writings/cathedral-bazaar/ 2

  4. RMS v. the Xerox 9700 • Richard M. Stallman, a staff software programmer at the MIT AI lab, and, had trouble with a printer. • The printer was a prototype from Xerox with a tendency to jam. When it jammed, print jobs stacked up. • Stallman wanted to insert a software command into the printer software that ordered his computer to check the printer periodically and report back with a message if the printer was jammed. • But the software in the printer was only in object code format. • Xerox would not share the source code. And then Mr. Stallman wrote the GPL... For the full story, see http://www.oreilly.com/openbook/freedom/ch01.html 3

  5. Open Source Is Not New • Development of UNIX at AT&T Bell Labs • Open source release • Privatization • The search for a UNIX successor 4

  6. What is Open Source Licensing? • Terms of art ○ Copyleft ■ Not public domain ■ Not a “virus” ○ Open Source ○ Proprietary 5

  7. What is Open Source Licensing? Unrestricted licenses with conditions e ! r a h s t s u m u o y t u b , a t e n a c u o You can look, but not eat! Y 6

  8. The Open Source Licenses 7

  9. Copyleft Rules • Open Source Initiative has approved over 80 licenses, but almost all OSS is under these: ○ GPL ○ LGPL ○ BSD ○ MIT ○ Apache 2.0 ○ Eclipse Public License, CDDL, Mozilla Public License 8

  10. Two Philosophies: Open Source and Free Software • Permissive software = MIT, BSD, Apache ○ If you distribute, provide notice • Free software = GPL ○ If you distribute, use the same terms ○ If you distribute, provide source code 9

  11. Copyleft Rules • GPL -- Strong copyleft ○ If any code in a program is GPL, it must all be GPL (all or none) ○ This means no “linking” to proprietary code • LGPL -- Weak copyleft ○ If any code in a library is LGPL, it must all be LGPL ○ But you can dynamically link to proprietary code 10

  12. Derivative Works • “Derivative work” ○ Mostly a red herring ○ If you put GPL code in a program, the entire program (including the GPL portion) is a derivative work of the GPL portion 11

  13. Linking • Static v. Dynamic Linking ○ Only matters to LGPL ○ Many languages do not use the concept of linking ○ GPL/LGPL were written for C/C++ programming, i.e. the Linux kernel 12

  14. Top Questions in Open Source Licensing 13

  15. Top Questions in Open Source Licensing • What is distribution? • If I release my software under an open source license, what happens to my patents? • How do I put notices on my product? • What is a “derivative work”? 14

  16. What is Distribution? • Distribution is transferring a copy from one legal person to another • Most open source licenses impose no conditions absent distribution • For most licenses, SAAS is not considered distribution • Exceptions: ○ Affero GPL (AGPL) ○ Open Software License ○ Non-Profit Open Source License ○ Academic Free License ○ Artistic 2.0 ○ Apple Public Source License ○ RealNetworks Public Source License ○ Reciprocal Public License 15

  17. What about Patents? • Some open source licenses include express patent licenses ○ Apache 2.0 ○ GPL3 • Some open source licenses say nothing about patents ○ BSD Either way, releasing ○ MIT open source code can limit your patent rights. ○ GPL2 16

  18. How to do Notices? • Use the rules of GPL -- they work for most licenses • Notices must be delivered with the product • Delivering source code upfront is easiest • If not, create a notice file 17

  19. What is a “derivative work”? • That is not the right question • The right question is: how do I comply with GPL? • Short answer: All code in a single executable process (i.e. a “Program”) must be either all GPL or no GPL. 18

  20. For your ample free time... HEATHER MEEKER Partner O’Melveny & Myers Technology Transactions Group hmeeker@omm.com 510-463-1116 blog at heathermeeker.com m r o f k o o b e r o r e p a p n i e l b a l i a v A 19

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend