What kind of threshold should a vote have to pass before being implemented? Do we really want to be making changes based on a vote that only got one “Aye”? Ten Ayes? Over 50% of the user base?
What kind of vote engagement can we reasonably expect to achieve? Is it actually likely that 50% of the user base will engage with any particular vote? Are there any useful presidents out there?
Who should be responsible for counting the votes when they’re over? Perhaps the OP tallies the votes and edits the post?
Is there an easy test the mods can apply to a tallied vote to allow them to check whether it’s passed? Something that is not open to interpretation and results in a clear directive to make a change?
I’m also kind of testing out this discussion format as a way of generating things to vote on i.e DISCUSSION > POLL > VOTE seems to make sense.
We’ll see :)
The current aye/nay system is cluttered and clunky. How about we allow comments in [discussion] posts and then have a separate [vote] post with a single comment for each option so people can choose up/down/abstain? Then nobody has to count anything, human or bot, or worry about typos, formatting, sarcasm, etc.
I also propose a minimum of 3 days, maximum of 1 week per each [vote], no time limits for discussion. You can choose when to start the official [vote] after discussion starts.
I think the vote posts might be better off in their own community outside the agora, like c/pollingplace or something. Discussions and topics that meet a threshold here are moved to that community and voting goes for a week. Each week the current slate of pending votes is posted and voting can occur with upvotes and downvotes on an aye, nay, and abstention comments inside the post.
Can a mod/admin/whatever pull who upvoted what? Somehow Lemmy is tracking it since it knows what you’ve upvoted. But it might make sense for the first couple of votes to do some real data analysis on them (who/what instances, age of account, average post quantity voted which way) to determine an algorithm that minimizes brigading while allowing everyone a voice.
Each week the current slate of pending votes is posted and voting can occur with upvotes and downvotes on an aye, nay, and abstention comments inside the post.
I really like this, helps keep it neat and easy to find each question on the “ballot” which will have a natural time limit
Can a mod/admin/whatever pull who upvoted what?
This will make or break this proposal if we want to limit based on sh.itjust.works users, account age, etc. If that exists, it sounds like a great option to me.
I think that [discussion] preceding [vote] makes good sense. I’d add that [vote] posts should link to their respective [discussion] posts.
I like the idea of using lemmy’s builtin voting mechanism.
I think for yes or no voting questions, it would be simplest to express all options with a single comment that is an affirmative statement on whatever is up for vote. Then each user action (pressing the upvote button, pressing the downvote button, or reading the post and pressing no button) maps exactly onto the vote a person casts.
I think this would be useful too, but currently that way of voting raises the issue that anyone outside this instance could vote on that issue as well and there would be no way of determining how many up/down/abstain votes came from users of this instance alone. A bot that could filter users of this instance would solve that though. If a separate community was created solely for voting (as opposed to discussion), there might be a way to make it private for users of this instance which could solve the problem also.
Maybe add a period of time between closure of discussion (which may take longer on complex topics) – and voting? So that people have time to see it all, and perhaps even make summaries? With several options, those should be well composed: Heading - explanation (links to relevant comments), each in a comment to the poll.
Commenting in the poll disallowed if possible(abstension, well yeah …). I like this.I really like how simple the single post up/downvote thing is.
I guess my only concern is that it hides who’s voted, which would make it harder to weed out bots/shitbags.
Some people want a secret ballot. Shitbags deserve a vote too 🤷🏻♂️
It’s not perfect, but like you said, it’s simple enough, and IMHO it’s better than our current system
Whole problem with that system is that people is up to restrict other instances from voting and that’s when it stops working at all.
Yeah I detailed that issue too. If we do indeed want to restrict voting to users of this instance, the fact that anyone in the fediverse can up/downvote on a comment makes it a non-starter without some additional way to filter the vote to only the users here.
This is a fantastic idea. Not sure about the time limits but the [vote] post seems like it would work really well.
I’m doubtful a quorum of 50% would happen, I imagine the majority of users will not participate in voting. I think if we set that as the threshold, nothing would ever get done. We might as well shutter the community. Maybe that many would vote if it were a defederation issue, but I still doubt it.
I think the proposer should tally votes. It should be easy to check the OPs math and bring up any discrepancies.
I like the discussion-> poll -> vote idea, but I’m not sure if most proposals will be large enough to require it.
Finally what about time limits? I’ve seen others says votes should be up for 3 days, or even 7 days which seems like a lot to me.
I was about to go start a discussion on exactly this issue:
I really believe that we need a discussion step before any vote. Sometimes, an idea isn’t fully fleshed out. Sometimes, there’s an angle almost nobody considered. We do need at least a day or 2 of discussion before something goes to a vote.
EDIT: Also, in regards to the ongoing vote, I think anyone from across the fediverse should be able to start the discussion step, but only a member of this instance can push it to a vote afterwards.
The discussion step is there for the OP to convince people that the move is a beneficial one, opposing views aired, discussed, dug into, and then a new post is put up as a vote where the only comments allowed are “Aye” and “Nay”
Look at this “vote”, for example. It’s all just discussion. Nobody is actually voting. I think people do agree with this format instinctively, it just hasn’t been set up yet.
The idea of opening the floor for discussion to everyone is interesting but I think that sort of means we can’t use subscriber count as a way of scoring votes.
My thinking was the subscriber count is a smaller subset of the total user base and will be made up of people who are specifically invested in participating.
What happens if you have subscribers to the Agora who aren’t actually part of the wider shit just works user base and who also can’t vote?
I don’t think we need to overcomplicate that at this step. We could use something like 10-20% of daily active users on the instance or something as the minimum quorum, for example. Low enough to be do-able, high enough to not be 3 dudes voting.
Fair point, I suppose it’ll become obvious if it starts being abused.
You have to filter the count by the instance to find the correct number.
I think a discussion for 3 days that allows anyone to participate followed by 7 days of voting, only by local accounts, makes sense.
Even if I were away for a week, I’d be likely to see the discussion before or the vote after.
Yeah, I don’t think 50% is realistic either, I’m just trying to work out if there’s a way of usefully measuring engagement.
It may be that expressing votes as a percentage of the user base it still helpful, it’s just that the threshold needs to be lower.
Or, what about measuring against subscribers to the Agora? The sidebar says we have 109 subscribers at the moment, the top post has 55 comments - that seems to be a more useful ratio.
what about measuring against subscribers to the Agora
sounds sensible
I think we should accept any proposal only after it exceeds 51% of the agora subscribers who are on this instance.
(Remember, federation means you can subscribe to this community from many instances.)
Regarding timescales, I added this to your other post but I think that would be perfect for testing out polling.
Hows that going to work anyway? There’s no native poll option is there?
Was thinking having a vote be #1 in Agora for 7 days might be an interesting pass metric. Would guarantee anyone who visited saw it. Would also naturally slow down rule changes and build a cooling off period so things don’t get passed because of some temporary kerfuffle.
I’m thinking we need a bot to handle all this. Check for quorum, track vote timelines, tally votes after it closes, administer polls, probably other stuff I’m missing
Yeah, a few people have mentioned this and it would seem to make sense.
There are a few Lemmy bots on GitHub https://github.com/topics/lemmy-bot, I guess that would need involvement from the mods.
Is there something that handles nuanced option taking? like more than 2 options … like i suggested in a separate comment, systemic consensing?
We need to construct a vote ballot, then use up voting on the options you approve of.
This is approval voting and has excellent behaviors compared to most other voting systems
Ideally, voting would happen in a community that only allows local users to subscribe or vote.
If that’s not possible in Lemmy, at the moment, something with access to the database could do the checking and report the results, I think.
Actually, i like weighted disapproval voting, because it counteracts mob approval following (better word?) to some extent. People are incentivised to think about how much any option (and there could be silly ones just for the sake of it) would go against their favours. I’d consider it intellectually mature if people could collectively establish such a system. But doesn’t look like it …
One thing that would be nice to have is a “neutral/abstine” vote. While this can be substituted by commenting, the latter would allow double voting.
How about announcing discussions for vote (pinned message/ sidebar), then just setting a time limit that makes it likely a fair amount of vote-interested and active people would have seen it? I’d find 1 week sensible but it could also vary by the gravity/complexity of the subject.
if we do implement a quorum, I think we should allow abstain votes in addition to aye or nay, for folks who are neither for or against but want to help meet that threshold
An abstain vote reduces the total number of votes required to pass anything. I would prefer valid voters be presumed to be against all of the options until they vote for any of the options.
I disagree, sometimes I want to be counted but don’t want to vote for an option, and I think that’s valid.
Posting in the thread but not up voting any thing could work. And then possibly only count votes from people who posted? Easy enough to post “seconded” and upvote what you agree with or vice versa.
I just had an idea. What if instead of a percentage of users in the instance, it’s a percentage of users that are subscribed to the agora. I don’t think subs are public, so it would have to be checked by an admin or bot. Maybe tallying and time limits could be done by the bot as well. I’m not too sure. Just throwing the idea out there.
Edit: Also I could help with development of a bot if needed. I don’t know how lemmy/fediverse works under the hood though :/
I just had the same thought :)
So how would you work out the final vote count based on that?
Ayes from unique users as a percentage of subscribers? Does the nay count carry any weight? What if it’s 51% Aye and %49 Nay?
I think it should just provide information rather than making conclusive decision of aye or nay, and humans should have the final say. There could be a count separating ayes and nays for subscribers and guests which the bot could put in a comment along with other stats.
As a side note: Here Randomocity says “Nay until some evidence is posted” and then evidence is posted, but a bot would still count that as nay. So maybe maybe have a symbol like
/aye
. That could over complicate things though.I get what you’re saying but ultimately, the information the bot is providing would just be “the humans say they want this and meets the threshold they’ve set”.
It’s not making any decisions on its own.
To your point about “Nay until evidence”, that seems to me to be working as intended. A Nay is a Nay until the user changes their vote. You’d want the bot to count that.
I would have the bot work like this:
Find the total subscribed agora users.
Find the number of agora subscribers from this instance.
Assume every user from the local instance votes nay, then start reading replies.
For each reply, if the local subscriber uses the “aye” tag, change their vote to aye and record the timestamp for that reply.
A later reply with the “nay” tag should be able to undo that user’s previous approval.
The bot should report the counts each day and a final summary after the voting period has ended.
If it’s not over 51%, then the vote should fail to pass.
Having a secret ballot is my only concern
I’m all for a secret ballot, but unless there’s something I haven’t thought of yet, it doesn’t seem feasible right now.
The way I’ve seen it discussed is having a proposal post with 3 comments like “Aye”, “Nay”, and “Abstain” and users would upvote those to determine what passes, so secret ballot.
Problems I see at first glance are:
You can upvote “Aye” and downvote “Nay” and /or “Abstain” for example, which would skew a poll with more than two options. Way to fix this I suppose could be to make sure everyone always upvotes their choice and always downvotes all the other choices.
The votes are secret (which is good), but how many of those votes came from users of this instance versus those that aren’t? If you see an “Aye” next to a username you can easily check that they’re a sh.itjust.works user and tally the vote accordingly, as far as I know that’s not possible with just upvotes/downvotes, you just get the total. If there’s some way for modtools to filter those votes to just users from this instance it would solve the problem.
In the end I think a secret ballot is a good choice, but until there’s a way to filter out votes from outside sh.itjust.works for the “Ayes”, “Nays”, and “Abstains” secret voting would be too easy to abuse.
If we implement a quorum (which I’d support on decisions of greater impact, e.g. defederations), it should be based on “active” users, however one determines that.
With access to the database, it might be easy for a bot to look for users who read the discussion linked in the vote post.
I don’t think we need to restrict to active users.
I did not say I want only active users be able to vote. I wanted to imply that the quorum needs to count against active users as opposed to all users of the instance.
Reason: there will very soon be a lot of unused accounts. Given enough of these, no vote could ever be successful.
I agree that using total users would not be workable.
The best set of possible voters is only those that have read about the issue being decided.
I’d put local users subscribed to the community as the next best available set.
Then active local users.
Finally, the set of local users.
I believe we should be able to get a number for any of these sets, so using the third or fourth best option should not be necessary.
I just want to express that I’d like to see more rules around what constitutes a legit vote, and a better format for voting than a stream of ‘ayes’ and ‘nays’ comments (many people just upvote the first ‘aye’ and consider that vote).
I like the discussion > poll > vote mechanic you described. Maybe poll and vote are the same step though?
Thinking about it, if we get a proper polling system in place, that solves the issue of tons of Ayes and Nays and also additional up/down voting.
I had considered voting to be a single issue topic with a binary y/n outcome, with polling used to refine ideas, but there’s no reason you couldn’t have polling also be single issue but with multiple outcomes.
That way you can use the polling system to get feedback on potential voting topics and also for the vote itself.
oh I get it now, yeah I like that a lot
There should absolutely be space for discussion, even and especially with stuff that seems “minor” or “obvious” to most. Humans can not trust themselves to be so objective.
An informed decision can only be made when all the information has been brought forward. Common sense.
Also, for more complex polls (like perhaps a decision on the voting procedere itself, there are tools available to do just that, choose among several options (because that’s what it’s going to be after a good discussion and idea gathering). One i know of is systemic consensing (Wikipedia). – edit: this comment has a similar but less nuanced thing on discussion, actually
More to discuss from the devil’s advocate: should all current polls be seen as invalid until the rules have been established? Because this discussion here is like establishing a constitution.
I think it should be this way: Some percentage of people is minimum. Maybe around 20-30%. Counting votes - would be nice if we had bot for it cause we don’t have functionality for polls and votes in Lemmy rn, but now it seems like only reasonable way to count votes is straight up Ctrl+F Aye and Nay, count all comments from instance users and edit post/make a pinned comment. Maybe if there is any not lazy developer we will have really nice bot that checks all the marks.