Appendix A

Open Source Software–An Epilogue

Shakun Gupta

Open source software is computer software that is available in source code form. The source code is provided under a software license which permits the users to use, study, change, improve, and distribute the software. An example of the source code is as seen for the mean function in Section 1.1.

Open source software is made available for anyone to use or modify, as its source code is made available. The software use is subject only on the stipulation that any enhancements or changes are freely available to the public. With open source software, users, scientists, engineers, and everyone else, are granted the right to both of the program's functionality and methodology. The users only have the rights to functionality of a proprietary software program.

Definition from the Open Source Initiative (OSI) Foundation Introduction

Open source does not just mean access to the source code. The distribution terms of open source software must comply with the following criteria:

  1. 1. Free Redistribution. The license shall not restrict any party from selling or giving away the software as a component of an aggregate software distribution containing programs from several different sources. The license shall not require a royalty or other fee for such a sale.
  2. 2. Source Code. The program must include the source code, and must allow distribution in source code as well as compiled form. Where some form of a product is not distributed with the source code, there must be a well-publicized means of obtaining the source code for no more than a reasonable reproduction cost, preferably downloading via the Internet without charge. The source code must be the preferred form in which a programmer can modify the program. A deliberately obfuscated source code is not allowed. Intermediate forms such as the output of a preprocessor or translator are not allowed.
  3. 3. Derived Works. The license must allow modifications and derived works, and must allow them to be distributed under the same terms as the license of the original software.
  4. 4. Integrity of the Author's Source Code. The license may restrict the source code from being distributed in modified form, only if the license allows the distribution of “patch files” with the source code for the purpose of modifying the program at build time. The license must explicitly permit distribution of the software built from the modified source code. The license may require derived works to carry a different name or version number from the original software.
  5. 5. No Discrimination Against Persons or Groups. The license must not discriminate against any person or group of persons.
  6. 6. No Discrimination against Fields of Endeavor. The license must not restrict anyone from making use of the program in a specific field of endeavor. For example, it may not restrict the program from being used in a business, or from being used for genetic research.
  7. 7. Distribution of License. The rights attached to the program must apply to all to whom the program is redistributed without the need for execution of an additional license by those parties.
  8. 8. License must not be Specific to a Product. The rights attached to the program must not depend on the program being part of a particular software distribution. If the program is extracted from that distribution and used or distributed within the terms of the program's license, all parties to whom the program is redistributed should have the same rights as those that are granted in conjunction with the original software distribution.
  9. 9. License must not Restrict other Software. The license must not place restrictions on other software that is distributed along with the licensed software. For example, the license must not insist that all other programs distributed on the same medium must be open source software.
  10. 10. License must be Technology-Neutral. No provision of the license may be predicated on any individual technology or style of interface.

Merits and Demerits of Open Source Software

There are a number of merits inherent in the use of open source software.

  1. 1. Low Cost. The source code of the open source software is freely available. Also the commercial versions and the support associated with the software is typically cheaper.
  2. 2. Ease of Customization. The user has full access to the source code. So, the code can be customized according to their requirements.
  3. 3. Open Platforms. The open source software solutions are typically developed using open tools, which reduces ‘lock-in’ with specific vendors or software platforms.
  4. 4. Ease of Integration. Typically, all the open source software packages are developed by keeping integration in mind.
  5. 5. Community Support. The most popular open source solutions are supported by an active community of many developers. So, it becomes easy to reach to the core of any issue.
  6. 6. Rapid Problem Resolution. When a bug is reported in the open source software, the solution is released as a patch in a very short period of time. Also, as the full source code is available, the problem can be resolved by the user also.

There are some demerits too.

  1. 1. Not Enterprise-Level. The open source software solutions can lack some of the features provided by enterprise scales solutions.
  2. 2. Lack of Commercial Support. Open source solutions lack commercial support, and service-level guarantees.
  3. 3. Lack of Documentation. Open source solutions typically provide only a small amount of documentation.
  4. 4. Poor usability. In general, open source solutions have remained focused primarily on the technical architecture and feature set.

Motivation for Programmers and Students

  1. Although there is a lack of financial incentive to program software, motivation can be seen as a form of personal satisfaction for programmers.
  • Sense of “intellectual gratification” as a result of writing software. This intellectual gratification is similar to the feeling of a scientific discovery.
  • Personal satisfaction comes from the act of writing software as an equivalent to creative self expression.
  • Rediscovery of creativity, which has been lost through the mass production of commercial software products.
  • Creating a tool better suited to the programmer's or community use.
  • Economic motivations like rewards, possible future career endeavors.

Examples of Usage

  • Government Agencies. Government Agencies are utilizing open source infrastructure software, such as the Linux operating system and the Apache Web-server into software, to manage information
  • Education. Colleges and organizations use software to educate their students. Open source technology is being adopted by many institutions, because it can save these institutions from paying companies to provide them with these administrative software systems.
  • Enterprises. Enterprises are the biggest consumers of open source software. As open source software is commercially free, it significantly reduces the expenditure on the IT division.

Some Famous Open Source Software

We use open source software in our day-to day lives. Here are some of the famous ones:

    • Linux Kernel
    • GNU utilities and compilers
    • Ubuntu
    • Apache
    • Google Android Google Chrome
    • VLC, Wordpress
    • Mysql
    • Mozilla
    • GNU Plot
    • LaTeX, and of course
    • R
..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset
18.221.129.19