Getting Paid For Free Software
I wrote this back in 2004 while living in Australia. It was published in CNet's Builder AU. Though my views have changed a bit on several of the points I made herein, and I also now dislike some of the arguments I made from a quality standpoint, I do think my underlying point was valid.
In the war of words between open source advocates and opponents, a common refrain can often be heard from the opposition: "Open Source is not sustainable, because you cannot expect people to work for free forever."
Though their argument is not always applicable, they do have a point. Expecting an entire industry to grow and flourish based almost entirely upon donated time is a bit Communist in its expectation of altruism. In a recent talk called "The Open Source Triple Play" given by Michael Tiemann, Vice President of Open Source Affairs at Red Hat, Inc., it is pointed out that more than 90% of open source developers are employed as proprietary software programmers. This tells us that for most, including myself, writing open source software is done "after hours" in a hobby environment.
Read: It's like we're holding down two jobs.
Of course, that assumes the developers put equal time into both activities, which is unlikely. In the event of any sort of financial or familial disaster, which activity do you think would be the first to be removed from the developer's schedule? Obviously the hobby would.
I'm sure this will raise the ire of many a reader, who will point to successful open source companies and projects like Linux that are huge but were done in that same free time, but such an irate reader will be missing the bigger point I'm making. We all know that hobbyists can create amazing software. We know that because it's been done. What we should be striving for, though, is a software development environment in which those same developers can do exactly what they love, with exactly the same quality, and not have to hold down another job as well.
Is there anybody out there, FOSS devotee or otherwise, who honestly believes that if these developers could focus more of their time on their open source projects that the world would be worse off?
Hear me loud and clear: OPEN SOURCE DEVELOPERS DESERVE TO BE PAID. Cash money. In our pocket. Today. Yesterday! Even in a Socialist system, the individual is expected to be able to survive as a result of their contributed work. What sort of system are we building here? A development environment where writing software is like playing Dungeons & Dragons (that is, done mainly by "academic individualists" late at night for fun and no pay)? It's anti-economic intellectual onanism at best, and at worst, a system that makes the most inspired contributors suffer at the hands of Capitalist "daytime owners".
It's all quite tricky in the current environment, in which open source projects are started as grassroots efforts, usually completely unfunded, and perhaps even misguided. Where is the money to pay developers supposed to come from? What happens when the project dies?
I have a proposal. It can be done with existing technology, requiring only a bit more software development to build the infrastructure, and perhaps some legal personnel to make sure everything is fair. I call it "Pay Per Useful Contribution".
The specifics could be determined on a project-by-project basis, but the general idea is that any developer can contribute to any project, just like today, but projects would offer a payment mechanism based on some metric, such as "Number of Source Files Contributed" or "Number of Lines of Code Contributed". This metric value would be applied to a multiplier, and a contributor's score would directly determine his or her payment. Payments would be generated from either a pre-existing pool of cash (if available) or as proportionate percentages of income from eventual sales of the product.
For example: "UltraSoft's BigEngine Project" pays on a per-line basis. Bob Olsen contributes 1000 lines of code to the project, and Kelly Jones contributes 500 lines of code. 200 of Kelly's 500 lines, though, replaced some of Bob's, and this was appro ved by all parties. In the end, Bob has 800 Line Credits, and Kelly has 500. This means the total Line Credits are 1300, of which Bob has 61.5%, and of which Kelly has 38.5%. When the product ships, it has $10,000 of sales in the first week. Assuming there were no other developers involved, Bob would take home $6150, and Kelly $3850.
If you create value, you should be paid based on how much value you create.
Of course I've simplified the idea for this article, but it's only meant to be food for thought. Developers in the open source community need something like this. Desperately. It would not only encourage more contributions to open source projects, but would tend to encourage customer relationships (to increase income) and many of the other benefits of Capitalism.
And of course, it would let us stop holding down two jobs. Then we'd have more time for…Dungeons & Dragons???



