All,
While in the early days of openHAB every user was also a developer, the number of non-tech users steadily grew over time. This led us to the situation, where the number of ideas and feature requests clearly outweighs the capacity of the openHAB developer community.
Having more ideas than it is possible to implement brings up the question of prioritisation. For users that are developers, this is rather easy as they decide for themselves what is most important for them and then come up with a code contribution - this is how the openHAB project evolved nicely through all the years.
For all non-developers this can be rather frustrating, though: They wish to have a small fix, enhancement or new feature, everyone agrees that it would be worthwhile, but they cannot implement it themselves and no developers seems to see it as a high prio. So what to do?
I have seen more and more people offering bounties in such situations and I would like to see this adopted as an accepted process for such situations. I have contemplated in depth about this step as almost all contributions to openHAB are done unpaid and voluntarily by people in their spare time and we definitely must not jeopardise this by putting anybody off. Having some people being paid for certain work, while others do a similar feature for free, might feel unfair. Also, most features are not the sole work of a single person, but considering discussion and review processes, many people are involved before a PR is merged, so paying the bounty to the initial contributor only would not be the correct attribution.
Nonetheless, I believe that bounties can prove to be a nice mechanism for choosing priorities. Instead of "+1"ing issues or asking for the status every week, people have the chance to post a bounty in order to accelerate an issue that is important to them - if it is important to many users, there can be a crowd funding of features.
A nice platform to achieve this is BountySource as it integrates with Github and deals with all the financial aspects. It also encourages bounty hunters to re-invest earned bounties on other issues instead of having them paid out - used this way, it would really help to use it as a means of prioritisation and the above mentioned āunfairā situations could be avoided if at least a part of the bounty is put back into the project.
Please note that BountySource itself is run by a few volunteers and as such the platform has a couple of bugs, issues and instabilities from time to time (I e.g. struggled for many months with the Github integration so that bounties are automatically mentioned on issues). It nonetheless looks to me as the best service in this field and a few hundred other projects are using it actively as well.
I have enabled BountySource on all relevant openHAB repositories. You will also find issues with a bounty being labelled accordingly. Browsing through BountySource, you will see that there is e.g. a very generous bounty of $500 on the InsteonPLM support for openHAB 2. It is possible to use bounties on other popular repos, such as the openHABian, the Z-Wave binding, etc. So if a feature is really important for you, give it a try and see if it attracts a developer who helps you getting there!
Letās try this out together and see how it works out. If you are interested in more details about BountySource, I would recommend to read their informative FAQs.
Best regards,
Kai
Edit: Removed docs as an example and weakened the formulation to actively use it.