Pages

Saturday, March 20, 2010

The power of open source software

Open Source Software(OSS) is a software for which the source-code is issued under a license which permits it's users to use, change, and improve the software, and to redistribute it in modified or unmodified forms. Most popular of such licenses is the GNU General Public License. Under the terms of the GPL, any person may obtain and change the code covered under the license, but must make those changes available at no charge to the world.

Open Source started out as a challenge to the monopoly of vendors of proprietary software. The movement started with GNU (which is, Gnu is Not Unix). In earlier days, UNIX was perhaps the most well known operating systems of the 70's in both academic and commercial circles. But given it's exorbitant price, very few institutions could afford it. Then, Linus Torvalds developed the Linux kernel, intending it to be a UNIX-like system, but without a price-tag. He made his system available for free to anyone who wants to use or develop it.

Since then, groups such as the Free Software Foundation have come up, and make software available to users for free. There is no single expert body looking after such software, but a whole community of every-day users who fix bugs and make their findings available to the entire community of open-source users .

For those new to the idea of open source or unfamiliar with the way software gets developed, here's how it works most of the time:

  • One or more developers--meaning people who have the skills to create software--get an idea about creating software to solve a problem.

  • The developers start writing code to create a solution. This is frequently called "scratching an itch."

  • The developers put this code where other developers can find out about it, download it, and play with it. There are many locations, such as SourceForge.com, where people post their projects.

  • Usually the source code is published under one of several popular open source licenses that ensure that the source code and any derivative works remain open source.

  • Through an informal process of sharing ideas, fiddling with each others' code, and trial and error, the software gets better and better, sometimes changing direction to solve new problems as new people discover the software.

  • At some point, the software gets finished or doesn't. It becomes popular, stays obscure, or fades away. Programs like Linux and Apache have had thousands of contributors. Other projects have been created by one or two people.

  • As time goes on, developers come and go, and projects become active or dormant.

A huge amount of amazing software has been created through this loose process. All developers may not be experts- most are amateurs, but as the open source adage goes, "given enough eyeballs, all bugs are shallow" .

No comments:

Post a Comment