I have seen this model working with a very good success rate on content sites and project sites. On open source projects it's still not widely used, but those who use it, usually never touch "closed source" ideas again to fund their projects. If done right this can usually pay for every project cost, including the developers life budget eventually becoming their main source of money, however I would not count on it to be used to pay for Ferrari's.
[quote="Ashley":ab2y89ln]It's an interesting idea. It raises some questions in my mind though. How would we determine the "cost" of a feature like a Linux port? I guess we could estimate the hours work and the hourly wage, but what if we turn out to be way off the mark? Do we collect the total cost upfront or work as we get funds? What if we start work and donations dry up half way through, do we just give up on the work we've already done or what? What if we collect upfront but then run out of time because we're only spare-time developers and may have other commitments? Will we have angry users who donated but arent getting results as quickly as they wanted?
I can see things potentially getting ugly whichever way we organise this. It needs some careful thought. What do you think?[/quote:ab2y89ln]
It really needs some careful thought. Which is why I said that you should discuss with the community which side projects would be worth paying for. It's also a good a idea to try to increase your user base by being active within the internet and open source circles, promoting in a respectful way your project.
You should start with something small and increasing the budget and time of each chipin overtime as you get the feeling of how your user base is reacting to it. Not defining a $1 million chipin on the first try nor something smaller than $500. Also it's up to you to create a policy of refunding a % of each contributor if a ChipIn project goes wrong, this might ease the bad feeling generated by a failed project.
EDIT: The project is Open Source so you don't need to deliver every advanced feature in a month. I'll give the example of a Linux port, it surely requires a great deal of planning and features to be implemented, so the first chipin would cover a "0.1" version of it, with it's short term and long term roadmap explained. You can launch 0.1 version of the port and release it as the chipin is nearing it's completion or choose to keep the progress open for everyone to see and perhaps let them help with the coding. There are many ways to do it, so it's pretty much up to you to find the best one.