Careers Career Paths How Open-Source Software Works Share PINTEREST Email Print Bijendra / Getty Images Career Paths Technology Careers Sports Careers Sales Project Management Professional Writer Music Careers Media Legal Careers US Military Careers Government Careers Finance Careers Fiction Writing Careers Entertainment Careers Criminology Careers Book Publishing Aviation Animal Careers Advertising Learn More By Patricia Pickett Patricia Pickett Patricia Pickett is a communications coordinator at Ontario Tech University and has been writing about technology and business since 2000. Learn about our Editorial Process Updated on 11/20/19 Open-source software (OSS) is any computer software that's distributed with its source code available for modification. That means it usually includes a license for programmers to change the software in any way they choose: They can fix bugs, improve functions, or adapt the software to suit their own needs. Open-Source Software Criteria The Open Source Initiative (OSI), a global nonprofit founded in 1998, acts as a leading authority on OSS. Its definition of open-source software includes ten criteria, relating to matters such as: Software redistributionSource code availability and integrityDistribution and properties of licensesDerived worksAnti-discrimination Licenses Different licenses allow programmers to modify the software with various conditions attached. According to the Black Duck KnowledgeBase, a database of some two million open source projects, five of the most popular licenses are: MIT LicenseGNU General Public License (GPL) 2.0Apache License 2.0GNU General Public License (GPL) 3.0BSD License 2.0 (3-clause, New or Revised) When you change the source code, OSS requires the inclusion of what you altered as well as your methods. The software created after code modifications may or may not be made available for free. Commercial Software Commercially available software, aka commercial or proprietary software, doesn’t give access to its source code because the software is someone else's intellectual property. As a result, users often pay for it. OSS, on the other hand, is a collaborative effort; The software is shared intellectual property among all who have helped develop or alter it. Free Software Although the terms are often used interchangeably, OSS is slightly different from free software. Both deal with the ability to download and modify software without restriction or charge. However, free software—a concept developed in the 1980s by an MIT computer science researcher, Richard Stallman—is defined by four conditions, as outlined by the nonprofit Free Software Foundation. These "four freedoms" emphasize the ability of users to use and enjoy software as they see fit. In contrast, the OSS criteria, which the Open Source Initiative developed a decade later, place more emphasis on the modification of software, and the consequences of altering source code, licensing, and distribution. The two overlap; some would say the differences between OSS and free software are more philosophical than practical. However, neither should be confused with freeware. Freeware usually refers to proprietary software that users can download at no cost, but whose source code cannot be changed. Advantages While its lack of cost is a key advantage, OSS has several additional benefits: Its quality can be easily and greatly improved when its source code is passed around, tested, and fixed. It offers a valuable learning opportunity for programmers. They can apply skills to the most popular programs available today. It can be more secure than proprietary software because bugs are identified and fixed quickly. Since it is in the public domain, and constantly subject to updates, there is little chance it can become unavailable or quickly outmoded—an important plus for long-term projects. Popular Types Open-source technologies helped establish much of the internet. Furthermore, many of the programs in use every day are based on open-source technologies. Cases in point: Android OS and Apple’s OS X are based on the kernel and Unix/BSD open-source technologies, respectively. Other popular open-source software is: Mozilla's Firefox web browser Thunderbird email client PHP scripting language Python programming language Apache HTTP web server Developers OSS projects are collaboration opportunities that improve skills and build connections in the field. Areas that developers can work on include: Communication Tools Email, real-time messaging, forums, and wikis help developers to find solutions or bounce ideas off each other. Distributed Revision Control Systems When multiple developers in different geographical locations modify data and files, these systems manage the different versions and updates. Bug Trackers and Task Lists These features allow large-scale projects to monitor issues and keep track of their fixes. Testing and Debugging Tools These features automate testing during system integration and debug other programs. The Bottom Line Open-source software is an alternative to proprietary software. Participating in an OSS project can be a pathway to building a career in software development, allowing programmers to hone their skills by working on the biggest software programs in the world. Facebook, Google, and LinkedIn all release OSS, so developers can share knowledge, innovate solutions, and contribute to stable, functional products.