Fundamentals 7 min read

Which Open‑Source Licenses Dominate Every Programming Language in 2023?

An analysis of the ClearlyDefined 2023 dataset reveals that MIT and Apache 2.0 are the most popular open‑source licenses overall, while each language ecosystem shows distinct licensing preferences and a concerning share of components lacking proper license metadata.

21CTO
21CTO
21CTO
Which Open‑Source Licenses Dominate Every Programming Language in 2023?

Most Popular Licenses

MIT and Apache 2.0 are the most widely adopted open‑source licenses, favored for their simplicity and minimal restrictions, which encourages broad usage across projects.

License Preferences Vary by Language

Different package managers and language ecosystems exhibit distinct licensing trends. JavaScript communities often prefer MIT, Python shows a strong affinity for Apache 2.0, ISC is popular in JavaScript, BSD (2‑ and 3‑clause) sees moderate use, and GPL, while respected, trails behind MIT and Apache 2.0.

Challenges of Unlicensed Components

A significant portion of components in the ClearlyDefined dataset lack an explicit license or are marked with the SPDX identifier “NOASSERTION,” creating legal uncertainty, potential collaboration hurdles, and security risks.

Need for Standardization

Clear, standardized licensing metadata is essential for the health of the open‑source ecosystem, benefiting developers, organizations, and the community by ensuring compliance, fostering collaboration, and aiding vulnerability tracking.

Community‑Driven Solution

The ClearlyDefined project crowdsources license metadata for every software component, offering an API for developers to retrieve and contribute missing or incorrect information, thereby building an accurate global license database.

License Distribution by Ecosystem

JavaScript (npm)

MIT 53%, Apache 2.0 14.76%, ISC 10.48%; 8% have no license and 5.49% are marked NOASSERTION.

.NET (NuGet)

Many components lack a license (26.76%) or are NOASSERTION (31.95%). MIT 21.55% and Apache 2.0 13.37% are the leading licensed options.

Java (Maven)

Apache 2.0 dominates with 69.18% of components, while MIT accounts for 7.4%; 14.75% are NOASSERTION.

Python (PyPI)

MIT 29.14% and Apache 2.0 23.98% are most common; BSD 2‑Clause 6.25% and GPL 3.0 6.11% follow; 23.69% have no license.

Ruby (Gem)

MIT 63.11% dominates, with Apache 2.0 8.22% and BSD 3‑Clause 6.66% trailing.

PHP (Composer)

MIT 64.37% is the leading license, with BSD 3‑Clause 5.72% and Apache 2.0 3.92%.

Go

Apache 2.0 32.49% and MIT 20.1% are most common; 29.67% of components lack a license.

Rust (crate)

MIT and/or Apache 2.0 together cover 83.52% of crates.

Conclusion

Open‑source licenses are legal contracts that define how software can be used, modified, and shared. With over 200 licenses available, selecting the appropriate one depends on project requirements, legal considerations, and the broader software ecosystem.

open-sourcelicense complianceMITpackage managerssoftware licensesApache 2.0
21CTO
Written by

21CTO

21CTO (21CTO.com) offers developers community, training, and services, making it your go‑to learning and service platform.

0 followers
Reader feedback

How this landed with the community

Sign in to like

Rate this article

Was this worth your time?

Sign in to rate
Discussion

0 Comments

Thoughtful readers leave field notes, pushback, and hard-won operational detail here.