Software Licensing English
Master the English vocabulary of software licensing: open source licenses, compatibility rules, contributor agreements, dual-licensing strategies, and FOSS compliance.
Open Source License Vocabulary
MIT, Apache 2.0, GPL, LGPL, and BSD — understand when each license applies and what it permits.
License Compatibility Language
Copyleft conflicts, license stacking, and compatibility matrices — navigate mixed-license projects.
Dual Licensing Vocabulary
Open-core, commercial exceptions, and dual-license strategies — understand how companies monetize open source.
Contributor License Agreements
CLA vs. DCO, IP assignment, and what happens when you sign a CLA — know your rights before you contribute.
FOSS Compliance Vocabulary
SBOM, license scanning, attribution notices, and compliance audit vocabulary for enterprise software teams.
Frequently Asked Questions
What is the difference between the MIT and GPL licenses?
The MIT license is permissive — it allows you to use, copy, modify, and distribute the software with minimal restrictions, requiring only that the original copyright notice is retained. The GPL (General Public License) is a copyleft license, meaning any derivative work or software that links against GPL code must itself be released under the GPL. In practice, MIT allows proprietary use while GPL does not.
What does "copyleft" mean in open source licensing?
Copyleft is a licensing mechanism that requires all derivative works to carry the same license as the original. If you modify GPL-licensed code and distribute it, you must release your modifications under the GPL too. Strong copyleft (GPL) extends to linked works; weak copyleft (LGPL) applies only to the library itself, allowing proprietary applications to link against it without inheriting the license.
What is an EULA and how does it differ from an open source license?
An End User License Agreement (EULA) is a contract between a software vendor and the end user that grants a right to use the software under specific conditions. Unlike open source licenses, EULAs typically restrict redistribution, reverse engineering, and modification. EULAs govern proprietary software; open source licenses govern freely distributed source code. The key distinction is that EULAs restrict rights while open source licenses grant them.
What is the Apache 2.0 license and why is it popular in enterprise settings?
The Apache License 2.0 is a permissive open source license that explicitly grants users patent rights from contributors, which the MIT license does not. It requires preservation of copyright notices and the NOTICE file but allows proprietary use. Enterprises favour it because the explicit patent grant reduces legal risk, and it is compatible with many other open source licenses including GPL v3.
What is a Contributor License Agreement (CLA) and why do projects require one?
A CLA is a legal agreement signed by contributors that grants the project owner specific rights over contributions — typically a copyright licence or assignment. Projects require CLAs to ensure they have the right to relicense the codebase, pursue patent infringement, or offer commercial versions. The Developer Certificate of Origin (DCO) is a lighter-weight alternative that certifies contributors have the right to submit the code but does not transfer rights.
What does "dual licensing" mean in a software context?
Dual licensing means releasing software under two different licenses simultaneously. Typically a project is available under a copyleft license (e.g. GPL) for free community use and under a commercial license for businesses that need proprietary distribution rights. This open-core model allows companies to monetise their open source investment while still benefiting from community contributions.
What is an SBOM and why is it relevant to software licensing compliance?
A Software Bill of Materials (SBOM) is a formal, machine-readable inventory of all third-party components and dependencies in a software product, including their versions and licenses. SBOMs are essential for FOSS compliance because they allow organisations to identify license obligations, detect copyleft components, and prove compliance during audits. Regulatory frameworks like the US Executive Order on cybersecurity now mandate SBOMs for critical software.
What is license compatibility and why does it matter when combining open source components?
License compatibility refers to whether the conditions of two licenses can be simultaneously satisfied in a combined work. For example, GPLv2-only and Apache 2.0 are incompatible because Apache 2.0 contains patent termination clauses that conflict with GPLv2. GPLv3 and Apache 2.0 are compatible. When combining components with different licenses you must verify that no license's obligations contradict another's, otherwise distribution becomes legally problematic.
What are typical SaaS licensing terms that differ from traditional software licenses?
SaaS licensing agreements typically grant a subscription-based right to access hosted software rather than a perpetual licence to install it. Key terms include: service level agreement (SLA) guarantees, data portability and ownership clauses, acceptable use policies (AUP), tenant isolation commitments, audit rights, and data processing agreements (DPA) for GDPR compliance. SaaS agreements also commonly include auto-renewal clauses and metered usage or seat-based pricing models.
What is the LGPL and when should a library use it instead of GPL?
The Lesser General Public License (LGPL) is a weak copyleft license designed specifically for libraries. Unlike the GPL, the LGPL allows proprietary applications to link against an LGPL library without the copyleft obligation propagating to the application. The library itself and any modifications to it must remain LGPL. Library authors choose LGPL when they want copyleft protection for their code but do not want to prevent proprietary software from using it, increasing adoption.