0% found this document useful (0 votes)
7 views20 pages

Licensing

Computer licencing
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
7 views20 pages

Licensing

Computer licencing
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 20

Software Licensing

Nick Gjersvik
What are we going to cover?
● The basics of software licensing
● Different types of licenses
● Examine how software licenses impact real world projects
● Explore how software licensing affects the creation of ‘good’ software
Basics of Software Licensing
● A software license is a legal instrument governing the use and redistribution
of software
● A license grants permission to use software in ways which might potentially
infringe the software owner's rights under copyright law
● Under United States copyright law all software is copyright protected
● All software comes with a license
○ Publishing software without a license still grant protections and permissions
Importance of Licensing
● Software Developers
○ Protects the author’s intellectual property
● Project Managers
○ Cost of licensing for corporate projects
● Engineers
○ Embedded software that is open source may require disclosure
Types of Licenses

There are a multiple categories of software licenses that reserve varying


amount of rights
Types of Licenses
● Public Domain
○ Works whose exclusive intellectual property rights have expired, have been forfeited, have
been expressly waived
○ SQLite is published into the public domain
● Trade Secret
○ Confidential piece of intellectual property
○ Server side code is the best example of this
● No License
○ Your work is under exclusive copyright by default
○ Nobody else can use, copy, distribute, or modify your work
Protective FOSS Licenses - Copyleft
● Copyleft
○ Practice of offering people the right to freely distribute copies and modified versions of a
work with the requirement that the same rights be preserved in derivative works down
the line
● GNU General Public License v1
○ 1989, The first copyleft license
● GNU General Public License v2
○ Adds the Liberty or Death Clause: licensees may distribute a GPL-covered work only if
they can satisfy all of the license obligations, despite any other legal obligations they
might have
○ The Linux kernel is licensed under GPLv2
GNU General Public License v3
● Not compatible with GPLv2
● GPLv3 blocks Tyrant devices
○ A tyrant device is a computer that contain GPL-covered software but does not let you modify it
○ The computer shuts down or bricks itself if it detects modified software
○ May also void warranty
Non-Protective FOSS Licenses
● MIT License
○ Permits reuse within proprietary software provided that all copies of the licensed software
include a copy of the MIT License terms and the copyright notice

“Including without limitation the rights to use, copy, modify, merge, publish,
distribute, sublicense, and/or sell copies of the Software”

○ Permissive license, limited restriction on reuse


○ Excellent license compatibility, can be used in GPL code
○ As of 2015, it was the most popular software license on GitHub
Non-Protective FOSS Licenses
● 3-clause BSD License
○ Redistributions of source code must retain the above copyright notice, this list of conditions
and the following disclaimer.
○ Redistributions in binary form must reproduce the above copyright notice, this list of conditions
and the following disclaimer in the documentation and/or other materials provided with the
distribution.
○ Neither the name of the <organization> nor the names of its contributors may be used to
endorse or promote products derived from this software without specific prior written
permission.
Most Popular Licenses on Github in 2015
Proprietary Licenses

Hire a lawyer
Impact of Software Licensing
The Linux Kernel
● The largest open source software project
● Has contributions from major corporations and individuals alike
● Corporations have to contribute if they want new feature added to the kernel
● The Linux kernel uses the GPLv2 license
○ Copyleft license
● Tyrant Devices problem
○ Samsung Smart TV and Android Phones
ReactOS
● ReactOS is operating systems designed to exactly mimic Microsoft Windows
● Clean Room development
○ The functionality of the original software is reverse-engineered by one group of people, who
create a "specification document", which contains only functional information about the
software.
○ Then, a different group of people attempts to write new software to the same specification.
● If a ReactOS developer ever sees source code from Windows, they cannot
continue to work on ReactOS
Ethical Analysis
● We want a license that is conducive to writing ‘good’ software
● What are the virtues involved with writing good software?
○ Reliability
○ Benefits users
○ Benefits developers
○ Benefits corporations
● These are all good, regardless of how you license your software
● How does a software license help develop good software?
Ethical Analysis
● Software does not have to be a zero sum game
○ Multiple people can benefit from open source software
○ Transparency from developers and those who use the software
● Use the right tool for the job
○ Some licenses impose limitations that may inhibit adoption
○ If your software is not on a client machine then does it matter?
○ How can developers monetize and sustain themselves?
How Can Developers Support Themselves With
Open Source?
● Dual Licensing your software
○ MongoDB makes use of the GPL and a proprietary license to fund further development
○ How do you take contributions from other people online?
■ One of the major strengths of open source
● Offer Support
○ Red Hat makes their money on RHEL by offering paid support functions
My Opinions
● Virtue
○ Developers should contribute to open source projects if they can
○ The GPLv3 promotes virtuous development
○ May limit adoption
● Utility
○ MIT license is great
○ No restrictions, the most people are going to be happy
○ Developers may not see financial gains
● Proprietary licenses are not inherently evil
○ May not be very virtuous, or provide utility, and may even treat users as a means to an end
○ Something has to fund development
○ Use in combination with other licensing options
Questions?

You might also like