Skip to main content

Open Source Software

Summary

Objectives

By the end of this session you should be able to:

  • Explain what “Open Source Software” is, and how it’s different from proprietary software
  • Explain how software is distributed and installed on Linux computers
  • Explore where Linux appears in consumer products

Key Points

  • Open Source Software is released under a licence which allows for to study, change and redistribute the software for any purpose
  • Software on Linux is often distributed in packages which are free to download and install
  • Linux distributions provide tools to download, install, update and remove those packages easily
  • Linux can be found in most homes, built into smartphones, smart devices, games consoles and network equipment

Breakdown

Software Licensing

Whenever you write a computer program you own the copyright to that program (unless you assign it to your employer as part of your employment contract, which is a common arrangement) - and that means nobody else is allowed to use or distribute that code without your permission. A software license is a contract that you can distribute with your code to set out what permissions you grant other people.

Much of the software consumers use have highly restrictive licences. An excerpt of the Microsoft Windows Operating System License states:

Under this agreement, we grant you the right to install and run one instance of the software on your device (the licensed device), for use by one person at a time, so long as you comply with all the terms of this agreement.

In another place, listing that you may not:

(i) use or virtualize features of the software separately;
(ii) publish, copy (other than the permitted backup copy), rent, lease, or lend the software;
(iii) transfer the software (except as permitted by this agreement);
(iv) work around any technical restrictions or limitations in the software;
(v) use the software as server software, for commercial hosting, make the software available for simultaneous use by multiple users over a network, install the software on a server and allow users to access it remotely, or install the software on a device for use only by remote users;

This is a very restrictive licence and a typical example of closed-source software (also known as non-free software, or proprietary software). It is very rare that anyone other than employees of the company that own closed source software could ever see such a software project's source code.

Open Source Software

By comparison, open source software comes with very few restrictions - some come with none at all! These are common features of Open Source Software Licenses:

  1. Free Redistribution - people must be able to share the software without paying a fee to anyone.
  2. Source Code Access - anyone that receives a copy of the software must also recieve (or, be able to easily access) the source code to that software - and on the same terms.
  3. Derived Works - people must be able to modify the source code, or create new software based on that source code, and they must be able to distribute that source code on the same terms as the original licence.

Many Open Source Software licences exist; these may be created with additional freedoms, or they may be more restrictive - some are simply made for different purposes, like documentation or software libraries.

Because Open Source Software is free to use, free to modify and free to study, it is very useful for new learners.

info

Open Source Software is not public domain; Open Source licences grant more freedom than Closed Source licences, but they are only enforcable because of the copyrighted status of the software.

Who uses Open Source Software?

Because Open Source Software can be extended and developed by anyone (subject to varying conditions) it has become very popular as a basis for new projects and even whole companies. As an example: while Windows is still a common desktop operating system, most smart device manufacturers use Linux and other open source software as a basis for their products:

  • Android is the most common smartphone platform in the world, and is based on Linux.
  • Most modern smart TVs, smart speakers, smart appliances etc are based on Linux.
  • Apple devices do not use Linux, but are based on "Darwin", an open source operating system based on BSD.
  • Even Microsoft use and contribute to open source projects, including Linux, and include them in modern Windows builds.

It is notable that all the modern tech giants heavily leveraged (and still leverage) Open Source Software as part of their success.