We have been using Discourse Polls successfully for quite a while now and are quite happy with them. However for some votes we’d like to have more than just a simple poll. I particular we’d like to have an implementation of Condorcet Voting.
However it would be really great to be able to run these votes internally to our Discourse instance with the authentication and authorization capabilities.
There’s already a Single Choice, Multiple Choice, and Number Rating. It would be great to add Condorcet as an option.
The structure of the inputs and outputs is very similar UI to the existing implementations.
And the underlying voting algorithms are available as open source gems such as
The tricky thing here is that there are so many methods:
That would be too much to add to the polling plugin, if we were to add this it would have to be up to the site owner to choose STV vs Schulze vs Instant Runoff … etc… etc…
A lot of complexity here. Not against getting started though with at least 1 of the options.
Debian is using one specific variant of Condorcet by decades so I suppose it is supersafe to adopt at least this version.
It is better to have one tested on a large community then nothing.
I think Discourse communities really need something better that only winner take all polls.
Since the OP was written, I contributed Ranked Choice based on Instant Run-off which closes the gap somewhat.
I’m not certain the Discourse team would like to make the Poll plugin any more complex.
I subsequently created a fork of the Poll plugin which adds a Sankey diagram for Ranked Choice. This will not be PR’ed because CDCK feel the plugin is already large enough (and that’s fair enough, it takes significant resources to maintain all this code)
If someone wants to fund the addition of Condorcet you can contact me privately to add it to the fork.