Evelynhone/Introduction to Open Source/What is Open Source
Work in progress, expect frequent changes. Help and feedback is welcome. See discussion page. |
The learner Should have prior knowledge of:
|
At the end of this lesson, the learner should be able to:
|
Open Source
Open Source is a development methodology, which offers practical accessibility to a product's source (goods and knowledge). |
Some consider open source as one of various possible design approaches, while others consider it a critical strategic element of their operations. Before open source became widely adopted, developers and producers used a variety of phrases to describe the concept; the term open source gained popularity with the rise of the Internet, which provided access to diverse production models, communication paths, and interactive communities.
The open source model of operation and decision making allows concurrent input of different agendas, approaches and priorities, and differs from the more closed, centralized models of development. The principles and practices are commonly applied to the development of source code for software that is made available for public collaboration, and it is usually released as open-source software
Open Source Software
OSS can be defined as computer software for which the human-readable source code is made available under a copyright license (or arrangement such as the public domain) that meets the Open Source Definition. |
Open source software (OSS) began as a marketing campaign for free software.
This permits users to use, change, and improve the software, and to redistribute it in modified or unmodified form. It is very often developed in a public, collaborative manner. Open source software is the most prominent example of open source development and often compared to user generated content
Understanding the Open Source Concept
Open-source software development works like this:
- a programmer or a company develops a rough version of a software product and releases the source code for the public (typically acommunity of developers) to use and modify. Source code is the underlying code as it is written in a programming language, before it is compiled into the 1's and 0's that computers need to run it. In other words, source code is the human (programmer) readable language instructing a computer to execute aprogram. By contrast, in a conventional software distribution, usually called closed or proprietary source, the end-users obtain a code that has been compiled into binary form and is not easily decipherable or re-usable by software developers.
- After the source code is released, developers obtain an open-source license from the overseer, which grants the user four rights: to possess a copy of the code and to compile, modify, and redistribute it. Unlike a traditional software license, in which a customer pays a fee to use (not own) the code, a strict open-source license, as defined by the Open Source Initiative (discussed later) may not require a royalty or other fee. Usually, changes tothe original source code are then sent back to the author for possible incorporation into the official version of the product. Some types of open-source code licenses do not require the return of the enhanced code. The process continues indefinitely, until interest declines or a companydecides to close the source and sell the product commercially -- which, to date, has been rare.
Ethics
Ethics is a major branch of philosophy, encompassing right conduct and good life.
It is significantly broader than the common conception of analyzing right and wrong. |
A central aspect of ethics is "the good life", the life worth living or life that is simply not satisfying, which is held by many philosophers to be more important than moral conduct.
Open Source ethics is split into two strands:
- Open Source Ethics as an Ethical School - Charles Ess and David Berry are researching whether ethics can learn anything from an open source approach. Ess famously even defined the AoIR Research Guidelines as an example of open source ethics.[3]
- Open Source Ethics as a Professional Body of Rules - This is based principally on the computer ethics school, studying the questions of ethics and professionalism in the computer industry in general and software development in particular