Paid to write open source
I've recently been contacted about adding some features to an open source library I wrote about 5 years ago named DbDesign. It was pretty popular, I used to get emailed technical questions almost every day, but when I left IBM and changed email address that slowed down a lot, and now it's only every few months that someone has questions about it. I'm not even sure where you can download it anymore.
So I was pleasantly surprised when I was contacted by a potential client about paying me to add some features to it for them. The features are indeed advanced and I can see why they contacted me. Up until now, it's never brought me any monetary reward whatsoever, everyone used it for free and can do whatever they want with it. The client is willing to pay my regular rate, but asked if I was willing to do the work at a reduced cost if the enhancements I did would also be released open source. In other words, they pay me to write the code, but they don't retain ownership, instead it gets released for the benefit of everyone.
Now I'm all for benefiting everyone, but I don't want to get paid less obviously. That is unless somehow I can justify a benefit to me, but I'm not sure any of that original work has benefited me until now. The client isn't pushing hard for this and my initial reaction is a "No", I need to be paid as much as I can get. But then I also like the idea of everyone benefiting, and maybe it will help me more in the long run.
Mostly I'm just interested in hearing people's general thoughts on this. What would you do?
Update:
I've decided against taking a lesser fee for open sourcing it. I must stop being so generous, it's time to start exploiting my own work.
Posted March 23, 2005 7:30 PM

Comments
hmm - taking full whack always feels better - bank balance and paying bills wise.
But on the otherhand - lower rate but then open source could open up other avenues through the viral marketing.
Steve Castledine, March 23, 2005 8:46 PM
Even though I'd probably like to get my hands on the new version of DbDesign (used it a lot).
I'd still say - go for the money. You've seen so far how many contracts the 5 years of code/support has given you (1 potential).
An alternative would be (if possible) to make a project on openntf.org and ask the client to donate, and hope for others to donate as well.
Brian Jorgensen, March 23, 2005 9:04 PM
I don't think you should be the one to make the opensource contribution. You cost what you cost regardless of what happens to the IP, in fact, if the original work is GPL'ed, then any derived work will also be.
Don't compromise. They either want the work done or they don't.
Brendon Upson, March 23, 2005 11:14 PM
1. Are the new functions specific to the needs of the client or are they of value to others as well?
Yes, just specific to client: get paid as usual.
No, of value to others also: go to step 2
2. Can you afford to give?
Yes: opensource it
No: go to step 3
3. Is there a way to get additional payment from others?
(Would donations work for this app?)
Yes: opensource it or use whatever model would pay you
No: get paid as usual
And if the client pays and still wants it open source, damn, open source it!
Leonardo Burci, March 24, 2005 4:00 AM
Ewww -- there were GOTOs in that last post.
Stan Rogers, March 24, 2005 10:44 AM
I think the client is just looking for a way to pay you less. Why should they pay you less if it's open sourced? Because you are theoretically working for the world?
They could get the work for free if they were willing to wait until you get around to it. They would pay (by waiting) for your convenience. In that case, you get something: complete freedom from deadlines, and total control.
If they pay you less so that it's open sourced, what do you get? A thank you note from Richard Stallman? That would make it all worthwhile, wouldn't it?
And remember that you have a family, and that they have to live with your decision as well. In other words, it has to be worth it to your wife as well. What does she think?
Kevin Kelleher, March 24, 2005 1:12 PM
One thing that's clear from all of this: you should post DbDesign prominently on this site.
Ned Batchelder, March 24, 2005 6:10 PM
Get paid for the work. If they want the maintenance hassles involved with forking the code, they can keep it.
However, they should realize that open source is in their best interest. When I improve open source code, I try VERY aggresively to get it into the main stream. That way I have less to do to incorporate later versions.
John Smart, March 25, 2005 8:44 PM
I'd have to go with what seems to be the maajority opinion. Charge your regular amount. If they want to open source, fine, but they should pay what you are worth.
Ben Langhinrichs, March 27, 2005 4:48 PM
Offer to keep it exclusive for 6 months, then release it, and get the full rate.
BTW, I came across some of your DbDesign code in a customer's app in New Zealand recently. Found a bug in it, too. Want to pay me to fix it? ;-)
Bob Balaban, March 28, 2005 3:50 AM
While I'm not sure of what bug you found, I'm going to go ahead and pre-emptively say it's a feature.
Damien, March 28, 2005 3:14 PM
Post a comment