Finding a Bloc STAR provider

Now that bloc STAR SC elections have been approved (quite a while ago actually) and the changes to PEP 13 have been merged, we need to figure out how to actually run an election this way.

I know that it’s awfully early to start thinking about this (the election result was posted earlier today), but I’d rather be early than having to scramble because everyone forgot until a month before next year’s election.

I checked with Ee and they are willing to run the election using whatever tool we pick. But I think it would be nice if we didn’t also saddle them with picking the tool.

Here’s what I found out so far (also a while back).

  • @larry has a complete STAR voting library with Bloc STAR support but I believe he’s reluctant to offer using it for running the SC election (probably out of modesty, or because he doesn’t want the hassle of having to babysit a production service). (Actually, I didn’t find any evidence on Discourse about his reluctance, so maybe he will be willing to host the election for us. Larry?)

  • There’s an open source site bettervoting.com that will host simple elections for free (but you have to do all the work yourself) and (for a fee?) they will do most of the work for you (not sure how much – their email said “we’re also happy to help officiate the election on your behalf”).

That’s all I found so far. (STAR voting is pretty new.)

IIUC, unlike Helios, bettervoting.com does not guarantee that nobody can see your ballot – but if they host it, only their database admin can see it. (What about people with root on their server?) I would personally fine with this – I don’t see why their admins would care about our election (it’s a TypeScript code base), but it’s worth thinking about. PEP 13 doesn’t specify how secure the ballot system needs to be (and never did). Not sure what the situation with Larry’s library would be.

Thoughts? Opinions? Too soon? I’m sure the new SC has better things to do with their time (congrats all!).

12 Likes

Not at all too soon, in my opinion. No matter who administers the next SC election I think it is ideal if they are prescribed a method.

7 Likes

Sadly no. It’s one thing to write an election tabulation library, it’s quite another to securely run an online election, as a production service. I don’t have those skills, or that mindset–I’m frankly not the guy you want.

I’d be eternally pleased if folks used my library to tabulate Steering Council elections, and I’d be responsive if the folks doing it found bugs or needed features. But I don’t expect to be on the team writing the code that uses my library (if indeed there is one).

8 Likes

bettervoting.com is run by the best-funded STAR advocacy organization, so on that basis alone is the best bet for the future.

“It’s always something”, though, so best to work out kinks early.

From my quick exploration, it appears to offer “almost everything” we want: multiple-winner “bloc STAR” (although not under that precise name), and the ability to download anonymized ballots (in either JSON or, much smaller, CSV format).

But … as someone who created a test election, is the ability to download anonymized ballots unique to me? Don’t know. And so on. Many questions will arise.

Helios made a ton of “security promises” so extreme that Helios never saw a raw ballot to begin with. Your ballot was encrypted before it left your browser, and in theory not even Helios could decrypt it. Very few other services are that … cautious.

Helios allowed changing your ballot at any time before the election closed. This service appears not to. But I’m not sure yet. I don’t really care. Do others?

Ties here are resolved by a randomized algorithm. It’s unclear whether that’s deterministic across separate runs. Larry’s library has a bunch of ways to handle that. If people care (I don’t, much), we could do the scoring ourselves. Larry’s library supports ways that are deterministic.

For a “restricted” (not open to the public) election, you can supply a list of email addresses of voters, or “IDs”. The latter are apparently gibberish strings you make up and pass out to voters. If someone goes to the site and can type in one of the pre-approved gibberish strings, they can vote; else they can’t. Which do people prefer?

One repeated annoyance falling on whoever creates the election: the process seems plodding. There’s not just a page of options to select, but many little areas to interact with. You start by clicking a radio button picking between “election” and “poll”. And that’s the only thing you can do at first. Click “election”, and then you have to click a “Continue” button to activate the next box: “What’s the title for your election?”. 3 “Continues” later and the initial page vanishes, and then you’re left wondering what to click on next.

It wasn’t then clear to me how to add a list of candidate names. That’s done by clicking the “Add” button to the right of “Races”. Their mental model is apparently that “an election” can consist of multiple “races”. Common in real-life political elections, but no so much in PSF elections.

And so on.

Absolutely. I know almost all “the right options” to pick here, but if you’re creating the election, you’ll have to wrestle with the UI. Practice early & yell “help” often :wink:

Of course I’ll be happy to participate in any test elections people may want to create.

5 Likes

So (a) we need to submit that feedback to their issue tracker, and (b) we should just let them handle these issues for us so it’s a burden on them rather than us. Right? :slight_smile:

2 Likes

I haven’t found anything yet I’d consider to be “a bug”. Just many questions about a complex system that’s trying to be many things to many audiences, and with the perfectly ordinary, industry-wide problem that the people who write the code think everything is obvious :wink:.

Here’s a possibly material thing I bumped into when finally finding the things to click on to supply a list of approved email addressea and/or “IDs” for restricted (not open to the public) elections:

  • Free tier elections are limited to 100 voters, email us at elections@equal.vote for an override

Only mention of “tiers” I’ve seen anywhere on the site.

“It’s always something.”

1 Like

EDIT: This test election is closed now. You can no longer vote. You can, however, still see the results, and download the ballots.

Here’s a test election. Bloc STAR, 2 winners, open to the public, anyone can vote, as often as they like, results so far are always available, and there is no ending date. In “a real” election, only “bloc STAR” would be true:

Test election

One thing I’d like to know: after you vote, do you see a “Download” button? I hope you do - that would download the actual anonymized ballots (in your choice of JSON or CSV format). I see no good reason for any organization to keep anonymized ballots secret.

1 Like

I tried out of curiosity. After voting, there are two buttons: “Results” and “Share Election”. Clicking on “Results” opens a page where there is a download button at the bottom. Here is the content of the CSV file, which corresponds to the anonymized ballots as far as I can tell:

ballot_id,precinct,Picking better voting methods!!Bloc STAR,Picking better voting methods!!STAR-PR,Picking better voting methods!!Block Approval,Picking better voting methods!!Proportional Block Approval (Jefferson),Picking better voting methods!!Proportional Block Approval (Webster),Picking better voting methods!!Reweighted Range Voting ,Picking better voting methods!!Condorcet (Schulze),Picking better voting methods!!Condorcet (Ranked Pairs)
9154c019-7d34-4d8e-925a-b3fed19187a8,,,5,5,3,2,2,0,
26b831dd-377c-4465-b3b8-3eb83a0644a3,,3,3,3,1,2,0,4,2
9b13c88a-8b6b-4ff6-8122-14ee570e3d9d,,4,3,2,2,2,5,0,1
5fd25373-3891-480d-bc08-8d0d57fabc4a,,5,5,2,0,3,0,1,1
4ec4242a-746d-4a90-8890-3cde3ea909d8,,5,3,4,3,4,3,2,0
fb6d70b9-1ccb-4f2d-87a2-d7e0ebd29e6a,,4,1,2,,3,,,
e7335205-7ac1-4712-b2b8-99ea9f893924,,5,,3,,,,,

I don’t see a way to change my vote, even via the email I opted to receive.

I found it weird to be able to see the results right away, but since there is no ending date I guess that this is unavoidable.

1 Like

Voting, leaving the site to drink coffee *, revisiting the page again, then clicking the OR VIEW RESULTS button gave me this:

* Coconut Caramel Crunch :grin:

1 Like

I’d be uncomfortable with a voting system where I couldn’t change my vote. Yes, I could probably live with it, and I know physical voting systems don’t have a “change your vote” option, but I value that feature of Helios (I vote early so I don’t forget, knowing I can change my vote if something happens that changes my views before the deadline).

4 Likes

If, in an actual vote, both viewing preliminary results on demand and being able to change one’s vote are available, would it not lead to strategic voting wherein voters repeatedly return to the site to adjust their votes in order to choose their acceptable options that appear to have a reasonable chance of winning, rather than sticking with their actual favorite options?

4 Likes

I hope that if there was an ending date, the results would not be available before the end of the poll. As @tim.one said, this test doesn’t have the same conditions as a real election.

Anyone should be able to see the results page: Picking a better voting method, even without voting. It’s the same as the screenshot shown by @Quercus above (where you can see the download button).

It’s detail, but the ballots data makes a difference between “no vote” (an empty value) and a “0” vote, even though they are counted the same for the election result. Maybe someone will find some statistically useful information with this :wink:

1 Like

Agreed. With their not being available, one might vote late if one could’t change one’s vote later. One might vote early and revise as necessary at the end if changing one’s vote were available.

If, regrettably, both viewing preliminary results and changing one’s vote were available, one might vote for one’s favorites right at the start to advertise them to everyone else as their most viable choices, then possibly revise repeatedly as conditions evolve. At the end of the voting period, we could all be there strategizing and revising in reaction to everyone else’s votes.

Quite likely, the site currently makes the preliminary results available to demonstrate the appeal of their system with nice statistics and graphics, and also because no ending date was announced.

Edited above to revise to “one” as a pronoun, and to a hypothetical situational description.

1 Like

Good point. I’d prefer to only allow results to be seen after the vote is complete, rather than being able to see results earlier. But yes, having both is problematic. And actually, just having the results available early allows that possibility regardless of whether changing your vote is allowed.

Of course, for the purposes of the SC elections, I doubt the voter pool is big enough, or opinions are strong enough, to make this sort of tactical voting a significant problem in any case :slightly_smiling_face:

3 Likes

The host site, with their wishing to develop a client base, would likely comply with a request to make results available only after the period of voting has passed.

Failing that, this community would undoubtedly abide by explicit ethical standards.

1 Like

Mass reply to all the good points raised. This was a first-stab test election, trying to get answers to questions I couldn’t answer from reading the minimal docs.

  • I explicitly set the election to make results-so-far visible. In a real election, no results would be visible (not even to the election admin) until the vote ended (although that’s another thing that needs to be tested)

  • There is an option to allow people to change their vote, but it’s greyed out (can’t bo toggled). This suggests it’s a feature they intend to add.

  • It’s encouraging that I didn’t see anyone complain that they found the process of voting confusing or buggy. Bot an “open to everyone in the world, and everyone can vote as often as they like” election bypasses all the doubtless hairy code needed to enforce “one pre-authorized voter, one vote”.

Thanks to all who voted!

3 Likes

And there’s a new test election, here.

Changes:

  • This one ends, December 13, 2024 at 10:00 PM UTC.
  • Results are not v\visible before it ends.
  • There are 5 winners now instead of 2.
  • Not changed: anyone in the world can vote, & as many times as they like.

Perhaps a bit of good news for @EWDurbin: the vast bulk of setting this one up was accomplished via going to the first test election and hitting the COPY button. That retains all the tedious settings, but clears the ballots, for a new election.

A surprise to me: despite that you supposedly can’t see the results so far (please confirm!) before the election ends, when logged in as the election creator I can see them. But only anonymized ballots.

3 Likes

Confirmed that I cannot see the results so far.

1 Like

Ditto.

Minor UX thing that threw me is it said the end time for voting in UTC but then after I voted in my local time zone w/o any indication it was adjusted (I just know 14:00 Pacific right now is 22:00 UTC).

1 Like

The same form of ballot can be scored by many different methods. In some variations of Reweighted Range Voting (RRV), for example, blank and 0 mean very different things: 0 is actively saying you strongly disapprove of the candidate, but leaving it blank is saying you have no opinion at all. Not even -1, 0, +!: you know nothing about the candidate.

STAR schemes don’t work that way - blank is the same as 0. But the code collecting the ballots has no idea which scheme(s) may be used to score them later. So it’s sensible for a platform supporting many scoring methods to retain all the distinctions visible on a ballot.

With one exception: the order in which candidates are displayed is forgotten. Indeed, in my test elections the order in which they appear is randomized for each new ballot created. Helios did the same. There’s ample research demonstrating in real life that candidate order can affect outcomes.

1 Like