Open source software refers to programs whose source code is freely available to the public, allowing anyone to use, modify, and distribute it. This collaborative model fosters innovation, transparency, and community-driven development. From operating systems like Linux to web browsers like Firefox, open source projects power much of today’s digital landscape. Embraced by individuals, businesses, and governments alike, open source embodies principles of accessibility, flexibility, and inclusivity, driving technological advancement and democratizing software development.

Open source is tailored to serve Software and Code. For licenses tailored towards multimedia content such as text, video, audio and images, refer to the Creative Commons licenses.

FOSS vs FLOSS

FOSS (Free and Open Source Software) and FLOSS (Free/Libre and Open Source Software) both refer to a category of software that is released with a license that allows users to view, modify, and distribute the source code.

The key characteristics of FOSS and FLOSS are provided below

  1. Freedom to Use - Users are free to use the software for any purpose without any restrictions.
  2. Freedom to Study - Users have access to the source code of the software, allowing them to study how it works and understand its internal mechanisms.
  3. Freedom to Modify - Users can modify the source code to suit their needs or fix issues, providing a high level of flexibility.
  4. Freedom to Share - Users can distribute both the original and modified versions of the software to others, contributing to a collaborative and open development community.

The terms FOSS and FLOSS are often used interchangeably, but there can be subtle differences in emphasis and these are captured below

  • FOSS (Free and Open Source Software) - This term emphasizes the freedom aspect of the software, highlighting the four essential freedoms mentioned above.
  • FLOSS (Free/Libre and Open Source Software) - The term “Libre” is often included to emphasize not only the freedom to use the software but also the ethical aspect of freedom. “Libre” is a term borrowed from the French language, meaning “free” in the sense of liberty.

Both FOSS and FLOSS promote a collaborative and community-driven approach to software development, fostering innovation and transparency. Well-known examples of FOSS/FLOSS include the Linux operating system, the Apache web server, the Firefox web browser, and the LibreOffice office suite. The open-source philosophy has become a fundamental part of the software development ecosystem, contributing to the growth of free and accessible software worldwide.

Open Source Organizations

The Free Software Foundation (FSF) and the Open Source Initiative (OSI) are two key organizations within the Free and Open Source Software (FOSS) community, and they play distinct roles in advocating for and defining principles related to open source software.

  1. Free Software Foundation (FSF):
    • Mission: The FSF, founded by Richard Stallman in 1985, is dedicated to promoting and defending the principles of free software. Free software, as defined by the FSF, refers to software that respects users’ freedom, allowing them to run, modify, and share the software. The FSF places a strong emphasis on users’ rights to control and use software without any restrictions.
    • GNU Project: The FSF sponsors the GNU Project, which aims to develop a complete free and open source operating system. The GNU General Public License (GPL), a widely used open source license, is maintained by the FSF.
    • Campaigns: The FSF is known for its campaigns to promote software freedom, such as the “Free Software, Free Society” campaign. They also maintain a list of free software licenses.
  2. Open Source Initiative (OSI)
    • Mission: The OSI was founded in 1998 to promote and protect the concept of open source software. Open source refers to software whose source code is made available to the public, allowing users to view, modify, and distribute it. While open source software shares similarities with free software, the OSI focuses on the pragmatic benefits of collaboration, innovation, and development.
    • Open Source Definition: The OSI maintains the Open Source Definition (OSD), which outlines the criteria that software licenses must meet to be considered open source. They also approve licenses that comply with the OSD, and their certification is recognized internationally.
    • Advocacy: The OSI actively promotes the adoption of open source software in various sectors, fostering understanding and cooperation within the software development community.

Common Open Source Licenses

The following are some of the commonly observed open source licenses.

  • GNU General Public License v3 (GPL-3.0)
    • The GPL-3.0 is a strong copyleft license that mandates the release of derivative works under the same license.
    • It allows users to use, modify, distribute, and sell the software, with the condition that the source code must be provided for any modifications.
    • Proprietary distribution without releasing the source code is not allowed.
    • Notable projects using this license include the Linux kernel, GNU tools, and MySQL.
  • MIT License
    • The MIT License is a permissive license that allows almost unrestricted use of the software with minimal restrictions.
    • Users are permitted to use, modify, distribute, and sublicense the software for any purpose, and no warranty is provided.
    • There is no requirement to distribute source code changes.
    • Projects such as Node.js, Ruby on Rails, and React.js utilize the MIT License.
  • Apache License 2.0
    • The Apache License 2.0 is a permissive license that includes an additional grant of patent rights, fostering openness and collaboration.
    • It allows users to use, modify, distribute, and sublicense the software for any purpose while providing a patent grant.
    • Similar to the MIT License, there is no requirement to distribute source code changes.
    • Projects like the Apache HTTP Server, Apache Hadoop, and the Android Open Source Project are examples of this license.
  • BSD 2-Clause License
    • The BSD 2-Clause License is a simple and permissive license that grants freedom to use, modify, and distribute the software for any purpose with minimal restrictions.
    • Redistribution of the software must include the original copyright and disclaimer.
    • However, there is a restriction on using the name of the project or its contributors to endorse derived products without permission.
    • Projects such as FreeBSD, Nginx, and NetBSD use this license.
  • Mozilla Public License 2.0 (MPL-2.0)
    • The Mozilla Public License 2.0 (MPL-2.0) combines copyleft and permissive elements, providing flexibility in licensing.
    • Users are allowed to use, modify, distribute, and sublicense the software, but derivative works must be distributed under the same license.
    • Notable projects using this license include Mozilla Firefox and Rust.
  • GNU Lesser General Public License v3 (LGPL-3.0)
    • The LGPL-3.0 is similar to the GPL but allows linking to non-GPL software.
    • Users can use, modify, distribute, and sell the software, and the source code must be provided for modifications.
    • However, proprietary distribution of the software without releasing the source code is not allowed.
    • Projects such as GTK+, GStreamer, and LibreOffice use this license.