Search This Blog

Wednesday, June 17, 2020

Open-source-software movement

From Wikipedia, the free encyclopedia

The open-source-software movement is a movement that supports the use of open-source licenses for some or all software, a part of the broader notion of open collaboration. The open-source movement was started to spread the concept/idea of open-source software. Programmers who support the open-source-movement philosophy contribute to the open-source community by voluntarily writing and exchanging programming code for software development. The term "open source" requires that no one can discriminate against a group in not sharing the edited code or hinder others from editing their already-edited work. This approach to software development allows anyone to obtain and modify open-source code. These modifications are distributed back to the developers within the open-source community of people who are working with the software. In this way, the identities of all individuals participating in code modification are disclosed and the transformation of the code is documented over time. This method makes it difficult to establish ownership of a particular bit of code but is in keeping with the open-source-movement philosophy. These goals promote the production of high-quality programs as well as working cooperatively with other similarly-minded people to improve open-source technology. This led to software such as MediaWiki, the software with which the Wikipedia website is built.

Brief history

The label "open source" was created and adopted by a group of people in the free-software movement at a strategy session held at Palo Alto, California, in reaction to Netscape's January 1998 announcement of a source-code release for Navigator. One of the reasons behind using the term was that "the [advantage] of using the term open source [is] that the business world usually tries to keep free technologies from being installed." Those people who adopted the term used the opportunity before the release of Navigator's source code to free themselves of the ideological and confrontational connotations of the term "free software". Later in February 1998, Bruce Perens and Eric S. Raymond founded an organization called Open Source Initiative (OSI) "as an educational, advocacy, and stewardship organization at a cusp moment in the history of that culture."

Evolution

In the beginning, a difference between hardware and software did not exist. The user and programmer of a computer were one and the same. When the first commercial electronic computer was introduced by IBM in 1952, the machine was hard to maintain and expensive. Putting the price of the machine aside, it was the software that caused the problem when owning one of these computers. Then in 1952, a collaboration of all the owners of the computer got together and created a set of tools. The collaboration of people were in a group called PACT (The Project for the Advancement of Coding techniques). After passing this hurdle, in 1956, the Eisenhower administration decided to put restrictions on the types of sales AT&T could make. This did not stop the inventors from developing new ideas of how to bring the computer to the mass population. The next step was making the computer more affordable which slowly developed through different companies. Then they had to develop software that would host multiple users. MIT computation center developed one of the first systems, CTSS (Compatible Time-Sharing System). This laid the foundation for many more systems, and what we now call the open-source software movement.

The open-source movement is branched from the free-software movement which began in the late 80s with the launching of the GNU project by Richard Stallman. Stallman is regarded within the open-source community as sharing a key role in the conceptualization of freely-shared source code for software development. The term "free software" in the free software movement is meant to imply freedom of software exchange and modification. The term does not refer to any monetary freedom. Both the free-software movement and the open-source movement share this view of free exchange of programming code, and this is often why both of the movements are sometimes referenced in literature as part of the FOSS or "Free and Open Software" or FLOSS "Free/Libre Open-Source" communities.

These movements share fundamental differences in the view on open software. The main, factionalizing difference between the groups is the relationship between open-source and proprietary software. Often, makers of proprietary software, such as Microsoft, may make efforts to support open-source software to remain competitive. Members of the open-source community are willing to coexist with the makers of proprietary software and feel that the issue of whether software is open source is a matter of practicality.

In contrast, members of the free-software community maintain the vision that all software is a part of freedom of speech and that proprietary software is unethical and unjust. The free-software movement openly champions this belief through talks that denounce proprietary software. As a whole, the community refuses to support proprietary software. Further there are external motivations for these developers. One motivation is that, when a programmer fixes a bug or makes a program it benefits others in an open-source environment. Another motivation is that a programmer can work on multiple projects that they find interesting and enjoyable. Programming in the open-source world can also lead to commercial job offers or entrance into the venture capital community. These are just a few reasons why open-source programmers continue to create and advance software.

While cognizant of the fact that both, the free-software movement and the open-source movement, share similarities in practical recommendations regarding open source, the free-software movement fervently continues to distinguish themselves from the open-source movement entirely. The free-software movement maintains that it has fundamentally different attitudes towards the relationship between open-source and proprietary software. The free-software community does not view the open-source community as their target grievance, however. Their target grievance is proprietary software itself.

Legal issues

The open-source movement has faced a number of legal challenges. Companies that manage open-source products have some difficulty securing their trademarks. For example, the scope of "implied license" conjecture remains unclear and can compromise an enterprise's ability to patent productions made with open-source software. Another example is the case of companies offering add-ons for purchase; licensees who make additions to the open-source code that are similar to those for purchase may have immunity from patent suits.

In the court case "Jacobsen v. Katzer", the plaintiff sued the defendant for failing to put the required attribution notices in his modified version of the software, thereby violating license. The defendant claimed Artistic License in not adhering to the conditions of the software's use, but the wording of the attribution notice decided that this was not the case. "Jacobsen v Katzer" established open-source software's equality to proprietary software in the eyes of the law.

In a court case accusing Microsoft of being a monopoly, Linux and open-source software was introduced in court to prove that Microsoft had valid competitors and was grouped in with Apple.

There are resources available for those involved open-source projects in need of legal advice. The Software Freedom Law Center features a primer on open-source legal issues. International Free and Open Source Software Law Review offers peer-reviewed information for lawyers on free-software issues.

Formalization

The Open Source Initiative (OSI) was instrumental in the formalization of the open-source movement. The OSI was founded by Eric Raymond and Bruce Perens in February 1998 with the purpose of providing general education and advocacy of the open-source label through the creation of the Open Source Definition that was based on the Debian Free Software Guidelines. The OSI has become one of the main supporters and advocators of the open-source movement.

In February 1998, the open-source movement was adopted, formalized, and spearheaded by the Open Source Initiative (OSI), an organization formed to market software "as something more amenable to commercial business use" The OSI owns the trademark "Open Source". The main tool they adopted for this was The Open Source Definition.

The open-source label was conceived at a strategy session that was held on February 3, 1998 in Palo Alto, California and on April 8 of the same year, the attendees of Tim O’Reilly's Free Software Summit voted to promote the use of the term "open source".

Overall, the software developments that have come out of the open-source movement have not been unique to the computer-science field, but they have been successful in developing alternatives to propriety software. Members of the open-source community improve upon code and write programs that can rival much of the propriety software that is already available.

The rhetorical discourse used in open-source movements is now being broadened to include a larger group of non-expert users as well as advocacy organizations. Several organized groups such as the Creative Commons and global development agencies have also adopted the open-source concepts according to their own aims and for their own purposes.

The factors affecting the open-source movement's legal formalization are primarily based on recent political discussion over copyright, appropriation, and intellectual property.

Strengths

  • The collaborative nature of the open-source community creates software that can offer customizability and, as a result, promotes the adoption of its products.
  • The open-source community promotes the creation of software that is not proprietary, resulting in lower costs.
  • Individuals who have intrinsic interest in code writing and software creation motivate the development of open-source software within the community. This differs from proprietary software, the development of which is often motivated through potential monetary gains.
  • An open-source tool puts the system administrator in control of the level of risk assumed in deploying the tool.
  • Open source provides flexibility not available in closed products. The hope is that individuals make improvements to an open tool and will offer those improvements to the original developer and community at large. The give-and-take of the gift economy benefits the entire community.
  • Open-source licenses and software can be combined with proprietary software. While open source was initially seen as a threat to corporations, some companies found ways to strengthen their proprietary code with open-source code, re-releasing it as an improvement.
  • In the event of market failure, programmers and innovators work together to make sure that the software still works
  • Globalization of Market
The open-source movement has allowed smaller businesses to participate in the global economy. Before, smaller businesses did not have access to the software needed to participate or compete in the global market. It was the larger corporations, the producers of the networks and software who had the power. "That is, individuals who have access to the software needed to create, organize, or distribute content can plug into and participate in the global community". The creation of the open-source movement has created "a degree of global computing access that might have been unthinkable in a world where proprietary was the only option." Individuals or organizations with access to an open source had the means needed to develop technical material for a variety of consumers. The open-source movement created equal opportunities for people all over the world to participate in the global economy.

Members of the open-source movement stress the importance of differentiating between open-source software and free software. Although the two issues are related, they are quite different. The open-source movement and the free-software movement are different, but they work together. Both movements strive for freedom of the Internet and dislike the idea of ownership over a website. For both open-source and free software, one can find the source code and executable component easily and for free online. The largest difference is that free software requires any changes to be submitted to the original maker for redistribution, and any derivative software must also be distributed as free software. This is mainly to keep companies from making minor changes to free software and redistributing it as their own, for a price.

A major advantage to open-source code is the ability for a variety of different people to edit and fix problems and errors that have occurred. Naturally, because there are more people who can edit the material, there are more people who can help make the information more credible and reliable. The open-source mission statement promises better quality, higher reliability, more flexibility, lower cost, and an end to predatory vendor lock-in. They stress the importance of maintaining the Open Source Definition. This trademark creates a trusted group that connects all users and developers together. To fully understand the Open Source Definition, one must understand certain terms: Free redistribution means that there is no restriction on any party to sell or give away the software to third parties. Source Code means that the program must efficiently publicize the means of obtaining the source code. Derived works means that the program must allow certain works to be distributed under the same terms. There must be a promise of no discriminating against any certain persons or groups. All of these factors allow for the open-source movement to become available to all and easy to access, which is their overall mission. The latest updates from the Open Source Institution took place on January 19, 2011: The OSI collaborated with the Free Software Foundation and together they updated a version of the request that they have sent to the US Department of Justice.

Drawbacks

  • The structure of the open-source community requires that individuals have programming expertise in order to engage in open-code modification and exchange. Individuals interested in supporting the open-source movement may lack this skill set.
  • Programmers and developers make up a large percentage of the open-source community and sought-out technical support and/or documentation may not be useful or clear to open-source software lay-users.
  • The structure of the open-source community is one that involves contributions of multiple developers and programmers; software produced in this fashion may lack standardization and compatibility with various computer applications and capabilities.
  • Production can be very limited. Programmers that create open-source software often can turn their attention elsewhere very quickly. This opens the door for many bug-filled programs and applications out there. Because no one is paid to create it, many projects are never completed.
  • In the open-source industry, the user decides the quality of the software. A user must learn the skills of software creation independently and then make the appropriate determinations for quality and capabilities.
  • Librarians may not be equipped to take on this new responsibility of technologies.
  • There is no guarantee that development will happen. It is unknown if an open-source project will become usable, especially when a project is started without significant support from one or more organizations. Even if the project does reach a usable stage, it is possible the project can die if there is not enough funding or interest toward it.
  • It is sometimes difficult to know that a project exists, and its current status. Especially for open-source projects without significant support, there is not much advertising involved in open-source software.
  • The amount of support for an open-source project varies highly. The available support for open-source software is predominantly self-motivated discussions found on the Internet, sometimes moderated by a core group of contributors. The amount of documentation or guides for an open-source project also varies highly. More popular or company-backed projects often have more detailed and maintained documentation. However, as open-source projects are regularly changing, documentation can easily fall out of date.
  • There is no guarantee of updates. Although open-source software is available to anyone for free, regular updates are not assured since users do not pay for its use.
  • Beyond the obvious detriments towards the theoretical success of open-source software, there are several factors that contribute to the lack of long-term success in open-source projects. One of the most obvious drawback is that without pay or royalty licensing, there is little financial incentive for a programmer to become involved with a project in the first place, or to continue development and support once the initial product is released. This leads to innumerable examples of well-anticipated software being forever condemned to beta versions and unsupported early model products. With donations as the only source of income for a truly open-source (and GPL-licensed) project, there is almost no certainty in the future of the project simply because of developer abandonment, making it a poor choice for any sort of application in which future versions, support and a long-term plan would be essential, as is the case for most business software.
  • Organizations with enterprise agreements still pay licensing agreements even if they choose to run alternative open-source software. Therefore, many organizations are unlikely to consider using alternative products. As a cost-saving method of using Microsoft products, many large corporations use enterprise agreements and therefore pay a single company wide IT licensing fee, at lower cost per product. "Organizations with EAs that are interested in alternative products can benefit from the gap-filler scenario, but only after they drop Microsoft Office from their EA at the next renewal and final true-up."

Social structure of open source contribution teams

Historically, researchers have characterized open source contributors as a centralized, onion-shaped group. The center of the onion consists of the core contributors who drive the project forward through large amounts of code and software design choices. The second-most layer are contributors who respond to pull requests and bug reports. The third-most layer out are contributors who mainly submit bug reports. The farthest out layer are those who watch the repository and users of the software that's generated. This model has been used in research to understand the lifecycle of open source software, understand contributors to open source software projects, how tools such as GitHub can help contributors at the various levels of involvement in the project, and further understand how the distributed nature of open source software may affect the productivity of developers.

Some researchers have disagreed with this model. Crowston et al.'s work has found that some teams are much less centralized and follow a more distributed workflow pattern. The authors report that there's a weak correlation between project size and centralization, with smaller projects being more centralized and larger projects showing less centralization. However, the authors only looked at bug reporting and fixing, so it remains unclear whether this pattern is only associated with bug finding and fixing or if centralization does become more distributed with size for every aspect of the open source paradigm.

An understanding of a team's centralization versus distributed nature is important as it may inform tool design and aid new developers in understanding a team's dynamic. One concern with open source development is the high turnover rate of developers, even among core contributors (those at the center of the "onion"). In order to continue an open source project, new developers must continually join but must also have the necessary skill-set to contribute quality code to the project. Through a study of GitHub contribution on open source projects, Middleton et al. found that the largest predictor of contributors becoming full-fledged members of an open source team (moving to the "core" of the "onion") was whether they submitted and commented on pull requests. The authors then suggest that GitHub, as a tool, can aid in this process by supporting "checkbox" features on a team's open source project that urge contributors to take part in these activities.

Motivations of programmers

With the growth and attention on the open-source movement, the reasons and motivations of programmers for creating code for free has been under investigation. In a paper from the 15th Annual Congress of the European Economic Association on the open-source movement, the incentives of programmers on an individual level as well as on a company or network level were analyzed. What is essentially the intellectual gift giving of talented programmers challenges the "self-interested-economic-agent paradigm", and has made both the public and economists search for an understanding of what the benefits are for programmers.
  • Altruism: The argument for altruism is limited as an explanation because though some exists, the programmers do not focus their kindness on more charitable causes If the generosity of working for free was a viable motivation for such a prevalent movement, it is curious why such a trend has not been seen in industries such as biotechnology that would have a much bigger impact on the public good.
  • Community sharing and improvement: The online community is an environment that promotes continual improvements, modifications, and contributions to each other's work. A programmer can easily benefit from open-source software because by making it public, other testers and subprograms can remove bugs, tailor code to other purposes, and find problems. This kind of peer-editing feature of open-source software promotes better programs and a higher standard of code.
  • Recognition: Though a project may not be associated with a specific individual, the contributors are often recognized and marked on a project's server or awarded social reputation. This allows for programmers to receive public recognition for their skills, promoting career opportunities and exposure. In fact, the founders of Sun Microsystems and Netscape began as open-source programmers.
  • Ego: "If they are somehow assigned to a trivial problem and that is their only possible task, they may spend six months coming up with a bewildering architecture...merely to show their friends and colleagues what a tough nut they are trying to crack." Ego-gratification has been cited as a relevant motivation of programmers because of their competitive community. An OSS (open-source software) community has no clear distinction between developers and users, because all users are potential developers. There is a large community of programmers trying to essentially outshine or impress their colleagues. They enjoy having other programmers admire their works and accomplishments, contributing to why OSS projects have a recruiting advantage for unknown talent than a closed-source company.
  • Creative expression: Personal satisfaction also comes from the act of writing software as an equivalent to creative self-expression – it is almost equivalent to creating a work of art. The rediscovery of creativity, which has been lost through the mass production of commercial software products can be a relevant motivation.

Gender diversity of programmers

The vast majority of programmers in open-source communities are male. In a study for the European Union on free and open-source software communities, researchers found that only 1.5% of all contributors are female. Although women are generally underrepresented in computing, the percentage of women in tech professions is actually much higher, close to 25%. This discrepancy suggests that female programmers are overall less likely than male programmers to participate in open-source projects.

Some research and interviews with members of open-source projects have described a male-dominated culture within open-source communities that can be unwelcoming or hostile towards females. There are an initiatives such as Outreachy that aim to support more women and other underrepresented gender identities to participate in open-source software. However, within the discussion forums of open-source projects the topic of gender diversity can be highly controversial and even inflammatory. A central vision in open-source software is that because the software is built and maintained on the merit of individual code contributions, open-source communities should act as a meritocracy. In a meritocracy, the importance of an individual in the community depends on the quality of their individual contributions and not demographic factors such as age, race, religion, or gender. Thus proposing changes to the community based on gender, for example, to make the community more inviting towards females, go against the ideal of a meritocracy by targeting certain programmers by gender and not based on their skill alone.

There is evidence that gender does impact a programmer's perceived merit in the community. A 2016 study identified the gender of over one million programmers on GitHub, by linking the programmer's GitHub account to their other social media accounts. Between male and female programmers, the researchers found that female programmers were actually more likely to have their pull requests accepted into the project than male programmers, however only when the female had a gender-neutral profile. When females had profiles with a name or image that identified them as female, they were less likely than male programmers to have their pull requests accepted. Another study in 2015 found that of open-source projects on GitHub, gender diversity was a significant positive predictor of a team's productivity, meaning that open-source teams with a more even mix of different genders tended to be more highly productive.

Evidence of open-source adoption

Libraries are using open-source software to develop information as well as library services. The purpose of open source is to provide a software that is cheaper, reliable and has better quality. The one feature that makes this software so sought after is that it is free. Libraries in particular benefit from this movement because of the resources it provides. They also promote the same ideas of learning and understanding new information through the resources of other people. Open source allows a sense of community. It is an invitation for anyone to provide information about various topics. The open-source tools even allow libraries to create web-based catalogs. According to the IT source there are various library programs that benefit from this.

Government agencies and infrastructure software — Government Agencies are utilizing open-source infrastructure software, like the Linux operating system and the Apache Web-server into software, to manage information. In 2005, a new government lobby was launched under the name National Center for Open Source Policy and Research (NCOSPR) "a non-profit organization promoting the use of open source software solutions within government IT enterprises."

Open-source movement in the military — Open-source movement has potential to help in the military. The open-source software allows anyone to make changes that will improve it. This is a form of invitation for people to put their minds together to grow a software in a cost efficient manner. The reason the military is so interested is because it is possible that this software can increase speed and flexibility. Although there are security setbacks to this idea due to the fact that anyone has access to change the software, the advantages can outweigh the disadvantages. The fact that the open-source programs can be modified quickly is crucial. A support group was formed to test these theories. The Military Open Source Software Working Group was organized in 2009 and held over 120 military members. Their purpose was to bring together software developers and contractors from the military to discover new ideas for reuse and collaboration. Overall, open-source software in the military is an intriguing idea that has potential drawbacks but they are not enough to offset the advantages.

Open source in education — Colleges and organizations use software predominantly online 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. One of the first major colleges to adopt an open-source system was Colorado State University in 2009 with many others following after that. Colorado State Universities system was produced by the Kuali Foundation who has become a major player in open-source administrative systems. The Kuali Foundation defines itself as a group of organizations that aims to "build and sustain open-source software for higher education, by higher education." There are many other examples of open-source instruments being used in education other than the Kuali Foundation as well.

"For educators, The Open Source Movement allowed access to software that could be used in teaching students how to apply the theories they were learning". With open networks and software, teachers are able to share lessons, lectures, and other course materials within a community. OpenTechComm is a program that is dedicated to "open access, open use, and open edits- text book or pedagogical resource that teachers of technical and professional communication courses at every level can rely on to craft free offerings to their students." As stated earlier, access to programs like this would be much more cost efficient for educational departments. 

Open source in healthcare — Created in June 2009 by the nonprofit eHealthNigeria, the open-source software OpenMRS is used to document health care in Nigeria. The use of this software began in Kaduna, Nigeria to serve the purpose of public health. OpenMRS manages features such as alerting health care workers when patients show warning signs for conditions and records births and deaths daily, among other features. The success of this software is caused by its ease of use for those first being introduced to the technology, compared to more complex proprietary healthcare software available in first world countries. This software is community-developed and can be used freely by anyone, characteristic of open-source applications. So far, OpenMRS is being used in Rwanda, Mozambique, Haiti, India, China, and the Philippines. The impact of open source in healthcare is also observed by Apelon Inc, the "leading provider of terminology and data interoperability solutions". Recently, its Distributed Terminology System (Open DTS) began supporting the open-source MySQL database system. This essentially allows for open-source software to be used in healthcare, lessening the dependence on expensive proprietary healthcare software. Due to open-source software, the healthcare industry has available a free open-source solution to implement healthcare standards. Not only does open source benefit healthcare economically, but the lesser dependence on proprietary software allows for easier integration of various systems, regardless of the developer.

Companies

Microsoft — Before summer of 2008, Microsoft has generally been known as an enemy of the open-source community. The company's anti-open-source sentiment was enforced by former CEO Steve Ballmer, who referred to Linux, a widely used open-source software, as a "malignant cancer". Microsoft also threatened Linux that they would charge royalties for violating 235 of their patents. In 2004, Microsoft lost a European Union court case, and lost the appeal in 2007, and their further appeal in 2012: being convicted of abusing its dominant position. Specifically they had withheld inter-operability information with the open source Samba (software) project, which can be run on many platforms and aims to "removing barriers to interoperability". In 2008, however, Sam Ramji, the then head of open-source-software strategy in Microsoft, began working closely with Bill Gates to develop a pro-open-source attitude within the software industry as well as Microsoft itself. Ramji, before leaving the company in 2009, built Microsoft's familiarity and involvement with open source, which is evident in Microsoft's contributions of open-source code to Windows Azure, "its new-age web service for building and hosting applications on the net", among other projects. These contributions would have been previously unimaginable by Microsoft. Microsoft's change in attitude about open source and efforts to build a stronger open-source community is evidence of the growing adoption and adaption of open source.

Open-source software

From Wikipedia, the free encyclopedia

A screenshot of Linux Mint running the Xfce desktop environment, Mozilla Firefox browsing Wikipedia powered by MediaWiki, a calculator program, the built-in calendar, Vim, GIMP, and the VLC media player, all of which are open-source software.

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 use, study, change, and distribute the software to anyone and for any purpose. Open-source software may be developed in a collaborative public manner. Open-source software is a prominent example of open collaboration.

Open-source software development can bring in diverse perspectives beyond those of a single company. A 2008 report by the Standish Group stated that adoption of open-source software models has resulted in savings of about $60 billion (£48 billion) per year for 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.[17] 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 logo of the Open Source Initiative

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, OpenSUSE 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.


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 the 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. 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 may 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 source-code-hosting facilities such as Launchpad.

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

Companies whose business center on the development of open-source software employ a variety of business models to solve the challenge of how to make money providing software that is by definition licensed free of charge. Each of these business strategies rests on the premise that users of open-source technologies are willing to purchase additional software features under proprietary licenses, or purchase other services or elements of value that complement the open-source software that is core to the business. This additional value can be, but not limited to, enterprise-grade features and up-time guarantees (often via a service-level agreement) to satisfy business or compliance requirements, performance and efficiency gains by features not yet available in the open source version, legal protection (e.g., indemnification from copyright or patent infringement), or professional support/training/consulting that are typical of proprietary software applications.

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:
  1. lower cost
  2. security
  3. no vendor 'lock in'
  4. better quality
Since 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 programming Open Source software or installing Open Source software. 

Notable software packages, previously proprietary, which have been open sourced include:
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

"We migrated key functions from Windows to Linux because we needed an operating system that was stable and reliable – one that would give us in-house control. So if we needed to patch, adjust, or adapt, we could."
Official statement of the United Space Alliance, which manages the computer systems for the International Space Station (ISS), regarding why they chose to switch from Windows to Debian GNU/Linux on the ISS

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 that 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.

Social privilege

From Wikipedia, the free encyclopedia https://en.wikipedi...