Benefits and development of open source software
✍️ How to write this paper — guide, tools & examples ▾
Open Source Software
Open-source software
Open source software has been in existence for some time as a reaction to restrictive copyright laws on software use. This type of software is generally freely available to the public, under certain types of license agreements. The main advantage of open source development is the number of users that can be involved in the improvement of such software, for the ultimate advantage of the general public. Many different parties can scrutinize for bugs, for example, which leads to the rapid improvement and development of new products. In this way, open source software provides a platform for the increasing use of technology by increasing amounts of people. Ultimately, it can be said that such software contributes to the well-being of the "global village" concept. Although some researchers have begun to focus on the potential disadvantages of open source software, most are in agreement that it is beneficial for the world and for technology use at large.
What is open source software?
Open source software is generally available to download for free form the Internet. It has source code that is open, and can be viewed and redistributed from an unrestricted platform. The only requirement is that users adhere to the specific license agreements attached to the software being downloaded. These licenses provide the unconditional right to modify the software, and in turn allow unlimited distribution of the modified software. These licenses apply to any user who cares to download the software from the Internet. The word "open" denotes the philosophical sense of "open or free speech" rather than referring to a product that can be downloaded for free, although the latter is generally part of the agreement. Open source software originate when certain communities of users contribute to the development of a piece of software. These communities usually have explicit philosophical objectives. They engage in robust and rigorous development, testing and approval for a successful development outcome and improvements.
Open source software development communities can either participate in the development process voluntarily, or can be paid employees. Government departments or technological companies for example make use of such communities of employees to provide them with development processes. Companies who make use of these communities include IBM, Hewlett Packard and Sun Microsystems. Being made freely available to the public is consistent with the philosophy of public education, where the software is considered a public good rather than a commodity that can be used for financial gain. While profit is therefore not gained from the public using the software, companies do gain by means of research results associated with the collaborative software development process. Such research could for example result in related products such as product packaging or bundling, technical services,, conferences, books, or promotional materials.
There are many open source software systems currently available. One of the most well-known is the Linux open source operating system, which can be compared to Windows or Windows NT. OpenOffice is an open source application software system by means of which users can engage in functions such as word-processing, presentations and spreadsheets.
History of open-source software
Origins of the OSS movement
The OSS movement can generally trace its roots to the cultural attitude of opposition to restrictions imposed by the intellectual property laws in academic circles within the United States. The exclusive rights imposed by these laws unleashed a wave of protest reminiscent of the counter culture of the 1960s. The movement was also antithetical to commercial exploitation of operating systems such as UNIX during 1970s and 1980s. The system was developed by AT&T employees at Bell Laboratories.
The FSF and the four freedoms
The Free Software Foundation (FSF) was established in 1985 by an ex-MIT academic, Richard Stallman. The Foundation was dedicated to the development of Free Software, and was also a non-profit operation. The functions of the FSF would be to conduct control over the GNU Project, be in possession of the copyright for created software, and enforce all licenses. According to the FSF's rules for Free Software, four essential freedoms had to be included for software to be considered for a license.
• The software had to be run for any purpose;
• The software's function had to be studied and adapted;
• Copies of the software had to be redistributed; and • The software had to be improved, and released with the improvements.
GNU, the GPL and Linux
Stallman announced the GNU Project in 1983. The project entailed a mass collaboration for the purpose of creating Free Software, and in the process to create a full operating system to replace UNIX. The GPL (General Public Licence) was adopted for the GNU software. -- the GNU General Public Licence (GPL). All the components of the project were completed by 1992, with the exception of the operating system kernel, or the GNU Hurd. In the same year, the problem was addressed by combining the GNU software with a new kernel, known as Linux. This resulted in a complete operating system, the GNU/Linux, which was licensed under the GPL.
The OSI and the OSD
During the late 1990s, the OSS community once again made its voice heard by objecting to the anti-IP sentiments of Stallman and other industry leaders. According to these dissenting voices, these sentiments were an inhibiting factor to the widespread use of OSS> Bruce Perensand and Eric Raymond, leaders within the OSS movement, therefore established the Open Source Initiative (OSI) in 1998. The purpose of the Initiative was change the basis of OSS promotion from ethical or philosophical grounds to a pragmatic platform. As steward of the Open Source Definition (OSD), one of the functions of the OSI is to ensure that licences conform to the OSD by means of a review and approval process. Such licenses may take several different forms, while the types of obligations imposed by the OSD could vary widely. Nevertheless, there are 10 OSD criteria for the approval of open source licenses.
Open-source software development
Open-source software development begins when a need for a new feature or new software is identified. An individual or group then begins an open source project to address the need by writing the initial feature or software to fill the need. The software is then released under a license to provide communities with the right to use and modify the source code for the purpose of meeting unique local needs or repairing bugs. When using an open network such as the Internet for making software available, developers across the world are able to contribute and modify to the existing code, as well as submitting bug reports and repairs to the current system. The original developers can then use the information they receive to repair and improve the main source code and make a new version of the software available to the public. It is therefore a reiterative process for the benefit of the public. This is then also the basis of the claim that software evolution is faster via OSS because of its multiple participants in the processes of writing, testing, or debugging. According to Raymond [42], the participation of more people will result in the identification and elimination of more bugs, which in turn will likely result in faster software improvement. Along with this, a further claim is that the resulting rapid evolution of software via the OSS model also results in better software. The cited reason for this is that the traditional closed model is seen by "only a very few programmers" [38], while most users are obliged to use the software "blindly." When taking the above into account, OSS development can be said to be a process of perpetual maintenance. It is a series of maintenance efforts by multiple users who identify and report bugs. The voluntary nature of most OSS projects [14][48] necessitates providing a platform from which workers can make the minimal effort for significant results. Many researchers have investigated the phenomenon of OSS contribution, and the motivation behind it [34], but very little attention has been paid to possible inhibitors to such contributions. Von Hippel and Von Krogh [51] mention that the complexity of the source code and the level of difficulty of the embedded algorithms is a major concern for developers. Logic suggests, and authors such as Fitzgerald [15] substantiates this, that a greater level of complexity would result in a barrier to OSS development, which could in turn result in the need for reengineering or even system replacement on a large scale. It is therefore vitally important to cultivate an understanding of the source code complexity, as well as how this could impact on software and OSS development.
Conclusion
Open source software provides a platform not only for the collective creativity of many individuals, but also for the increasing participation of the "global village" in promoting knowledge and expertise across the world. The many applications of open source software are only beginning to manifest among technological circles and global communities. The rapid growth of these kinds of developments have made it necessary to closely scrutinize any disadvantages it may hold for both users and developers. This is why it is vitally important that researchers, volunteers, and software developers join forces to ensure that the advantages remain and continually outweigh any disadvantages. In general OSS is an important part of what it means to use technology today, while it promotes the spirit of cooperation across cultures and across the world.
Create your account
Always verify citation format against your institution’s current style guide requirements.