Introduction to Open Source (Part 2)
In the first part of this article I have introduced the open source concept. In the second part, hereunder, we will further discuss the open source idea, its definitions and principals.
What is open source?
According to Free On-line Dictionary of Computing, open source is “A method and philosophy for software licensing and distribution designed to encourage use and improvement of software written by volunteers by ensuring that anyone can copy the source code and modify it freely.”
“The term “open source” is now more widely used than the earlier term “free software” (promoted by the Free Software Foundation) but has broadly the same meaning - free of distribution restrictions, not necessarily free of charge.”
Jargon File adds that Open Source is a “Term coined in March 1998 following the Mozilla release to describe software distributed in source under licenses guaranteeing anybody rights to freely use, modify, and redistribute, the code. The intent was to be able to sell the hackers’ ways of doing software to industry and the mainstream by avoid the negative connotations (to suits) of the term “free software”. For discussion of the follow on tactics and their consequences, see the Open Source Initiative (http://www.opensource.org) site.”
In other words, when a programmer starts an open source project, he publishes the source code for anyone to use and invites other programmers to collaborate with him in the development of the project. Volunteer programmers can then add, update or fix the code.
Users of an open source software may use, modify and redistribute the software and code freely as long as they comply with the license agreement. There are many types of open source licenses, of which the most common are: MPL (Mozilla Public License) and GNU GPL (General Public License). There are many more common and less common open source licenses, which are approved by Open source initiative (OSI). The full license list may be found here: http://www.opensource.org/licenses/
Why Open source?
On Open source initiative site the explanations is: “The basic idea behind open source is very simple: When programmers can read, redistribute, and modify the source code for a piece of software, the software evolves. People improve it, people adapt it, people fix bugs. And this can happen at a speed that, if one is used to the slow pace of conventional software development, seems astonishing.”
Open source initiative’s explanation may seem logical, but there is still the the big question of: how would you make a living when you are not only distributing your application free of charge (This is usually the case), but also the source code, which is the heart of the application?
Lets divide this question into two:
- How do you make a living from open source?, and
- What are the risks in distributing the source code?
Making a living from open source application is something that is still evolving, and I have encountered several business models related to open source applications. The three most common models are the service based model, the upgrade based model and sponsored based model.
The service based model depends on the fee the developer or distributor charges to install, maintain and upgrade the application. Many companies do not want to deal with every technical aspect of every software applications they use. As a matter of fact most companies, even large corporations, are outsourcing some or all of their IT (information technology) needs. By paying the service charge they are guaranteed to get all the bug fixes, security holes patches and upgrades for as long as they use the software. IBM, Redhat and many other IT enterprises involved in open source are applying this business model.
The upgrade based model is similar to above, but the main difference is that you can get the same software application free of charge as long as you install and maintain it yourself. Usually this mean that you will need to have some basic technological knowledge, and time to research forums and knowledge bases to solve technical issues. However, you have the choice to pay a monthly service charge to receive technical assistance directly from the software development company. Mandriva Linux for example offers such services which they call club membership.
Other flavors of the upgrade model is when you can get a better application for a fee, Limewire is one example, which offers a pro version which is faster and more advanced than the free version, which they call LimeWire Basic. Another example, is Codeweavers‘ Crossover professional solution, which is based on its open source freely distributed Wine, allowing Windows applications run on Linux machines.
The last popular business model depends on funds from either sponsors or user’s donation. In other words the developer is asking for your donation or sponsorship to allow them to continue development. The popular Firefox browser is sponsored by the Mozilla Foundation, a not-for-profit corporation, as well as, on donation from other sources (corporate and individual). Another example, OpenOffice.org is sponsored by Sun Microsystems and individual donations. Some smaller open source projects depends solely on donations.
In fact many open source developers are applying more than one business model. Other models exists and the growing popularity of open source development is likely to introduce new innovative business models.
What about the individual developers? How do they make a living?
Open source depends on the contribution of volunteer developers. These are programmers who contribute their code without asking for any return. This is one of the most intriguing phenomena of the open source movement. There are practically tens of thousands of programmers, all over the world, who voluntarily contribute to open source projects. How do you explain that? I have no clear answer, in fact, nobody does, but after five years of following the open source movement in general and some open source projects in particular, I think I can try and make some personal observations on the phenomena:
- There is certainly a lot of passion involved . People are paying a lot of money to create and maintain hobbies, so why not a hobby like programming, which requires only a computer and an Internet connection.
- People like to interact. We have recently seen the growing number of social interaction web sites. Open source is also some kind of a social interaction, just like Forums, New groups and projects like Digg.com, Del.icio.us and orkut.com.
- Many of the programmers who contribute to open source projects start when they are teenagers. It gives them an opportunity, people their age did not have in the past, to participate in the development of a software projects. It gives them satisfaction and experience which they could always present in their portfolio when applying to a job before or after college.
- Many developers, who started as teenagers or students, are now employed by large corporations and earn a 6-figure salary.
- Many programmers are from developing countries and the opportunity to introduce their talent plays an important role in their efforts.
To summarize this point. The volunteer programmers may not have a direct or immediate return for their efforts, but in the long run it pays off most of them.
Introduction to Open Source (Part 1)
Introduction to Open Source (Part 3)


































Post a Comment
You must be logged in to post a comment.