The Definition of Open-Source
The term open source refers to programs that have their source code is freely available to their users. Said users are also given the freedom to take this source code, modify it, and distribute their own versions of the program. Users of open-source programs are also given the freedom to distribute as many copies of the original program as they want. Open-source programs can be modified and used by anyone because; there are no licensing fees or other restrictions on the software.
A widely popular and common example of an open-source operating system is Ubuntu Linux. The Ubuntu devs allow you to download Ubuntu, create as many copies as you want, and give them to your friends. Ubuntu can exist on an unlimited amount of computers. Linux allows users to create remixes of the Ubuntu installation disc and distribute them as an open-source program. Inspired programmers can open up the source code of their ubuntu program and modify it into a unique customized version of Linux and its related programs. Open-source licenses are always this lax and enable you to do this, while closed-source licenses place restrictions on you.
Closed source programs are essentially the direct opposite of open-source programs as they usually come with a license that restricts users and keeps the source code from them. It’s illegal to modify the source code of a closed source program. Other Common examples of open source programs are Firefox, Chrome, OpenOffice, Linux, and Android. The most popular closed source software out there is, without a doubt, Microsoft Windows.
There’s a common misconception between Open Source and Free Software. Hopefully, I’ll be able to clear up any confusion. Open-source applications are usually free, i.e., they have no price tag. This doesn’t mean that some developers can’t charge for copies of the open-source software if they allow redistribution of the application and its source code afterward.
Most people assume that because most open source programs are free, they make them “free software”. However, the free in the free software means. Free software advocates for free as in freedom rather than price tags. The free software camp is led by Richard Stallman and the Free Software Foundation. These guys and their movement advocate the ethics and morals of using software that the user can control and modify, i.e., the free software camp focuses on user freedoms.
On the other hand, open-source software focuses more on pragmatic reasons for choosing this type of software. The advocates for open-source software try to focus on the practical benefits of using open-source software that would appeal more to businesses than ethics and morals. They are all making the same type of software; the only difference is that they disagree on the messaging.
Open source projects are bound by various licenses that impact how the developers make the program and how free the users are to modify the program. A license like GPL, or GNU General Public License, is extremely common and is widely used by many open-source projects, such as Linux. The terms of the GPL generally state, alongside the general terms mentioned above, that if anyone modifies an open-source program and distributes a derivative work, they must also distribute the source code for their derivative work. This means that open source projects will beget more open source projects. Under the GPL, no one can take open-source code and create a closed-source program from it. The terms state that all the changes must be given back to the open-source community. The GPL is ubiquitous and has been dubbed “viral” by Microsoft for this reason, as it forces programs that incorporate GPL code to release their own source code. Some Devs can also choose not to use GPL code if it poses a problem.
There are other licenses like the BSD license. This BSD license places fewer restrictions on developers. The source code of programs under the BSD license can be incorporated into another program. Unlike the GPL, these changes aren’t required to be released back to the open-source community. The BSD license is viewed by many to be more “free” than the GPL license, as it gives developers the freedom to incorporate the code into their own closed-source programs. Other people would argue that the BSD license is less “free” because it takes rights away from the end-users of the derived program.
Benefits for Users
With all the talk of licenses, you might think that open-source software only affects the developers, but that’s not true. Open-source software is primarily beneficial to users because they are free. Linux is a good example of this because, unlike windows, you are free to install or distribute as many copies of Ubuntu as you want, with no restrictions. This priceless attribute is beneficial when setting up a server. If you want to create a virtualized cluster of servers, you can easily duplicate a single Ubuntu server. You needn’t worry about license infringements or how many instances of Linux you’re allowed to run.
Open-source software is also a lot more flexible. An example of the contrast between open and closed source programs is Windows 8. Windows 8 had a disappointing user interface, and because Windows is closed-source, no Windows user can take the Windows 7 interface, modify it, and make it work properly on Windows 8. On the other hand, Linux users can easily take apart any bad feature added to the OS. An example of this was when GNOME 3 was released. People really didn’t like the interface, and they immediately took the code to the old version, GNOME 2, and modified it to run on the latest Linux distributions. This modification was MATE. Others just decided to take the code to GNOME 3 and modified it to make it work in a way they preferred. This modification was called Cinnamon.