Open-source software | Wikipedia audio article


Open-source software (OSS) is a type of computer
software in which source code is released under a license in which the copyright holder
grants users the rights to study, change, and distribute the software to anyone and
for any purpose. Open-source software may be developed in a
collaborative public manner. According to scientists who have studied it,
open-source software is a prominent example of open collaboration. The term is often written without a hyphen
as “open source software”.Open-source software development, or collaborative development
between multiple independent contributors, generates an increasingly more diverse scope
of design perspective than any company is capable of developing and sustaining long
term. A 2008 report by the Standish Group states
that adoption of open-source software models has resulted in savings of about $60 billion
(£48 billion) per year to consumers.==History=====End of 1990s: Foundation of the Open Source
Initiative===In the early days of computing, programmers
and developers shared software in order to learn from each other and evolve the field
of computing. Eventually, the open-source notion moved to
the way side of commercialization of software in the years 1970-1980. However, academics still often developed software
collaboratively. For example Donald Knuth in 1979 with the
TeX typesetting system or Richard Stallman in 1983 with the GNU operating system. In 1997, Eric Raymond published The Cathedral
and the Bazaar, a reflective analysis of the hacker community and free-software principles. The paper received significant attention in
early 1998, and was one factor in motivating Netscape Communications Corporation to release
their popular Netscape Communicator Internet suite as free software. This source code subsequently became the basis
behind SeaMonkey, Mozilla Firefox, Thunderbird and KompoZer. Netscape’s act prompted Raymond and others
to look into how to bring the Free Software Foundation’s free software ideas and perceived
benefits to the commercial software industry. They concluded that FSF’s social activism
was not appealing to companies like Netscape, and looked for a way to rebrand the free software
movement to emphasize the business potential of sharing and collaborating on software source
code. The new term they chose was “open source”,
which was soon adopted by Bruce Perens, publisher Tim O’Reilly, Linus Torvalds, and others. The Open Source Initiative was founded in
February 1998 to encourage use of the new term and evangelize open-source principles.While
the Open Source Initiative sought to encourage the use of the new term and evangelize the
principles it adhered to, commercial software vendors found themselves increasingly threatened
by the concept of freely distributed software and universal access to an application’s source
code. A Microsoft executive publicly stated in 2001
that “open source is an intellectual property destroyer. I can’t imagine something that could be worse
than this for the software business and the intellectual-property business.” However, while Free and open-source software
has historically played a role outside of the mainstream of private software development,
companies as large as Microsoft have begun to develop official open-source presences
on the Internet. IBM, Oracle, Google and State Farm are just
a few of the companies with a serious public stake in today’s competitive open-source market. There has been a significant shift in the
corporate philosophy concerning the development of FOSS.The free-software movement was launched
in 1983. In 1998, a group of individuals advocated
that the term free software should be replaced by open-source software (OSS) as an expression
which is less ambiguous and more comfortable for the corporate world. Software developers may want to publish their
software with an open-source license, so that anybody may also develop the same software
or understand its internal functioning. With open-source software, generally anyone
is allowed to create modifications of it, port it to new operating systems and instruction
set architectures, share it with others or, in some cases, market it. Scholars Casson and Ryan have pointed out
several policy-based reasons for adoption of open source – in particular, the heightened
value proposition from open source (when compared to most proprietary formats) in the following
categories: Security
Affordability Transparency
Perpetuity Interoperability
Flexibility Localization – particularly in the context
of local governments (who make software decisions). Casson and Ryan argue that “governments have
an inherent responsibility and fiduciary duty to taxpayers” which includes the careful analysis
of these factors when deciding to purchase proprietary software or implement an open-source
option.The Open Source Definition presents an open-source philosophy and further defines
the terms of use, modification and redistribution of open-source software. Software licenses grant rights to users which
would otherwise be reserved by copyright law to the copyright holder. Several open-source software licenses have
qualified within the boundaries of the Open Source Definition. The most prominent and popular example is
the GNU General Public License (GPL), which “allows free distribution under the condition
that further developments and applications are put under the same licence”, thus also
free.The open source label came out of a strategy session held on April 7, 1998 in Palo Alto
in reaction to Netscape’s January 1998 announcement of a source code release for Navigator (as
Mozilla). A group of individuals at the session included
Tim O’Reilly, Linus Torvalds, Tom Paquin, Jamie Zawinski, Larry Wall, Brian Behlendorf,
Sameer Parekh, Eric Allman, Greg Olson, Paul Vixie, John Ousterhout, Guido van Rossum,
Philip Zimmermann, John Gilmore and Eric S. Raymond. They used the opportunity before the release
of Navigator’s source code to clarify a potential confusion caused by the ambiguity of the word
“free” in English. Many people claimed that the birth of the
Internet, since 1969, started the open-source movement, while others do not distinguish
between open-source and free software movements.The Free Software Foundation (FSF), started in
1985, intended the word “free” to mean freedom to distribute (or “free as in free speech”)
and not freedom from cost (or “free as in free beer”). Since a great deal of free software already
was (and still is) free of charge, such free software became associated with zero cost,
which seemed anti-commercial.The Open Source Initiative (OSI) was formed in February 1998
by Eric Raymond and Bruce Perens. With at least 20 years of evidence from case
histories of closed software development versus open development already provided by the Internet
developer community, the OSI presented the “open source” case to commercial businesses,
like Netscape. The OSI hoped that the use of the label “open
source”, a term suggested by Christine Peterson of the Foresight Institute at the strategy
session, would eliminate ambiguity, particularly for individuals who perceive “free software”
as anti-commercial. They sought to bring a higher profile to the
practical benefits of freely available source code, and they wanted to bring major software
businesses and other high-tech industries into open source. Perens attempted to register “open source”
as a service mark for the OSI, but that attempt was impractical by trademark standards. Meanwhile, due to the presentation of Raymond’s
paper to the upper management at Netscape—Raymond only discovered when he read the press release,
and was called by Netscape CEO Jim Barksdale’s PA later in the day—Netscape released its
Navigator source code as open source, with favorable results.==Definitions==The Open Source Initiative’s (OSI) definition
is recognized by several governments internationally as the standard or de facto definition. In addition, many of the world’s largest open-source-software
projects and contributors, including Debian, Drupal Association, FreeBSD Foundation, Linux
Foundation, Mozilla Foundation, Wikimedia Foundation, WordPress Foundation have committed
to upholding the OSI’s mission and Open Source Definition through the OSI Affiliate Agreement.OSI
uses The Open Source Definition to determine whether it considers a software license open
source. The definition was based on the Debian Free
Software Guidelines, written and adapted primarily by Perens. Perens did not base his writing on the “four
freedoms” from the Free Software Foundation (FSF), which were only widely available later.Under
Perens’ definition, open source is a broad software license that makes source code available
to the general public with relaxed or non-existent restrictions on the use and modification of
the code. It is an explicit “feature” of open source
that it puts very few restrictions on the use or distribution by any organization or
user, in order to enable the rapid evolution of the software.Despite initially accepting
it, Richard Stallman of the FSF now flatly opposes the term “Open Source” being applied
to what they refer to as “free software”. Although he agrees that the two terms describe
“almost the same category of software”, Stallman considers equating the terms incorrect and
misleading. Stallman also opposes the professed pragmatism
of the Open Source Initiative, as he fears that the free software ideals of freedom and
community are threatened by compromising on the FSF’s idealistic standards for software
freedom. The FSF considers free software to be a subset
of open-source software, and Richard Stallman explained that DRM software, for example,
can be developed as open source, despite that it does not give its users freedom (it restricts
them), and thus doesn’t qualify as free software.===Open-source software licensing===When an author contributes code to an open-source
project (e.g., Apache.org) they do so under an explicit license (e.g., the Apache Contributor
License Agreement) or an implicit license (e.g. the open-source license under which
the project is already licensing code). Some open-source projects do not take contributed
code under a license, but actually require joint assignment of the author’s copyright
in order to accept code contributions into the project.Examples of free software license
/ open-source licenses include Apache License, BSD license, GNU General Public License, GNU
Lesser General Public License, MIT License, Eclipse Public License and Mozilla Public
License. The proliferation of open-source licenses
is a negative aspect of the open-source movement because it is often difficult to understand
the legal implications of the differences between licenses. With more than 180,000 open-source projects
available and more than 1400 unique licenses, the complexity of deciding how to manage open-source
use within “closed-source” commercial enterprises has dramatically increased. Some are home-grown, while others are modeled
after mainstream FOSS licenses such as Berkeley Software Distribution (“BSD”), Apache, MIT-style
(Massachusetts Institute of Technology), or GNU General Public License (“GPL”). In view of this, open-source practitioners
are starting to use classification schemes in which FOSS licenses are grouped (typically
based on the existence and obligations imposed by the copyleft provision; the strength of
the copyleft provision).An important legal milestone for the open source / free software
movement was passed in 2008, when the US federal appeals court ruled that free software licenses
definitely do set legally binding conditions on the use of copyrighted work, and they are
therefore enforceable under existing copyright law. As a result, if end-users violate the licensing
conditions, their license disappears, meaning they are infringing copyright. Despite this licensing risk, most commercial
software vendors are using open source software in commercial products while fulfilling the
license terms, e.g. leveraging the Apache license.===Certifications===
Certification can help to build user confidence. Certification could be applied to the simplest
component, to a whole software system. The United Nations University International
Institute for Software Technology, initiated a project known as “The Global Desktop Project”. This project aims to build a desktop interface
that every end-user is able to understand and interact with, thus crossing the language
and cultural barriers. The project would improve developing nations’
access to information systems. UNU/IIST hopes to achieve this without any
compromise in the quality of the software by introducing certifications.==Open-source software development=====
Development model===In his 1997 essay The Cathedral and the Bazaar,
open-source evangelist Eric S. Raymond suggests a model for developing OSS known as the bazaar
model. Raymond likens the development of software
by traditional methodologies to building a cathedral, “carefully crafted by individual
wizards or small bands of mages working in splendid isolation”. He suggests that all software should be developed
using the bazaar style, which he described as “a great babbling bazaar of differing agendas
and approaches.”In the traditional model of development, which he called the cathedral
model, development takes place in a centralized way. Roles are clearly defined. Roles include people dedicated to designing
(the architects), people responsible for managing the project, and people responsible for implementation. Traditional software engineering follows the
cathedral model. The bazaar model, however, is different. In this model, roles are not clearly defined. Gregorio Robles suggests that software developed
using the bazaar model should exhibit the following patterns: Users should be treated as co-developers
The users are treated like co-developers and so they should have access to the source code
of the software. Furthermore, users are encouraged to submit
additions to the software, code fixes for the software, bug reports, documentation etc. Having more co-developers increases the rate
at which the software evolves. Linus’s law states, “Given enough eyeballs
all bugs are shallow.” This means that if many users view the source
code, they will eventually find all bugs and suggest how to fix them. Note that some users have advanced programming
skills, and furthermore, each user’s machine provides an additional testing environment. This new testing environment offers that ability
to find and fix a new bug. Early releases
The first version of the software should be released as early as possible so as to increase
one’s chances of finding co-developers early. Frequent integration
Code changes should be integrated (merged into a shared code base) as often as possible
so as to avoid the overhead of fixing a large number of bugs at the end of the project life
cycle. Some open source projects have nightly builds
where integration is done automatically on a daily basis. Several versions
There should be at least two versions of the software. There should be a buggier version with more
features and a more stable version with fewer features. The buggy version (also called the development
version) is for users who want the immediate use of the latest features, and are willing
to accept the risk of using code that is not yet thoroughly tested. The users can then act as co-developers, reporting
bugs and providing bug fixes. High modularization
The general structure of the software should be modular allowing for parallel development
on independent components. Dynamic decision making structure
There is a need for a decision making structure, whether formal or informal, that makes strategic
decisions depending on changing user requirements and other factors. Compare with extreme programming.Data suggests,
however, that OSS is not quite as democratic as the bazaar model suggests. An analysis of five billion bytes of free/open
source code by 31,999 developers shows that 74% of the code was written by the most active
10% of authors. The average number of authors involved in
a project was 5.1, with the median at 2.===Advantages and disadvantages===
Open source software is usually easier to obtain than proprietary software, often resulting
in increased use. Additionally, the availability of an open
source implementation of a standard can increase adoption of that standard. It has also helped to build developer loyalty
as developers feel empowered and have a sense of ownership of the end product.Moreover,
lower costs of marketing and logistical services are needed for OSS. OSS also helps companies keep abreast of technology
developments. It is a good tool to promote a company’s image,
including its commercial products. The OSS development approach has helped produce
reliable, high quality software quickly and inexpensively.Open source development offers
the potential for a more flexible technology and quicker innovation. It is said to be more reliable since it typically
has thousands of independent programmers testing and fixing bugs of the software. Open source is not dependent on the company
or author that originally created it. Even if the company fails, the code continues
to exist and be developed by its users. Also, it uses open standards accessible to
everyone; thus, it does not have the problem of incompatible formats that exist in proprietary
software. It is flexible because modular systems allow
programmers to build custom interfaces, or add new abilities to it and it is innovative
since open source programs are the product of collaboration among a large number of different
programmers. The mix of divergent perspectives, corporate
objectives, and personal goals speeds up innovation.Moreover, free software can be developed in accord with
purely technical requirements. It does not require thinking about commercial
pressure that often degrades the quality of the software. Commercial pressures make traditional software
developers pay more attention to customers’ requirements than to security requirements,
since such features are somewhat invisible to the customer.It is sometimes said that
the open source development process may not be well defined and the stages in the development
process, such as system testing and documentation may be ignored. However this is only true for small (mostly
single programmer) projects. Larger, successful projects do define and
enforce at least some rules as they need them to make the teamwork possible. In the most complex projects these rules may
be as strict as reviewing even minor change by two independent developers.Not all OSS
initiatives have been successful, for example SourceXchange and Eazel. Software experts and researchers who are not
convinced by open source’s ability to produce quality systems identify the unclear process,
the late defect discovery and the lack of any empirical evidence as the most important
problems (collected data concerning productivity and quality). It is also difficult to design a commercially
sound business model around the open source paradigm. Consequently, only technical requirements
may be satisfied and not the ones of the market. In terms of security, open source may allow
hackers to know about the weaknesses or loopholes of the software more easily than closed-source
software. It depends on control mechanisms in order
to create effective performance of autonomous agents who participate in virtual organizations.===Development tools===
In OSS development, tools are used to support the development of the product and the development
process itself.Revision control systems such as Concurrent Versions System (CVS) and later
Subversion (SVN) and Git are examples of tools, often themselves open source, help manage
the source code files and the changes to those files for a software project. The projects are frequently hosted and published
on sites like Launchpad, Bitbucket, and GitHub.Open source projects are often loosely organized
with “little formalised process modelling or support”, but utilities such as issue trackers
are often used to organize open source software development. Commonly used bugtrackers include Bugzilla
and Redmine.Tools such as mailing lists and IRC provide means of coordination among developers. Centralized code hosting sites also have social
features that allow developers to communicate.===Organizations===
Some of the “more prominent organizations” involved in OSS development include the Apache
Software Foundation, creators of the Apache web server; the Linux Foundation, a nonprofit
which as of 2012 employed Linus Torvalds, the creator of the Linux operating system
kernel; the Eclipse Foundation, home of the Eclipse software development platform; the
Debian Project, creators of the influential Debian GNU/Linux distribution; the Mozilla
Foundation, home of the Firefox web browser; and OW2, European-born community developing
open source middleware. New organizations tend to have a more sophisticated
governance model and their membership is often formed by legal entity members.Open Source
Software Institute is a membership-based, non-profit (501 (c)(6)) organization established
in 2001 that promotes the development and implementation of open source software solutions
within US Federal, state and local government agencies. OSSI’s efforts have focused on promoting adoption
of open source software programs and policies within Federal Government and Defense and
Homeland Security communities.Open Source for America is a group created to raise awareness
in the United States Federal Government about the benefits of open source software. Their stated goals are to encourage the government’s
use of open source software, participation in open source software projects, and incorporation
of open source community dynamics to increase government transparency.Mil-OSS is a group
dedicated to the advancement of OSS use and creation in the military.===Funding===Open-source software is widely used both as
independent applications and as components in non-open-source applications. Customers may be willing to use open technology
under standard commercial terms and thereby pay for open-source software when additional
value is created. This can be the case for legal protection
(e.g., indemnification from copyright or patent infringement), “commercial-grade QA”, and
professional support/training/consulting that are typical of commercial software, while
also receiving the benefits of fine-grained control and lack of lock-in that comes with
open-source. Open-source software is used as components
inside of proprietary, for-profit products and services by many independent software
vendors (ISVs), value-added resellers (VARs), and hardware vendors (OEMs or ODMs) in frameworks,
modules, and libraries.==Comparisons with other software licensing/development
models=====
Closed source / proprietary software===The debate over open source vs. closed source
(alternatively called proprietary software) is sometimes heated. The top four reasons (as provided by Open
Source Business Conference survey) individuals or organizations choose open source software
are: lower cost
security no vendor ‘lock in’
better qualitySince innovative companies no longer rely heavily on software sales, proprietary
software has become less of a necessity. As such, things like open source content management
system—or CMS—deployments are becoming more commonplace. In 2009, the US White House switched its CMS
system from a proprietary system to Drupal open source CMS. Further, companies like Novell (who traditionally
sold software the old-fashioned way) continually debate the benefits of switching to open source
availability, having already switched part of the product offering to open source code. In this way, open source software provides
solutions to unique or specific problems. As such, it is reported that 98% of enterprise-level
companies use open source software offerings in some capacity. With this market shift, more critical systems
are beginning to rely on open source offerings, allowing greater funding (such as US Department
of Homeland Security grants) to help “hunt for security bugs.” According to a pilot study of organizations
adopting (or not adopting) OSS, the following factors of statistical significance were observed
in the manager’s beliefs: (a) attitudes toward outcomes, (b) the influences and behaviors
of others, and (c) their ability to act.Proprietary source distributors have started to develop
and contribute to the open source community due to the market share shift, doing so by
the need to reinvent their models in order to remain competitive.Many advocates argue
that open source software is inherently safer because any person can view, edit, and change
code. A study of the Linux source code has 0.17
bugs per 1000 lines of code while proprietary software generally scores 20–30 bugs per
1000 lines.===Free software===According to the Free software movement’s
leader, Richard Stallman, the main difference is that by choosing one term over the other
(i.e. either “open source” or “free software”) one lets others know about what one’s goals
are: “Open source is a development methodology; free software is a social movement.” Nevertheless, there is significant overlap
between open source software and free software.The FSF said that the term “open source” fosters
an ambiguity of a different kind such that it confuses the mere availability of the source
with the freedom to use, modify, and redistribute it. On the other hand, the “free software” term
was criticized for the ambiguity of the word “free” as “available at no cost”, which was
seen as discouraging for business adoption, and for the historical ambiguous usage of
the term.Developers have used the alternative terms Free and Open Source Software (FOSS),
or Free/Libre and Open Source Software (FLOSS), consequently, to describe open source software
that is also free software. While the definition of open source software
is very similar to the FSF’s free software definition it was based on the Debian Free
Software Guidelines, written and adapted primarily by Bruce Perens with input from Eric S. Raymond
and others.The term “open source” was originally intended to be trademarkable; however, the
term was deemed too descriptive, so no trademark exists. The OSI would prefer that people treat open
source as if it were a trademark, and use it only to describe software licensed under
an OSI approved license.OSI Certified is a trademark licensed only to people who are
distributing software licensed under a license listed on the Open Source Initiative’s list.===Open-source versus source-available===Although the OSI definition of “open source
software” is widely accepted, a small number of people and organizations use the term to
refer to software where the source is available for viewing, but which may not legally be
modified or redistributed. Such software is more often referred to as
source-available, or as shared source, a term coined by Microsoft in 2001. While in 2007 two of Microsoft’s Shared Source
Initiative licenses were certified by the OSI, most licenses from the SSI program are
still source-available only.===Open-sourcing===
Open-sourcing is the act of propagating the open source movement, most often referring
to releasing previously proprietary software under an open source/free software license,
but it may also refer programing Open Source software or installing Open Source software. Notable software packages, previously proprietary,
which have been open sourced include: Netscape Navigator, the code of which became
the basis of the Mozilla and Mozilla Firefox web browsers
StarOffice, which became the base of the OpenOffice.org office suite and LibreOffice
Global File System, was originally GPL’d, then made proprietary in 2001(?), but in 2004
was re-GPL’d. SAP DB, which has become MaxDB, and is now
distributed (and owned) by MySQL AB InterBase database, which was open sourced
by Borland in 2000 and presently exists as a commercial product and an open-source fork
(Firebird)Before changing the license of software, distributors usually audit the source code
for third party licensed code which they would have to remove or obtain permission for its
relicense. Backdoors and other malware should also be
removed as they may easily be discovered after release of the code.==Current applications and adoption=====Widely used open-source software===Open source software projects are built and
maintained by a network of volunteer programmers and are widely used in free as well as commercial
products. Prime examples of open-source products are
the Apache HTTP Server, the e-commerce platform osCommerce, internet browsers Mozilla Firefox
and Chromium (the project where the vast majority of development of the freeware Google Chrome
is done) and the full office suite LibreOffice. One of the most successful open-source products
is the GNU/Linux operating system, an open-source Unix-like operating system, and its derivative
Android, an operating system for mobile devices. In some industries, open source software is
the norm.==Extensions for non-software use==While the term “open source” applied originally
only to the source code of software, it is now being applied to many other areas such
as Open source ecology, a movement to decentralize technologies so that any human can use them. However, it is often misapplied to other areas
which have different and competing principles, which overlap only partially. The same principles that underlie open source
software can be found in many other ventures, such as open-source hardware, Wikipedia, and
open-access publishing. Collectively, these principles are known as
open source, open content, and open collaboration: “any system of innovation or production that
relies on goal-oriented yet loosely coordinated participants, who interact to create a product
(or service) of economic value, which they make available to contributors and non-contributors
alike.”This “culture” or ideology takes the view that the principles apply more generally
to facilitate concurrent input of different agendas, approaches and priorities, in contrast
with more centralized models of development such as those typically used in commercial
companies.==See also

1 thought on “Open-source software | Wikipedia audio article

Leave a Reply

Your email address will not be published. Required fields are marked *