Thondom Raughts: Making money with Free Software
The strategies mentioned above are only some of the popular methods in use. There are other ways in which companies generate revenue from the Free Software market and different strategies are still being tried out. It is a fast evolving market and only time will tell as to what is the limit of possibility in this domain. But one thing is sure, there is money in Free Software and there is quite a lot of it. It might be worthwhile to remember that one of the recent Free Software company acquisitions, that of MySQL by Sun Microsystems touched a billion dollars.
The cost of Free Software Development
Whether you are developing Free Software or proprietary software you have to invest time and effort in planning, designing, implementing, testing, fixing, updating and maintaining software. Each of these activities require some investment of time and effort towards it and time and effort equals money and this monetary value constitutes the cost of development of the software. Proprietary software companies recover this cost when they sell their software to their users. Now the cost of development of a software is always a finite amount and mostly calculable. So ideally the price of proprietary software has to fall with every sale as a part of the cost is being recovered with every sale. But this does not happen and the users keep on paying at a constant rate for this diminishing cost for ever which might sound a bit unfair for the user. Free Software business models makes a different and more fair pricing structure available for the users.
As mentioned earlier the Free Software price war would normally bring the price of the software to zero even before the cost of the software development is recovered by the company/developer. So obviously there must be some other way of covering the development costs and Free Software development models have found probably the ideal one. When a developer or a company releases a software as Free Software he/she/the-company is effectively inviting the large user/developer community out there to use the application, test the application, fix the issues with the application, and modify the application. This is totally different from the captive development paradigm used in proprietary software development. In this system a percentage of the cost of the software development, be it testing or bug fixing or new development, is being borne by the community in return for the right to use the software which they get when the software is released as Free Software. However the company/developer will still have to incur some costs in the process of software development, especially during the early stages and even through out the product life-cycle. The company or the developer would then have to recover whatever additional costs and their operational margins through one of the business models discussed earlier.
If this can be extended in an ideal system the complete cost of development will be borne by the community and the need of a company can be eliminated completely. Something similar is indeed happening with Free Software applications maintained and developed by communities. A good example would be the Drupal CMS mentioned earlier. However we do not live in an ideal system and a company with vested monetary interests can still drive Free Software development far more aggressive and normally better than typical community based Free Software development.
Technical Advantages of Free Software
When people write software, be it proprietary software or Free Software, they WILL introduce errors and bugs. It is because, well because they are human and humans make mistakes. Free Software development normally works through the contributions of users who are developers themselves. As opposed to this proprietary software development is and will always be done with a limited number of developers. During Free Software development there are too many eyes looking at a given piece of source code during a given period of time to let mistakes to pass through easily and this works much better than in proprietary software development, where there are far fewer people looking at a given piece of code. Supposedly the source code for the Linux Kernel is the most read piece of software source in the history of software development, the numbers running into millions. As opposed to this the leading proprietary operating system development team would be perhaps 10000-15000 strong and the kernel team would be far smaller.
So the first technical advantage of Free Software is its resilience to mistakes. It is not that Free Software does not have errors or bugs, but that they get mopped up pretty fast. Here is the second technical advantage of Free Software – the short life cycle of an error. Even when a proprietary software development team identifies an error they might not want to publicize the error unless the errors result in security issues. These would then normally be taken care of in the next update cycle. As opposed to this in Free Software development, if and when a capable developer comes across a problem it wouldn’t take much time before the problem gets fixed in the repository. Now this fix would then be available to users who would like to get it fixed. Again the contrast increases if the errors where noticed by a normal user. For a proprietary software the error will have to go through the proper support cycle before it can reach the developer who might then just schedule the fix for the next update. This would happen only if the user decides to pay for support and report the error. In the case of Free Software all it would need for the error to get fixed would be for one of the many users to just let the community know that the error exists and someone in the community would take care of the issue just like in the first case mentioned above.
Economical Advantages of Free Software
The main economic advantage of Free Software is that it reduces or in fact takes out the financial entry barrier for the use of software. Software is only a tool for processing information. So taking out this barrier allows people from all sections of the society to take advantage of the power of Information Technology to advance their lives. It also opens up opportunities for entrepreneurs to set up shops with very little initial investments. This advantage of low initial investment does not have to apply to small entrepreneurs alone. It applies to enterprises of any size and of both public and private nature.
To really understand the importance of the economic advantage mentioned above we just have to calculate the cost of computerizing an entire country like India, computerizing as in – getting computers with required software to all the people and all government departments and agencies, and compare the costs of this process based on proprietary software versus that based on Free Software. The differences would be massive and such huge amounts of public money can always be put to other developmental activities if it can be spared.
As explained earlier proprietary software makes constant recovery of a diminishing cost. What this does is that wealth get accumulated at distinct points in the society without proper dissipation of labor or generation of value. There is nothing unfair about this as the transactions are purely voluntary. However concentration of wealth with few individuals or enterprises is never good for the society and it does not have to promote such systems. It is not that it has to fight such systems, or make it difficult for such systems to survive, but just that it does not have to spend public money in promoting such systems. So when government establishments invest in Free Software they effectively ebb the concentration of funds via the proprietary software channel.
The Free Software perspective towards Software Development
Unlike proprietary software development where information is withheld by the developing company from its users and subsequent developers Free Software is all about Free and Open information. This applies not just to Free Software but to Free and Open Technologies as well. With so much free-of-cost information out there it becomes less lucrative for book publishers, authors, training institutions to create content and offer training for Free Software and Free and Open Technologies. This in turn brings in the necessity for Free Software developers to do a lot of learning on their own and with assistance from the community. In addition, Free Software makes available billions of lines of code for the developer to see and learn. By learning directly from the work of the masters, the Free Software developers have an opportunity to become masters themselves. Add to this the fact that the Free Software community is a community based on meritocratic principles, there is a big peer pressure to learn, but there will always be people out there who will be able to guide new developers through this path.
Such a system creates developers who are self-sufficient – because they have to learn to do a lot of things on their own, competent – because they have to compete with other capable developers in the community and get peer reviewed on their code quality on a regular basis, ready & capable of learning – because they have to learn a lot of things on their own and they have to be efficient in doing it to be able to make use of their learning, with lot of initiative – because you have to be self-motivated and have lot of initiative to contribute to projects where you may not have any financial incentive. The proof that this is happening is that Free Software developers are in hot demand in big product companies like Google, Adobe, Yahoo etc and they get hired not because of their college background or because of their academic projects but by virtue of their profile in the Free Software community.
In addition to creating world class quality developers Free Software promotes an attitude of sharing of knowledge and a passion to contribute towards projects that benefit the public at large. Such an attitude enriches the society that he/she is part of. Additionally the level of development that we see around us would not have been possible if our forefathers had kept information to themselves instead of sharing it like they did. Human society has come this far only because people have shared common information, passed on knowledge to generations and collaborated on socially beneficial activities. So the basic attitude promoted by Free Software strengthens one of the core values based on which our society has grown to the present state.
Free Software and Career Opportunities
There are hundreds of Free Software companies out there looking for capable talent. These companies scout the market specifically for people who have strong profiles in the Free Software community. In addition there are even more non-Free-Software companies out there who are eagerly looking to hire capable Free Software developers because of their capabilities. Like explained earlier the Free Software perspective to software development that the developer acquires through participation in Free Software projects increases the market value for such developers. So just by being a Free Software developer, one can increase the prospects of getting better jobs than the competition. This implies that, even if the developer does not get a Free Software job per se, Free Software effectively increases the marketability of the developers and also their market value. If however they get a job in one of the Free Software companies out there, eg: RedHat, Sun etc, it could be considered a bonus in the above scenario. In either case the Free Software exposure adds an edge to the developers in their careers.
In addition to full fledged careers there are lots of bounty programs that invite people to come together for Free Software projects and contribute to the development and at the same time get paid for it. One of the most popular of these has been the Google Summer of Code project that invites students to take up Free Software projects mentored by the different organizations that Google has partnered with for this program. Through such programs people get a chance to get a feel of Free Software development and the pleasure of getting involved. These kind of involvements usually help the students/developers in their careers as the eligibility criteria for such projects are proof enough of their capabilities and such experiences are valued highly in the job market.
Free Software from the perspective of developing countries
For a developing country like India, one of the main attractions towards Free Software is of course the low initial investment. Software for a complete department or an organization can virtually be procured free of cost if it is Free Software. Yes there would be costs down the line for customizing, maintaining and supporting the software but the low initial investment part is always going to be an advantage for developing countries.
In addition to the cost factor there is another major attraction for Free Software. Once the software is procured by a department or an organization they will have to get somebody to customize and maintain the software for them. Who else could do this better than a local company. So such a system creates opportunities for local business to thrive and generate revenue out of Free Software. This becomes especially more relevant when the alternative proprietary software are developed by companies outside of the developing country. So paying for Free Software in such contexts will ensure that valuable capital in the developing country remains within the country to power the growth of technology inside the country instead of being pumped out of the country for the purchase of proprietary software.
Challenges for Free Software into the future
There is little or no organization between the different Free Software communities out there. For regular Free Software development this is not really a requirement. In this age of heavy government level lobbying, Free Software stands to lose in front of corporate interests of proprietary software lobbyists, unless the spread-out communities rally and voice their opinions. Free Software Foundation and associated organizations are doing a good job with this but there still requires national level community initiatives to prevent restrictive policies becoming laws.
It is true that Free Software communities breed geniuses but that is not really a requirement to be a part of the community, either as a developer or as a user. GNU/Linux distributions like Ubuntu has done quite a lot in this direction by mellowing the only-for-geeks image of GNU/Linux. This policy has to diffuse into the communities also to make them more newbie friendly and more welcoming for new users.
More generic training and support related enterprises should pop up before Free Software applications can be widely embraced by the general public. Without proper support and training infrastructure it will never become an attractive proposition for governments or private sector establishments to move to Free Software.
Conclusion
Free Software community has been slowly tackling each of the above challenges and many other problems one by one and has been gradually making inroads into the global software market over the 25 years the concept has been alive for. The progress has been pretty rapid over the last five years and at this rate it is going to redefine the way people and companies think about and develop software. Additionally the concepts behind Free Software has been translated to other domains and it has been gaining acceptance among non technical communities as well. A good example is the explosion of Creative Commons licensed artistic and creative content that is being made available online. If the trend continues it will not be long before the future arrives and Free Software becomes the norm. Let us wait and watch.
Edit:
Added a new section on history of free software. Thanks Ashik S. [09/03/05]
Added info about GSOC. Thanks Praveen Arimbrathodiyil [09/03/05]
Updated the history section with suggestions from Askhik again. [09/03/07]
Similar articles
- Making money with free software
It may alternately be called “freeware” or “free software,” but it can still make a business profitable. A case in point is nine-year-old Cygnus Solutions, tagged last year as a hot candidate for an initial public stock offering. But freeware pioneer Richard Stallman contends that Cygnus’s moneymaking strategy violates the spirit on which free software
... - Making Money from Free Software
Making Money from Free Software ( Page 1 of 2 ) Opinion: Yes, you really can make money from “free” software; you just need to have a good business plan.The last time around, I talked about how you could go broke from working on free software. Some people thought I was preaching doom
... - Jobs to iPhone developers: Let’s make lots of money
“Stop me if you’ve already seen this,” cracked Apple (NASDAQ:AAPL) CEO Steve Jobs as he introduced the new iPhone 4 during his keynote appearance Monday at the company’s annual Worldwide Developers Conference. Jobs’ joke was a direct reference to the lost iPhone prototype infamously purchased and publicized by technology website Gizmodo, of course, but
... - 5 careers: Big demand, big pay
NEW YORK (CNNMoney.com) Recent surveys show that a lot of people are itching to find new jobs and human resource managers are expecting a lot of movement – both signs that employers may need to sweeten the pot. There also have been predictions that the labor market may start to tilt in favor of job
... - Why Making Money from Free Software Matters
1 2 next  ï Why Making Money from Free Software Matters by Glyn Moody Free software began as a political movement: its central aim was – and remains – the propagation of freedom. Later, it became a development methodology too, largely at the hands of Linus, whose geographical isolation
...