« Linux TV HOWTO | Main | Upgrading to 2.4.x kernel »
April 02, 2001
Open Source: Can It Work?
An exploration into the history of open source and ways to become a profitable open source developer.
ABSTRACT
Open source is software which is freely redistributable and can readily be evolved and modified to fit changing needs. The Free Software Foundation founded by Richard M. Stallman supported a great deal of open source development from the early 1980s. They successfully released Emacs and GCC (Gnu C Compiler) which form the core for all unix programmers. Excluding the actual presence of the source code, the software license is the most important part of open source software. There are many such licenses available and in use. Although open source does not recommend any specific license, FSF's GPL (Gnu Public License) is the most popular and widely used.
GPL is not the end to all means. Many programmers in the open source economy have opted for creating their own software license which essentially follow the GPL but have some ideological independence.
For Open Source to succeed it has to stand the test of time. When we look at Linux, fetchmail and other examples of open source we see success stories but at the same time looking at dwindling interest in corporate entities to participate in Linux development is clearly alarming.
Background
Historically, the most active and best-organized movement against software which limited the rights of the user, was led by the Free Software Foundation founded by Richard M. Stallman (RMS). It not only educated users on the modification rights they should have once they bought software for use, they actively promoted development of open-source software that would follow these principles. Best known among these software would be Emacs, a popular editor and GCC, the C compiler distributed in most unix distributions.
The core of any such distribution mechanism is the license agreement that is provided to the end user by the software developer. The GNU Public License or GPL (FSF’s license) is the most popular open source license that is widely used today. Unfortunately, while the FSF was a strong proponent of open source, it ended up wrongly informing people that essentially they were promoting "free software".
Open source has always been a popular hacker culture. Mostly, it is a gesture of good will among competent programmers who share knowledge at the technical level. The development of Linux by Linus Torvalds, a Finnish student, with the help of millions of Internet programmers paved the strongest known foundation for the success of open source. Not only has it become an icon among the hacker groups, it serves as a reminder to corporate entities that sharing source code does not equate to loss of market share.
More recently the announcement by Netscape to release the source code for their browser and form the Mozilla group was yet another indication that open source was beginning to get acceptance from a wider group especially from the commercial world.
Mozilla was the litmus test for the success of open source in the commercial world. But it failed to deliver. There were good reasons for its failure, primarily the non functional and unstable code provided by Netscape, but most importantly, it should not be mistaken as a failure of open source.
There are examples of open source companies like Redhat, SuSE, Cygnus, Corel etc. which truly represent the potential of open source in the commercial world.
Going open source for the right reasons
The biggest myth of the programming world about open source is the fictitious idea that open source development is all about doing charity work! Many imagine open source developers to be unemployed individuals or teenage hackers whose sole purpose is to gain a cult popularity. Fortunately, open source is a very mature idea and is populated with professionals engaged in various fields of business or even in the open source industry.
The biggest source of concern from commercial developers is the lack of protection provided by open source to Intellectual Property (IP) present in the source code. This is a serious issue which cannot be easily tackled without giving additional thought to the nature of IP. But products which do not directly benefit from IP would seem to take away the right of a user to learn from the source code of a program. It is unlikely that most end users would bother to look at the source code, in which case the developer may consider the situation similar to simply selling a product. In the hands of a creative programmer, the source code could provide the foundation for developing a new technology that could later benefit the original developer. For example, a 3d Quake like game engine could be highly modified by an open source developer to allow outdoor space environments. This engine could then be used by the original developer and used for developing a radically new game with more advanced technology.
For the independent programmer it provides an excellent medium to release creative ideas without making the user pay an unnecessary price. There is always support and help available from the open source community whenever there is work needed to be done to improve any software.
The greater interaction between the customer and developer, a better knowledge of the market and popular support for the product are also good reasons why one should choose the open source path.
The price of free software
With all the talk about open source and the word ‘free’ bandied around a million times one would have to be forgiven if they believed that open source meant software that one could freely use without paying the developer. The first myth that exists in the open source industry is the singular presence of the GPL license which represents the ideologies of the open source developers. While it does a good job of it most of the times, it is not the end to all means.
The most important aspect of open source is the ability to freely modify source code and redistribute provided proper credit is given to the user. The analogy to this idea that is provided often is that of purchasing a car and tinkering with the engine or other car parts. Imagine how one would feel if he/she were not allowed to modify any part of the car as it was not part of the car purchase deal! It would sound illogical.
To provide an example of alternate license, consider Larry Wall’s Perl language, a highly popular internet scripting language. The Perl license allows the author to distribute a free for all version which contains all the features. Additionally, users are encouraged to purchase components that enhance or extend the functionality of Perl. It should be noted that the free version is not crippled in any manner.
Alternate licenses that provide the developer ideological independence from the GPL while keeping the essential features of open source intact. But why go to other licenses when even the GPL says that there is a price for free software, but not for freedom of modification! To quote the GPL preamble
When we speak of free software, we are referring to freedom, not price. Our General Public Licenses are designed to make sure that you have the freedom to distribute copies of free software (and charge for this service if you wish), that you receive source code or can get it if you want it, that you can change the software or use pieces of it in new free programs; and that you know you can do these things.
Profit Motive
There are a good many ways to profit from open source. It is important to keep in mind that products sell for their functionality and not for their price tag.
The simplest way is to charge users for distributing the open source software in some medium (CD/Disk/electronic). Care should be taken that the license properly states the rights of the user and source code should be available for download for modification.
Boxed packages are any advertisers delight. The rules of marketing remain the same and the best marketing stunts get the most attention. A carefully packaged open source software alongwith manual can sell easily.
Since many open source evangelists see the software market as a service oriented rather than a product oriented market, charging for technical support, help and other online facilities can be effective ways to generate revenues by providing "service" for the freely distributed software.
The Perl license shows an example of providing additional components and addons at a price to the user. Similarly, a source code manual or API manual could be sources of income from developers who would like to modify the source code.
Another popular technique resorted to by many products is the inclusion of advertisements inside the products which generally tend to irritate the user but are positively taken by users since they get to use a free product.
The advent of focussed software development or scientific software development has opened up avenues for acquiring sponsorship for the development and open source use of the software which can benefit the community.
These are only a few of the ways that one can realize profit from open source. The rules of normal commercial marketing still apply and will probably decide how much revenue one can obtain from a product.
Conclusion
Open source is not the modern communist agenda for removing profitability from the face of software development. Sharing source code does not equate to giving away software for free. There is a good prospect for profiting from open source provided that people realize the actual rules that bind open source.
Posted by amitc at April 2, 2001 10:00 AM