User:Pnm/Sandbox/Free software

From Wikipedia, the free encyclopedia
Jump to: navigation, search
Not to be confused with Freeware or Open-source software.
Systems like Debian are composed almost[1] entirely of free software. See also gNewSense for an Ubuntu-based distribution based entirely on Free Software.

Free software, software libre or libre software is software that can be used, studied, and modified without restriction, and which can be copied and redistributed in modified or unmodified form either without restriction, or with minimal restrictions only to ensure that further recipients can also do these things and that manufacturers of consumer-facing hardware allow user modifications to their hardware. Free software is generally available without charge, but can have a fee, such as in the form of charging for CDs or other distribution medium among other ways.

In practice, for software to be distributed as free software, the human-readable form of the program (the source code) must be made available to the recipient along with a notice granting the above permissions. Such a notice either is a free software license, or a notice that the source code is released into the public domain.

The free software movement was conceived in 1983 by Richard Stallman to satisfy the need for and to give the benefit of software freedom to computer users.[2] Stallman founded the Free Software Foundation in 1985 to provide the organizational structure to advance his Free Software ideas.

From 1998 onward, alternative terms for free software came into use. The most common are software libre, free and open source software (FOSS) and free, libre and open source software (FLOSS). The Software Freedom Law Center was founded in 2005 to protect and advance FLOSS.[3] The antonym of free software is proprietary software or non-free software. Commercial software may be either free software or proprietary software, contrary to a popular misconception that commercial software is a synonym for proprietary software. An example of commercial free software is GNAT.[4]

Free software, which may or may not be distributed free of charge, is distinct from freeware which, by definition, does not require payment for use. The authors or copyright holders of freeware may retain all rights to the software; it is not necessarily permissible to reverse engineer, modify, or redistribute freeware.[5][6]

Since free software may be freely redistributed it is generally available at little or no cost. Free software business models are usually based on adding value such as applications, support, training, customization, integration, or certification. At the same time, some business models which work with proprietary software are not compatible with free software, such as those that depend on the user to pay for a license in order to lawfully use the software product.

History[edit]

In the 1950s, 1960s, and 1970s, it was normal for computer users to have the software freedoms provided by free software. Software was commonly shared by individuals who used computers and by hardware manufacturers who welcomed the fact that people were making software that made their hardware useful. Organizations of users and suppliers, for example, SHARE, were formed to facilitate exchange of software. By the late 1960s, the picture changed: software costs were dramatically increasing, a growing software industry was competing with the hardware manufacturer's bundled software products (free in that the cost was included in the hardware cost), leased machines required software support while providing no revenue for software, and some customers able to better meet their own needs did not want the costs of "free" software bundled with hardware product costs. In United States vs. IBM, filed January 17, 1969, the government charged that bundled software was anticompetitive.[7] While some software might always be free, there would be a growing amount of software that was for sale only. In the 1970s and early 1980s, the software industry began using technical measures (such as only distributing binary copies of computer programs) to prevent computer users from being able to study and modify software. In 1980 copyright law was extended to computer programs.

In 1983, Richard Stallman, longtime member of the hacker community at the MIT Artificial Intelligence Laboratory, announced the GNU project, saying that he had become frustrated with the effects of the change in culture of the computer industry and its users. Software development for the GNU operating system began in January 1984, and the Free Software Foundation (FSF) was founded in October 1985. He developed a free software definition and the concept of "copyleft", designed to ensure software freedom for all.

The economic viability of free software has been recognized by large corporations such as IBM, Red Hat, and Sun Microsystems.[8][9][10][11][12] Many companies whose core business is not in the IT sector choose free software for their Internet information and sales sites, due to the lower initial capital investment and ability to freely customize the application packages. Also, some non-software industries are beginning to use techniques similar to those used in free software development for their research and development process; scientists, for example, are looking towards more open development processes, and hardware such as microchips are beginning to be developed with specifications released under copyleft licenses (see the OpenCores project, for instance). Creative Commons and the free culture movement have also been largely influenced by the free software movement.

Naming[edit]

The FSF recommends using the term "free software" rather than "open source software" because, they state in a paper on Free Software philosophy, the latter term and the associated marketing campaign focuses on the technical issues of software development, avoiding the issue of user freedoms.[13] "Libre" is often used to avoid the ambiguity of the word "free" in English language.

Definitions[edit]

The first formal definition of free software was published by FSF in February 1986.[14] That definition, written by Richard Stallman, is still maintained today and states that software is free software if people who receive a copy of the software have the following four freedoms:[15]

  • Freedom 0: The freedom to run the program for any purpose.
  • Freedom 1: The freedom to study how the program works, and change it to make it do what you wish.
  • Freedom 2: The freedom to redistribute copies so you can help your neighbor.
  • Freedom 3: The freedom to improve the program, and release your improvements (and modified versions in general) to the public, so that the whole community benefits.

Freedoms 1 and 3 require source code to be available because studying and modifying software without its source code is highly impractical. Note that the numbering begins with zero since many computer systems use zero-based numbering.

Thus, free software means that computer users have the freedom to cooperate with whom they choose, and to control the software they use. To summarize this into a remark distinguishing libre (freedom) software from gratis (zero price) software, the Free Software Foundation says: "Free software is a matter of liberty, not price. To understand the concept, you should think of 'free' as in 'free speech', not as in 'free beer'".[16]

In the late 1990s, other groups published their own definitions which describe an almost identical set of software. The most notable are Debian Free Software Guidelines published in 1997,[17] and the Open Source Definition, published in 1998.

Examples of free software[edit]

The Free Software Directory maintains a large database of free software packages. Some of the best-known examples include the Linux Kernel, the BSD and GNU/Linux operating systems, the GNU Compiler Collection and C library; the MySQL relational database; the Apache web server; and the Sendmail mail transport agent. Other influential examples include the emacs text editor; the GIMP raster drawing and image editor; the X Window System graphical-display system; the OpenOffice.org office suite; and the TeX and LaTeX typesetting systems.

Free software licenses[edit]

Main article: Free software license

Copyleft vs. non-copyleft licenses[edit]

Among free software licenses

Under a copyleft license, the author permits redistribution

Copyleft licenses, with the GNU General Public License being the most prominent. The author retains copyright and permits redistribution under the restriction that all such redistribution is licensed under the same license. Additions and modifications by others must also be licensed under the same "copyleft" license whenever they are distributed with part of the original licensed product. This is also known as a Viral license. Due to the restriction on distribution not everyone considers this type of license to be free.[18][19][20][21]


  • Permissive licenses, also called BSD-style because they are applied to much of the software distributed with the BSD operating systems. These licenses are also known as copyfree as they have no restrictions on distribution.[22] The author retains copyright solely to disclaim warranty and require proper attribution of modified works, and permits redistribution and any modification, even closed source ones.

All free software licenses must grant users all the freedoms discussed above. However, unless the applications' licenses are compatible, combining programs by mixing source code or directly linking binaries is problematic, because of license technicalities. Programs indirectly connected together may avoid this problem.

The majority of free software falls under a small set of licenses. The most popular of these licenses are:

The Free Software Foundation and the Open Source Initiative both publish lists of licenses that they find to comply with their own definitions of free software and open-source software respectively.

The FSF list is not prescriptive: free licenses can exist which the FSF has not heard about, or considered important enough to write about. So it's possible for a license to be free and not in the FSF list. The OSI list only lists licenses that have been submitted, considered and approved. All Open Source licenses must meet the Open Source Definition in order to be officially recognized as open source software. Free software on the other hand is a more informal classification that does not rely on official recognition. Nevertheless, software licensed under licenses that do not meet the Free Software Definition cannot rightly be considered free software.

Apart from these two organizations, the Debian project is seen by some to provide useful advice on whether particular licenses comply with their Debian Free Software Guidelines. Debian doesn't publish a list of approved licenses, so its judgments have to be tracked by checking what software they have allowed into their software archives. That is summarized at the Debian web site.[23]

It is rare that a license announced as being in-compliance with the FSF guidelines does not also meet the Open Source Definition, although the reverse is not necessarily true (for example, the NASA Open Source Agreement is an OSI-approved licenses, but non-free according to FSF)


The BSD-based operating systems, such as FreeBSD, OpenBSD, and NetBSD, do not have their own formal definitions of free software. Users of these systems generally find the same set of software to be acceptable, but sometimes see copyleft as restrictive. They generally advocate permissive free software licenses, which allow others to make software based on their source code, and then release the modified result as proprietary software. Their view is that this permissive approach is more free. The Kerberos, X.org, and Apache software licenses are substantially similar in intent and implementation. All of these software packages originated in academic institutions interested in wide technology transfer (University of California, MIT, and UIUC).



Different types of licenses[edit]

There are different categories of free software.

  • Public domain software – the copyright has expired, the work was not copyrighted, or the author has released the software onto the public domain (in countries where this is possible). Since public-domain software lacks copyright protection, it may be freely incorporated into any work, whether proprietary or free.

Security and reliability[edit]

There is debate over the security of free software in comparison to proprietary software, with a major issue being security through obscurity. A popular quantitative test in computer security is to use relative counting of known unpatched security flaws. Generally, users of this method advise avoiding products which lack fixes for known security flaws, at least until a fix is available.

Free software advocates say that this method is biased by counting more vulnerabilities for the free software, since its source code is accessible and its community is more forthcoming about what problems exist,[24] (This is called "Security Through Public Disclosure" by some) and proprietary software can have undisclosed flaws discoverable by or known to malicious users. As users can analyse and trace the source code, many more people with no commercial constraints can inspect the code and find bugs and loopholes than a corporation would find practicable. According to Richard Stallman, user access to the source code makes deploying free software with undesirable hidden spyware functionality far more difficult than for proprietary software.[25] As examples, he named two aspects of Windows XP that reveal information to Microsoft, which were discovered in spite of the estimated 50 million or more lines of Windows code having not been available to individual users for personal auditing.

Selling free software[edit]

Selling Software under the BSD license is permissible and commercial use of the project is part of the intent of the license.[26][27]

The Free Software Foundation encourages selling free software. Quote "Distributing free software is an opportunity to raise funds for development. Don't waste it!".[28] For example the GNU GPL which is the Free Software Foundation's license states that "[the user] may charge any price or no price for each copy that you convey, and you may offer support or warranty protection for a fee."[29]

It is a common misbelief however that consumers shouldn't or aren't allowed to redistribute GPLed software for profit, and some opposing parties state such notions. E.g. in 2001 Microsoft CEO Ballmer stated that quote "Open source is not available to commercial companies. The way the license is written, if you use any open-source software, you have to make the rest of your software open source. If the government wants to put something in the public domain, it should. Linux is not in the public domain. Linux is a cancer that attaches itself in an intellectual property sense to everything it touches. That's the way that the license works."[30] It should be noted that when you distribute the software you must provide the source code as well and must allow others to distribute it. This makes it hard to have a business based on selling software.

Commercial viability and adoption[edit]

Free software played a part in the development of the Internet, the World Wide Web and the infrastructure of dot-com companies.[31][32] Free software allows users to cooperate in enhancing and refining the programs they use; free software is a pure public good rather than a private good. Companies that contribute to free software can increase commercial innovation amidst the void of patent cross licensing lawsuits. (See mpeg2 patent holders.)

Under the free software business model, free software vendors may charge a fee for distribution and offer pay support and software customization services. Proprietary software uses a different business model, where a customer of the proprietary software pays a fee for a license to use the software. This license may grant the customer the ability to configure some or no parts of the software themselves. Often some level of support is included in the purchase of proprietary software, but additional support services (especially for enterprise applications) are usually available for an additional fee. Some proprietary software vendors will also customize software for a fee.[33]

Free software is generally available at no cost and can result in permanently lower costs compared to proprietary software. With free software, businesses can fit software to their specific needs by changing the software themselves or by hiring programmers to modify it for them. Free software often has no warranty, and more importantly, generally does not assign legal liability to anyone. However, warranties are permitted between any two parties upon the condition of the software and its usage. Such an agreement is made separately from the free software license.

A report by Standish Group estimates that adoption of free software has caused a drop in revenue to the proprietary software industry by about $60 billion per year.[34]

Controversies[edit]

Binary blobs[edit]

In 2006, OpenBSD started the first campaign against the use of binary blobs, in kernels. Blobs are usually freely distributable device drivers for hardware from vendors that do not reveal driver source code to users or developers. This restricts the users' freedom effectively to modify the software and distribute modified versions. Also, since the blobs are undocumented and may have bugs, they pose a security risk to any operating system whose kernel includes them. The proclaimed aim of the campaign against blobs is to collect hardware documentation that allows developers to write free software drivers for that hardware, ultimately enabling all free operating systems to become or remain blob-free.

The issue of binary blobs in the Linux kernel and other device drivers motivated some developers in Ireland to launch gNewSense, a GNU/Linux distribution with all the binary blobs removed. The project received support from the Free Software Foundation and stimulated the creation, headed by the Free Software Foundation Latin America, of the Linux-libre kernel.[35]

BitKeeper[edit]

Larry McVoy invited high-profile free software projects to use his proprietary distributed version control system, BitKeeper, free of charge, in order to attract paying users. In 2002, Linux coordinator Linus Torvalds decided to use BitKeeper to develop the Linux kernel, a free software project, claiming no free software alternative met his needs. This controversial decision drew criticism from several sources, including the Free Software Foundation's founder Richard Stallman.[36]

Following the apparent reverse engineering of BitKeeper's protocols, McVoy withdrew permission for gratis use by free software projects. Linus Torvalds quickly developed a free software replacement called Git, while fellow Linux kernel contributor Matt Mackall developed another free software replacement called Mercurial. The Linux kernel eventually settled on Git for its own development process, while some other free software projects have chosen Mercurial.

Patent deals[edit]

In November 2006, the Microsoft and Novell software corporations announced a controversial partnership involving, among other things, patent protection for some customers of Novell under certain conditions.[37]

See also[edit]

References[edit]

  1. ^ "Explaining Why We Don't Endorse Other Systems - GNU Project - Free Software Foundation". Gnu.org. Retrieved 2010-08-22. 
  2. ^ "GNU project Initial Announcement". 
  3. ^ "Software Freedom Law Center". 
  4. ^ "Service Directory — Free Software Foundation — working together for free software". Free Software Foundation. Retrieved 2010-07-06. "Founded in 1994, AdaCore is the leading provider of commercial software solutions for Ada, a state-of-the-art programming language designed for large, long-lived applications where safety, security, and reliability are critical. ... We believe [the GNU Project] will best benefit from an open, non- proprietary technology, thus we have made all our [AdaCore's] products free software by adopting the licensing policy of the Free Software Foundation. This means that all components of the GNAT technology, including the run-time, come with sources." 
  5. ^ Dixon, Rod (2004). Open Source Software Law. Artech House. p. 4. ISBN 9781580537193. Retrieved 2009-03-16. "On the other hand, freeware does not require any payment from the licensee or end-user, but it is not precisely free software, despite the fact that to an end-user the software is acquired in what appears to be an identical manner. Freeware is provided to end-users at no cost, but free software provides more benefits than simply delivering a no-cost product--indeed, for the end-user, there may be circumstances where the monetary cost of acquiring free software exceeds the cost of freeware." 
  6. ^ Graham, Lawrence D. (1999). Legal battles that shaped the computer industry. Greenwood Publishing Group. p. 175. ISBN 9781567201789. Retrieved 2009-03-16. "Freeware, however, is generally only free in terms of price; the author typically retains all other rights, including the rights to copy, distribute, and make derivative works from the software." 
  7. ^ Fisher, Franklin M.; McKie, James W.; Mancke, Richard B. (1983). IBM and the U.S. Data Processing Industry: An Economic History. Praeger. ISBN 0-03-063059-2. 
  8. ^ "IBM launches biggest Linux lineup ever". IBM. 1999-03-02. Archived from the original on 1999-11-10. 
  9. ^ Farrah Hamid (2006-05-24). "IBM invests in Brazil Linux Tech Center". LWN.net. 
  10. ^ "Interview: The Eclipse code donation". IBM. 2001-11-01. 
  11. ^ "Sun begins releasing Java under the GPL". Free Software Foundation. November 15, 2006. Retrieved 2007-09-23. "FSF president and founder Richard Stallman said, 'I think Sun has contributed more than any other company to the free software community in the form of software. It shows leadership. It's an example I hope others will follow.'" 
  12. ^ Rishab Aiyer Ghosh (November 20, 2006). "Study on the: Economic impact of open source software on innovation and the competitiveness of the Information and Communication Technologies (ICT) sector in the EU" (PDF). European Union. p. 51. Retrieved 2007-01-25. 
  13. ^ "Why "Open Source" misses the point of Free Software". "The philosophy of open source, with its purely practical values, impedes understanding of the deeper ideas of free software; it brings many people into our community, but does not teach them to defend it." 
  14. ^ "GNU's Bulletin, Volume 1 Number 1, page 8". 
  15. ^ "FSF: The four freedoms". Gnu.org. Retrieved 2010-08-22. 
  16. ^ Free Software Foundation. "The Free Software Definition". Retrieved 2007-04-22. 
  17. ^ Bruce Perens. "Debian's "Social Contract" with the Free Software Community". debian-announce mailing list. 
  18. ^ https://noordering.wordpress.com/2009/01/20/why-the-gpl-is-not-free/
  19. ^ http://opendevice.blogspot.com/2007/06/best-gnu-gpl-vs-bsd-comparison-ever.html
  20. ^ http://www.charvolant.org/~doug/gpl/html/index.html
  21. ^ http://blog.sunsetbrew.com/2010/02/gpl-is-not-open-source.html
  22. ^ Copyfree: Unfetter your ideas
  23. ^ "Debian -- License information". Retrieved 2008-01-08. 
  24. ^ "Firefox more secure than MSIE after all". News.com. 
  25. ^ "Transcript where Stallman explains about spyware". 
  26. ^ http://www.linfo.org/bsdlicense.html
  27. ^ http://www.freebsd.org/doc/en/articles/bsdl-gpl/article.html
  28. ^ Selling Free Software gnu.org
  29. ^ GNU General Public License, section 4. gnu.org
  30. ^ Ballmer calling open source a 'cancer', saying it's "not available to commercial companies" Chicago Sun-Times, 2001
  31. ^ Netcraft. "Web Server Usage Survey". 
  32. ^ The Apache Software Foundation. "Apache Strategy in the New Economy". 
  33. ^ Andy Dornan. "The Five Open Source Business Models". 
  34. ^ "Standish Newsroom - Open Source". Standishgroup.com. 2008-04-16. Retrieved 2010-08-22. 
  35. ^ GNU/Linux distributions we know of which consist entirely of free software, and whose main distribution sites distribute only free software.
  36. ^ "Richard Stallman thanking Larry McVoy for ending the gratis licenses for BitKeeper". NewsForge. 
  37. ^ "Ars Technica article on the Microsoft-Novell patent deal". 

Articles[edit]