Difference between revisions of "Free and open-source software"

From AdCiv
Jump to: navigation, search
(Software links)
(Organisations)
Line 35: Line 35:
  
 
=== Organisations ===
 
=== Organisations ===
*http://www.fsf.org/ Free software foundation (FSF) website
+
*[http://www.fsf.org/ Free software foundation] (FSF) website
*http://www.gnu.org/philosophy/free-sw.html FSF Free software definition
+
*[http://www.opensource.org/OSI Open Source Initiative] (OSI) website
*http://www.opensource.org/OSI Open Source Initiative (OSI) website
+
 
*http://opensource.org/docs/definition.php OSI Open source definition
+
=== Documents and articles ===
 +
*[http://www.gnu.org/philosophy/free-sw.html FSF Free software definition]
 +
*[http://opensource.org/docs/definition.php OSI Open source definition]
 +
*[http://catb.org/~esr/writings/cathedral-bazaar/cathedral-bazaar The Cathedral and the Bazaar] - an interesting essay on why the 'bazaar' model of open-source software development works well.
  
 
=== Software links ===
 
=== Software links ===

Revision as of 23:36, 23 December 2006

20px-Logo.png Main Page > Open collaborative design > Free and open-source software
Coloured GNU.png

Free and open-source software also known simply as Free software* or Open source software is a development model involving loose networks of people connected by the internet who collaborate to create and evolve software that is also made freely available for anyone to use. Not only is the end product available to all but the source code used to create it is can be freely viewed and modified as well. This is the code that commercial software firms normally keep secret.

Making source code available means anyone with the programming ability can customise the software for their own ends or contribute to the development project directly. Others can help by reporting bugs and helping with documentation or translation efforts. So this encouragement of interaction between users and developers, and user becoming developers, creates a positive feedback loop in the software's evolution. Open source is becoming a very prominent method of software production and poses a serious challenge to commercial products - as the quality of open-source software approaches and supercedes commercial software, how will software companies compete with free?

The word 'free' in the title isn't referring to the cost of the software, although it is usually that too, it means users have the freedom to use the software as they wish, modify it and redistribute it.

*Note: Free software is not the same as Freeware - the latter is not usually distributed with source code and the license may be restrictive.

What goes around comes around

If the software is useful to many people then there is a wide audience who can get involved. People are motivated to contribute because the result of their work benefits many people. Someone putting in effort on an open-source software project knows there are similar minded people putting in effort on other software projects that will be useful to them also. So what goes around comes around.

Maximum utility

The fact that thousands of other people are able to make use of the software having put in no effort themselves and haven't paid any money simply isn't an issue - after all it effectively costs nothing to replicate the software and the open-source developers are only too happy that it is proving useful to a wider audience. It is truly maximizing it's utility.

Commercial software that has restrictions on what you can do with it, such as not giving a copy to your friend, imposes an artificial scarcity on it in order that they can charge money for it. In the world of bits and the internet this commercial model doesn't make much sense and starts to break down.

Because of the mutual benefits, open source projects encourage collaboration on an almost unheard of scale, as well as promoting rapid evolution and stability of the applications being developed (one might normally consider the last two properties as being mutually exclusive). There are now high quality open source projects filling every major category of software application, including entire operating systems for your computer.

Beyond software

This methodology is not limited to software. A noteable example beyond software is the 'open content' Wikipedia, the famous collaborative encyclopaedia which is accessible and editable by anyone with a web browser. It founder ambitiously states that he wants to capture the knowledge of all humanity. It was started in 2001 and is now the largest and most comprehensive encyclopaedia in the world grown organically by the contributions (and edits) of thousands of users, and the overall quality of articles on the whole is surprisingly good. See this article from the journal Nature.

With a few built-in mechanisms to make sure the project doesn't dissolve into total chaos, the result is that this pool of knowledge is assembled and edited by people who want to do it and is now an amazing resource for anyone wanting a basic introduction to almost any subject. No-one is paying them to do it and no-one is telling them to do it, they contribute because they want to. It feels like the right thing to do - they are contributing to something greater. Contributors' know their efforts will be used and appreciated by thousands of other people, and that others are doing likewise.

It is apparent that these methods could also be applied to the design of physical machines and artifacts. Designs, photos, instructions and CAD models would be stored on the internet for others to use and improve upon. This method is even more suited to this than to software design as from looking at an object, photo or CAD model it is usually apparent how it has been designed. See the section on open design.

See also

External links

Organisations

Documents and articles

Software links


  • The content management software that manages this website is open source and is called MediaWiki; and the server computer that hosts it is running a version of the Linux operating system called Debian which in turn is running the Apache http server program (which runs 60% of websites worldwide), and PHP and the MySQL database.