FREE CODE: Pros and Cons of Using

May 22, 2018 Alternatives to common licensed software Open Source is everywhere

The use of open source software is an essential part of application development.

96% of analyzed software The average app includes 147 applications utilize unique open source open source components

* According to the analysis done by Black Duck’s Center for Open Source Research and Innovation (COSRI) in 2017. Pros of Using Open Source

★ Free to use ★ Free to modify and improve ★ Can be free to commercialize ★ Comparable to paid software ★ Accelerates software development ★ Lower hardware requirements in many cases Open Source for small businesses and start-ups

★ Reducing time to market ★ Driving costs down ★ Technological enablement for any business Developer toolbox Learning with Raspberry Pi

★ Training programming skills ★ Community support and interactions ★ Research tools

Raspberry Pi sold over 14 million boards in five years Cons of Using Open Source

❖ You are responsible for the installation & configuration ❖ Little or no support / paid support ❖ Comes with no guarantee / SLA ❖ Bugs (one thing that is guaranteed) ❖ Less functionality & Compatibility issues (LibreOffice vs MS Office) ❖ Poorer UI/UX ❖ Updates depend on popularity and community enthusiasm ❖ Security & Reliability - research, do not just trust! ❖ Cost: using SaaS may be cheaper than implementing open source Open Source Licensing

Copyleft Licenses Permissive Licenses

★ Freedom to run, copy, distribute, ★ Minimal requirements on study, change & improve distribution ★ Matter of liberty, not price: “free ★ Attribution, disclaimers still speech”, not “free ”! required, no requirement to open ★ Viral: Derived work inherits the the derived code license!

Richard Stallman, 1989

Distribution is the key Open Source Licensing

Copyleft Licenses Permissive Licenses

★ GNU General Public License (GPL) ★ 2.0 ★ GNU Library or "Lesser" General Public ★ MIT license License (LGPL - weak copyleft) ★ BSD 3-Clause "New" or "Revised" license ★ Public License ★ BSD 2-Clause "Simplified" or "FreeBSD" ★ Public License 2.0 (weak copyleft) license ★ Common Development and Distribution License (weak copyleft)

Talk to your lawyer first! This is not a legal advice & others Open Source Licensing Open Source Licensing

Open Source License Compliance Cases ★ Jacobson V. Katzer - (model train software - breach of contract or infringement?) - Jacobson wins - 2008 ★ Versata V. Ameriprise + XimpleWare( XML parsing utility, GPLv2 Licensing, Ameriprise reverse engineered the code and found GPLv2) - 2015 ★ Artifex V. Hancom (incorporating GPL-licensed Ghostscript, settlement) - 2017 ★ Automattic (Wordpress) V. Wix (GPLv2 text editor used & released under MIT) - 2016 ★ Christoph Hellwig V. VMware - 2015 ( Kernel, LGPLv2, dismissed)

★ CoKinetic Systems V. Panasonic Avionics - (unfair advantage, settlement in 2018) Open Source Licensing

License conflicts are widespread ★ Over 85% of applications contain components with licenses out of compliance* ★ 53% of applications have “unknown” licenses, meaning no one has permission from the creator(s) of the software to use, modify, or share the software* ★ https://opensource.com/article/17/9/9-open-source- software-rules-startups ★ https://saperlaw.com

* According to the analysis done by Black Duck’s Center for Open Source Research and Innovation (COSRI) in 2017. Why companies invest in open code?

★ Creating visibility & building audience Rank Company Employees Contributed ★ Attracting the right employees to the company to GitHub in 2017 ★ Promoting services 1 Microsoft 4,550 ★ Creating possibilities for third-party developers ★ Saving money: code.gov 2 Google 2,267 3 Red Hat 2,027

4 IBM 1,813

5 Intel 1,314

6 Amazon 881

7 SAP 747

8 ThoughtWorks 739

9 Alibaba 694

10 GitHub 676 Why contributing to Open Source?

★ Portfolio (GitHub is the best business card for a programmer) ★ Free resources to manage a product ★ Licensing obligations ★ Keeping up with community updates ★ Non-profit Social Projects ★ Passion! Thank you!

Questions?