For Stallman, the idea of "free" software was about more than giving software away. It was about ensuring that users were free to use software as they saw fit, free to study its source code, free to modify it for their own purposes, and free to share it with others. Stallman released his code under a license known as the GNU Public License, or GPL, which guarantees users those four software freedoms. The GPL is a "viral" license, meaning that anyone who creates software based on code licensed under the GPL must also release that derivative code under a GPL license.

Glossary Source code

The human-readable code that is translated, or "compiled," into the binary code that machines can read. When you buy software like Microsoft Office, you typically only get the binary code, which makes it hard to understand or modify the software.

Open source software

Software distributed with a license that allows anyone to use, view, modify, and share the software's source code.

GPL

The GNU Public License, a software license that allows anyone to use, view, modify, and share a project's source code; but anyone who uses the code to create a derivative work must also provide the source code for that work under the GPL.

Apache

An open source web server, a software foundation, and a permissive license that, unlike the GPL, allows source code to be mixed into non-open source, commercial code.

Open core software

Commercial software built on open source software that also includes non-open source code.

Library

Usually smaller collections of code that can be used as building blocks for larger projects, saving developers from having to write common features, such as password authentication, from scratch.

Fork

A copy of a code base that serves as the basis for a distinct version of the software. Often forks are used by individuals or companies to customize software for their own needs. Other times, they become the foundations of separate projects. Libre Office, for example, is a fork of Open Office.

GitHub

A popular service now owned by Microsoft for hosting code. Offers the ability to fork code bases with one click.

Importantly, the license doesn't forbid companies from selling copies of GNU software. As long as you allow your customers to share your code, you can charge as much as you want for your software. The phrase "free as in free speech, not free as in free beer" is often used to help explain this apparent contradiction.

Other programmers soon followed Stallman's example. One of the most important was Linus Torvalds, the vitriolic Finnish programmer who created the Linux operating system in 1991. Linux is a "kernel," the core of an operating system that talks to the hardware and translates the basic input from your keyboard, mouse, or touchscreen into something the software can understand. GNU lacked a finished kernel at the time, so many GNU users combined GNU and Linux into a functional operating system. Bundles of the GNU operating system, Linux kernel, and other tools became known as GNU/Linux distributions; some purists still refer to Linux-based operating systems as "GNU/Linux." Soon, companies like Red Hat were making money selling support for open source technologies like Linux.

Linux---or GNU/Linux if you prefer---became especially popular for running web servers and now runs 69.4 percent of web servers, according to data compiled by W3Techs. Alongside the rise of Linux and the web came several other free tools, including the Apache web server, MySQL database, and programming languages like Perl and PHP. Many used the GPL license, but others adopted more permissive licenses that, unlike the GPL, allowed companies to create proprietary products using their code.

In time, tensions grew between those, like Stallman, who believed that all software should be free on ethical grounds, and more business-oriented developers who thought that freely sharing code was a better way to build software but not an ethical imperative. In 1998, a group met to discuss how to promote the idea of shared code and open collaboration. Worried that the term “free software” and Stallman’s more absolutist philosophy would make their ideas less palatable to businesses that wanted to keep some of their code proprietary, the group settled on the label "open source," coined by Christine Peterson, to distinguish its aims.

During the 2000s, open source went truly mainstream. In 2004, programmer David Heinemeier Hansson released his web application programming framework Ruby on Rails, which quickly became one of the world’s most important web development tools, as well as the foundation for services like Twitter and Kickstarter. Meanwhile, Yahoo was funding the development of the open source data-crunching system Hadoop. After its release in 2006, other companies, including Facebook, Twitter, and eBay began contributing to the project, helping demonstrate the value of inter-company collaboration. Sun Microsystems' $1 billion acquisition of MySQL in 2008 proved open source could be big business. That same year Google released its first Android phones, moving open source from the server to your pocket.

Now open source is practically everywhere. Walmart uses open source software like the development platform Node, and it has opened up the code of its cloud management tool OneOps and its development platform Electrode. JP Morgan Chase open sourced its blockchain platform Quorum, on which its employees collaborated with the creators of the privacy focused bitcoin alternative Zcash. Even Microsoft, whose former CEO once called Linux a "cancer," now uses and releases open source software such as its popular .NET programming framework. It even uses Linux to run parts of its cloud service Azure and has shared its own Linux tools with the community.

Open source isn’t counterculture anymore. It’s the establishment.

The Future of Open Source

The rise of open source hasn't been without glitches. Despite the corporate world's embrace of open source software, many independent or startup-based projects still haven't figured out how to make money. Even the developers of software that’s widely used by major companies can struggle to raise funds to cover their costs or hire others. That can have serious consequences.

For example, in 2014, security researchers revealed serious vulnerabilities in two crucial open source projects: OpenSSL and Bash, which are part of many major operating systems. No software is free of potential security problems, but the fact that these issues went undetected for so long highlighted a big problem for open source: Many big-name open source projects rely on lesser-known open source components run by volunteers who have little time to fix problems and no money to hire security auditors.

Some companies that have built businesses around open source products are adopting controversial new licensing schemes. In an effort to keep cloud computing services from selling competing services based on its code, MongoDB created a new license in 2018 that restricts how other companies can use its MongoDB Community Server. Other open source companies have adopted the Fair Source license, which requires companies with more than 15 employees to pay a fee to use software that uses the license, or the newer Commons Clause, which restricts how companies can commercialize the software. You can still view the source code from software released under these licenses, but they break with the free and open source software tradition of allowing users to do whatever they want with the code.

Startups, meanwhile, are working on novel ways to turn a profit on open source. Red Hat makes money by selling support for its open source products, but that’s not feasible for every open source project. A company called Tidelift aims to sell support through a single subscription fee for a package of open source projects. Think of it as “Netflix for open source.”

Solving these funding problems is crucial to the future of open source. But money isn’t the only problem. The open source workforce is even less diverse than the tech industry as a whole, according to a survey conducted in 2017 by GitHub. Half of the respondents had witnessed bad behavior—such as rudeness, name calling, or harassment—and said it was enough to keep them away from a particular project or community. Around 18 percent of survey respondents had experienced such bad behavior firsthand. That's a problem because working on open source projects is now an important part of landing a job in technology. If women and minorities are shut out of open source, then the technology industry as a whole becomes that much less diverse.

One way many open source projects are trying to address the issue is through a code of conduct called the Contributor Covenant, which warns participants against personal attacks, harassment, or "other conduct which could reasonably be considered inappropriate in a professional setting." As common sense as these guidelines might sound, they've proved controversial among open source coders used to being judged solely on their code, not their professionalism—or lack thereof. The author of the Contributor Covenant is still periodically harassed.

Still, there are signs of progress. In 2018, Torvalds, long accused of creating a toxic environment in the Linux community, apologized for his past behavior, and the Linux project adopted the Contributor Covenant.

Inclusion isn’t just an ethical issue for open source. Diverse teams build better products. And making better software is what open source is all about.

Learn More

Last updated April 23, 2019.

Enjoyed this deep dive? Check out more WIRED Guides.