How do deal with disagreement about the deliverable:
This is an interesting one. I wanted to keep FOSSExperts simple. That is why the deliverable on the ALTER TABLE project is simple, committed to PostgreSQL Core.
That may not work in all circumstances. So I am considering one of two options. The first option is courtesy of Josh Berkus. The idea would be to have a board of people that determine whether or not the deliverable has been met. This has merit because you have a panel of experts that make the determination. It can make the review process painless but is also takes the power out of both the funders and developers.
The second one is to take a vote. It would work something like this.
- Developer states project is complete and demonstrates completeness based on the deliverable.
- Every person who funded the project votes on whether or not the project is complete.
- If 66% vote the project complete, developer gets their money.
- If less than 66% vote project incomplete, developer doesn't get their money.
There would have to be some caveats. First the funders need to be able to communicate with the developer because they may not have understood part of the spec. Further as we are working with Open Source, the end deliverable may have been changed based on the will of the community versus the developer (see the Hot Standby work with PostgreSQL).
The voting would also need to be limited to a period of time. I was thinking 14 days. The 66% would be tallied against those that voted in that 14 days.
I like this idea because it removes the third party and it stops a single funder from calling foul as they are part of a collective vote. What do you think?
Remember a lot of your questions can be answered in the FAQ as well.