The RISC OS Open bounty scheme allows the community to sponsor development of features and fixes in RISC OS.
It all starts with donations
People look through the list of open bounties and see if there is something they’d really like to see done there. If there is, they “vote” by making a non-refundable financial donation. Donations can be as large or small as the individual wants. Meanwhile, developers keep an eye on the list and see if there are open bounty items they would like to tackle. If a developer wants to claim an open bounty item, they get in contact with ROOL.
What happens when a bounty is claimed
Once ROOL and the developer or developers have got in touch, some kind of acceptance criteria will be needed so that people who have donated to the bounty, as well as ROOL, can be sure that the developer has completed the job properly. Although bounty descriptions contain a reasonable amount of information about what the bounty is for, it isn’t feasible to go into too much detail at such an early stage as there may be a requirement for significant technical investigation and this may be pointless should the community ultimately show no interest in the bounty at all. So – that’s all left until the bounty gets underway.
Information on progress may be given through the bounty description, forum posts, news items or Wiki pages.
What happens when the bounty is completed
When a developer or developers complete the task or tasks that make up a bounty item and previously agreed acceptance criteria have been met, the developer(s) will be paid the amount that the community donated to that bounty item.
What happens if a bounty is never claimed
It’s possible that a bounty might not get claimed within “a reasonable time” (the exact time may vary depending upon the nature of the task and the number of donations it has – or perhaps, has not! – attracted). Should ROOL decide that a bounty needs to be expired, we’ll close the item. If it had attracted any donations, they will get distributed evenly between all other open bounties.
How we select bounties
ROOL chooses bounties by talking to community members and amongst ourselves. There’s a whole section of the forum devoted to this process. Generally, we try to avoid bounties that seem to be too wide in scope or muddy; for example, rather than having a bounty that simply said someone should “improve the filesystem”, there would be a series of bounties addressing specific, well bounded areas within the filesystem that needed attention.
So far we’ve found several areas where tackling one piece of work requires prior completion of another, so in such cases we’ll tend to only open up the bounty for the first piece of work, but perhaps let people know in its description that it forms a prerequisite for future developments which the community might find more interesting in the long run. Sometimes it’s not so exciting laying foundations, but they still need to be laid!
Implementation conflict resolution
It’s conceivable that a bounty might be started by a developer/developers, only for ROOL and/or the developer(s) to later become aware that someone else was independently working on the same thing but wasn’t aware of the bounty item. In such cases all we can do is offer to mediate between the various parties to assign an appropriate proportion of the donated amount for the bounty and help merge the source they have produced.
Failure to deliver
If a developer fails to meet with the agreed acceptance criteria within some pre-agreed reasonable time, one of two things will happen: 1. ROOL will grant them an extension to try to finish their work or 2. ROOL will re-open the bounty to other developers. In the second case, it would be up to the developer to decide what they want to do with whatever development they had managed to complete.
Exceptions to the rule
There are a couple of bounties which don’t conform to the standard model outlined above. These are special cases where the money isn’t put in a pot to be paid out to a developer for delivering some software. These bounties are currently RISC OS Open administration and Development loan system. See the ‘description’ page for each of them for more information.
Why aren’t the targets and deadlines published?
RISC OS Open doesn’t set a target or a deadline for any given bounty. The amount raised is updated as soon as we receive a donation to that bounty so it’s up to anyone wanting to claim the bounty to decide what is a suitable amount to motivate them. It’s not for ROOL to decide how much people should be paid. As for the deadline, we take the pragmatic view that we will simply make a periodic review of how things are progressing and try to reach an amicable settlement with any developer if things are moving too slowly or in the wrong direction. Clearly, because we won’t actually pay any of the bounty until we deem it to have been completed to our satisfaction, we will try to review progress regularly to avoid developers pouring too much time into something that’s clearly not going to meet with our expectations!
I don’t use PayPal
If you would rather donate via cheque, please make cheques out to “RISC OS Open Ltd.” and post to:RISC OS Open Ltd.
22 Shelley Road
Please also email firstname.lastname@example.org to let us know of your donation, how much and what you want it put towards. It may take us a week or two from you posting the cheque to us updating the stuff on the bounties page (because we tend to defer manual admin tasks of that sort to weekends).