css.php

From CUNY Academic Commons

Contents

Background

Three acronyms,
OSS
(Open Source Software),
FSM
(Free Software Movement) and
FOSS
(Free Open Source Software), and the term “
software libre
,” have been used to describe the open source software movement, which is widely believed to have started in 1983 when Richard Stallman

Richard Stallman

founded the GNU Project and formulated and implemented his “GNU Public License” that defined the rights of users to review source code, make changes to it, and redistribute it, either in the original or modified versions, at no cost (von Krogh & von Hippel, 2003, p. 3). In 1985, Stallman created the
Free Software Foundation
, and he is still the acting president of this “copy-left” movement set up to protect the rights of software users. (Stallman, 1983, para. 1-4).

Roots of the Open Source Movement

But as von Krogh & von Hippel (2003) note, the OSS movement had earlier roots. The “communal hacker culture” of the 1960s and 1970s, especially prevalent around MIT and in ARPANET, was based on the free exchange of software. Stallman was a part of this culture, and when he saw proprietary software packages starting to be developed, he found it “morally” wrong (p. 4). The term he used was “software hoarding.” (Williams, 2002).

Open Access Initiative

Logo courtesy of OAI

In contrast to FSF, the
Open Source Initiative
(OSI) was founded in 1998, and differs from FSF in that it is less political and confrontational, and focuses instead on the superiority of open source software. (
History of the OSI
, para. 16-18). While the two groups have similar goals and work together on many projects, OSI focuses on the “practical benefits” of the various licensing agreements that have subsequently evolved (von Krogh & von Hippel, 2003, p. 4).
O’Reilly
(1999) notes how this has lead to many different offshoots, including some that might be “anathema” to members of FSF, such as the “gated open-source community” model, which licenses out software rights only to its large (paying) user base, and reaps benefits from it users’ modifications, documentation and defect resolution. Another model is to freely distribute source code, and allow modifications and redistribution for noncommercial use, but when used commercially, a different license is required. This is the model which Sun’s Java project follows (p. 36).

OSI’s Ten Criteria for Open Source

In its website, the OSI lists ten criteria which software must comply in order to be considered open source. These are:

  1. “Free Redistribution” – no restrictions on the sale or sharing can be stipulated in the license;
  2. “Source Code” – the source code must be included so that everyone can read and modify it;
  3. “Derived Works” – any modifications to the source code can be distributed under the same terms of the license;
  4. “Integrity of The Author’s Source Code” – a license may be constructed to restrict modifications only if it “allows the distribution of ‘patch files’ with the source code for the purpose of modifying the program at build time. The license must explicitly permit distribution of software built from modified source code.” Also, a license may require that the modified versions be named differently from the original;
  5. “No Discrimination Against Persons or Groups” – license cannot discriminate;
  6. “No Discrimination Against Fields of Endeavor” – license cannot restrict the use of the software to a certain field;
  7. “Distribution of License” – additional licenses are not necessary when the program is redistributed;
  8. “License Must Not Be Specific to a Product” – if the program is part of a larger distribution, the license should guarantee the right to extract and use as desired;
  9. “License Must Not Restrict Other Software” – license cannot “insist that all other programs distributed on the same medium must be open-source software”; and
  10. “License Must Be Technology-Neutral” – license cannot require that the software be used with a specific technology (The Open Source Definition, n.d., para. 1-10).

Open Source Development Model

Logo courtesy of LibrePlanet

As
O’Reilly
(1999) notes, giving programmers access to source code and the right to create derivations allows them “to help themselves, and encourages natural product evolution as well as preplanned product design.” He sees this methodology as clearly superior when creating customized software (p. 34). Coders are encouraged to look under the hood, find bugs and fix them. They are invited to add on to the code, create extensions or plug-ins, or take the code base and re-tool it into something new.

The Open Source Community

OSS is thoroughly dependent upon a development community. The “key determinants of a project’s success” is not the product itself, but rather the support of the user community. The project must attract a “passionate core of users” who are anxious to expand and extend it, and who are willing to devote their time and energy, often with little or no financial compensation. The “glue” that holds a development community together is cooperation rather than money (O’Reilly, 1999, p.36-37). 

References

Related Pages

  • Freedom in the Cloud – cited by Matt Gold in Why I Left Facebook, from his The Lapland Chronicles Blog.