What is Open Source?

Open source describes software where the source code is available for anyone to view, use, change, and then share. Making source code publicly available allows others to build on and learn from it, enabling broad collaboration from people around the world.

It's in your phone, your car, your TV, and your wifi-connected light bulbs. Open source components enable engineers to build on the work of a global community of developers to deliver better products faster and at lower cost. Linux, the Apache web server, Android, Firefox, and WordPress are examples of open source projects you may have heard of.

Copyright

Open source software is also underneath the technologies that power Google and many other products you use every day. Visit opensource.google.com for more information about how Google uses and supports open source.

THE HISTORY OF OPEN SOURCE

It starts with code...

Open source draws from the long-standing academic tradition of openness and sharing. As technology improved, it got easier to share source code for software, which resulted in more code being shared.

Here are some important examples:

The Internet

The core of the Internet is built on shared protocols and popular implementations such as TCP/IP, sendmail, postfix, bind, httpd, and OpenSSL. (70s-90s)

GNU Project

Initially started to build a free UNIX-like system, its components are now used on free and commercial UNIXes alike. (1983)

Programming Languages

The open source languages Perl, Python, and PHP, are some of the most popular programming languages. When used as part of the LAMP stack, they drove many popular websites. (1990s)

Linux

Went from a personal side project to the most important and widely used operating system in the world with more than 15,000 contributors. (1992)

Copyright

Read more about the key moments in the history of open source.

COPYRIGHT AND LICENSES

The legal bits.

Copyright

Copyright reserves the right to copy, modify, and distribute a creative work exclusively to the copyright holder. It exists to protect the rights of authors, artists, and other creators, allowing them to control if and how their work is used by others. In most countries, it automatically applies the moment the work is created.

Just because you can see or access a copyrighted work, it doesn't necessarily mean you can use or copy it.

In order to work together with others, you need a way to share those reserved rights. A license provides a framework to do that.

Licenses

An open source license has two key parts: rights and obligations. Rights define things you are allowed to do. These directly correspond with the exclusive rights protected by copyright law. Obligations identify things you must do in return for those rights.

For example, the MIT license includes "the rights to use, copy, modify, merge, publish, distribute, [...]". In exchange, the user is obliged to include the copyright notice and license text in all copies of the software.

If your intent is to collaborate with others, you should explicitly license your code because it protects both your rights and those of any collaborators.

Copyright
Licenses
TYPES OF LICENSES

Without the right license,
it's not really open source.

Picking a license

An effective open source license is one which allows for broad use, modification, and sharing of the code, without onerous restrictions. Ambiguous or vague licenses that don't explicitly grant the rights protected by copyright are problematic because they're open to interpretation. Additionally, if you're not absolutely certain you can comply with the obligations of a software license, you probably shouldn't use the software. If there is ever a legal challenge, you don't want to have to worry about the outcome.

The most popular licences are the MIT, GPL, and Apache. The best way to avoid wondering if a particular license is safe to use is to choose one of these generally accepted licenses. They've undergone rigorous review by the open source legal community.

For things that aren't code, such as documentation or artwork, Creative Commons provides a useful suite of licenses.

THE PLAYERS

Here's what you should know.

Open source communities are made of people who care deeply about its success and longevity.

OSI

The Open Source Initiative (OSI) coined the term "open source" as a business-friendly way to talk about free software principles.

The Open Source Definition (OSD), maintained by OSI, is the commonly agreed-upon definition of what makes an open source license. It's built on the Debian Free Software Guidelines, an earlier set of rules for defining "free software".

Beyond ensuring access to the source code, the OSD includes 10 core principles that further require all open source licenses to include the right to free distribution and the freedom for anyone to create derived works and use the software for any purpose.

OSI maintains a list of approved licenses that are designed for different purposes and have been reviewed for compliance with the OSD.

Google and many other OSI sponsors and affiliates recognize the OSD as the definition of open source and OSI's authority as the maintainer of the OSD. Licenses which do not comply with the OSD might still provide access to the source code, but they're not "open source".

osd
FSF

The Free Software Foundation (FSF) is the guiding force for "free software" and are the keepers of the Free Software Definition. They were fundamental in creating the movement that eventually led to the creation of open source. The FSF believes that access to modify and share source code is essential for respecting users' freedoms.

LEARN MORE

Continue the journey.

There's more to open source than just code. The following groups help by providing processes for managing intellectual property, accepting financial contributions, and other infrastructure and stewardship that growing projects need. Here are just a few organizations and some of their affiliated projects:

There are lots of places you can learn more about open source. Here are a few: