# Finding a Bloc STAR provider

**URL:** <https://discuss.python.org/t/finding-a-bloc-star-provider/73918>\
**Category:** Core Development\
**Tags:** governance\
**Created:** [December 11, 2024, 2:02am UTC](https://discuss.python.org/t/finding-a-bloc-star-provider/73918 "2024-12-11T02:02:06Z")\
**Posts on this page:** 20\
**Page:** 4

<div class="post-metadata">

**Author:** ![EWDurbin](https://sea2.discourse-cdn.com/flex002/user_avatar/discuss.python.org/ewdurbin/32/3103_2.png) [@EWDurbin](https://discuss.python.org/u/EWDurbin)\
**Post date:** [May 29, 2025, 12:05am UTC](https://discuss.python.org/t/finding-a-bloc-star-provider/73918/63 "2025-05-29T00:05:16Z")

</div>

Hello! We are now 5ish months away from the next SC election. Given the stated intention to change to a new voting methodology, and thus election software we need to pin things down sooner than later!

My preference is entirely to be told what to do. If we can’t get to that point before the end of June, I think it would be best for me to begin assessing options directly.

How are the experts feeling? Has the SC weighed in? Are providers ready to run our election?

---

<div class="post-metadata">

**Author:** ![tim.one](https://sea2.discourse-cdn.com/flex002/user_avatar/discuss.python.org/tim.one/32/282_2.png) [@tim.one](https://discuss.python.org/u/tim.one)\
**Post date:** [May 29, 2025, 12:17am UTC](https://discuss.python.org/t/finding-a-bloc-star-provider/73918/64 "2025-05-29T00:17:21Z")

</div>

> [@EWDurbin](#):
>
> My preference is entirely to be told what to do. If we can’t get to that point before the end of June, I think it would be best for me to begin assessing options directly.

I did my best in December to give you an exhaustive list of “what to do” in order to use the STAR voting service as intended. It would have been best to follow up then, when tt was all still fresh in _my_ mind 😉.

> [@Finding a Bloc STAR provider](https://discuss.python.org/t/finding-a-bloc-star-provider/73918/26):
>
> For anyone who wants to try their own test election, and especially for @EWDurbin (he needs to try this), here are the steps I recommend. I hope I’ve left nothing material to imagination: After you log in, click on your account and select New Election. A box pops up: Poll or Election? Election Title? e.g., PSF Steering Council - 2025 term Restricted? Yes Fill in contact email address for election help Would you like your election to be restricted to a pre-defined voter list? Yes. …

> [@](#):
>
> How are the experts feeling? Has the SC weighed in? Are providers ready to run our election?

- Nothing has changed for months that I know of.
- I don’t believe the SC has weighed in.
- “It depends”. The STAR voting service is generally free to use, but there’s a limit on how many voters they’re willing for their servers to handle without charge.

Another option briefly discussed here: they’re also willing, for a price, to run the election for us.

I don’t believe, though, that I have anything useful to say about those semi-open issues. I have no spending authority, and they’re not my calls anyway.

---

<div class="post-metadata">

**Author:** ![barry](https://sea2.discourse-cdn.com/flex002/user_avatar/discuss.python.org/barry/32/42_2.png) [@barry](https://discuss.python.org/u/barry)\
**Post date:** [May 29, 2025, 12:43am UTC](https://discuss.python.org/t/finding-a-bloc-star-provider/73918/65 "2025-05-29T00:43:04Z")

</div>

> [@EWDurbin](#):
>
> Has the SC weighed in?

The SC hasn’t weighed in, and I’m not sure what we can do, since we’re not election experts. Without checking in with my fellow SC members, I think our preference is probably exactly like yours 😉 .

---

<div class="post-metadata">

**Author:** ![tim.one](https://sea2.discourse-cdn.com/flex002/user_avatar/discuss.python.org/tim.one/32/282_2.png) [@tim.one](https://discuss.python.org/u/tim.one)\
**Post date:** [May 29, 2025, 12:48am UTC](https://discuss.python.org/t/finding-a-bloc-star-provider/73918/66 "2025-05-29T00:48:02Z")

</div>

> [@barry](#):
>
> The SC hasn’t weighed in

Although PEP 13 was already changed, last year, to specify that SC elections use “Bloc STAR” voting.

On that basis, I actually don’t think the SC has anything more to do with this, except, perhaps, to try to come up with funding if PSF staff wants to pay someone else to do some (or all) of the election work for us.

---

<div class="post-metadata">

**Author:** ![guido](https://sea2.discourse-cdn.com/flex002/user_avatar/discuss.python.org/guido/32/21_2.png) [@guido](https://discuss.python.org/u/guido)\
**Post date:** [May 29, 2025, 1:12am UTC](https://discuss.python.org/t/finding-a-bloc-star-provider/73918/67 "2025-05-29T01:12:27Z")

</div>

None of this seems to be helping Ee in his quest to minimize his involvement. 🙂

@EWDurbin, I suggest contacting [starvoting.org](http://starvoting.org) directly to ask them to run our elections for us. Surely the cost is minimal and can easily be born by the PSF (possibly through the funds set aside for core development work).

My direct contact has been Arend Peter Castelein [arendpeter@equal.vote](mailto:arendpeter@equal.vote) and CC’ed to elections@equal.vote. You can CC me since they reached out to me initially. I can also send an intro email if you prefer.

**EDIT:** Their site for running elections is [https://bettervoting.com/](https://bettervoting.com/). Tim played with it a bunch last December.

---

<div class="post-metadata">

**Author:** ![tim.one](https://sea2.discourse-cdn.com/flex002/user_avatar/discuss.python.org/tim.one/32/282_2.png) [@tim.one](https://discuss.python.org/u/tim.one)\
**Post date:** [May 29, 2025, 1:24am UTC](https://discuss.python.org/t/finding-a-bloc-star-provider/73918/68 "2025-05-29T01:24:49Z")

</div>

> [@guido](#):
>
> My direct contact has been Arend Peter Castelein

He’s been active in this topic too, and very responsive back when the topic was still active - @ArendPeter.

> [@guido](#):
>
> Tim played with it a bunch last December.

And I already re-shared a link to the exhaustive account I gave here then of everything needed to set up an election of the kind we want on the STAR voting service.

> [@guido](#):
>
> ask them to run our elections for us

That’s what I’d do - but I won’t say so for fear of jinxing it 😉.

---

<div class="post-metadata">

**Author:** ![willingc](https://sea2.discourse-cdn.com/flex002/user_avatar/discuss.python.org/willingc/32/20_2.png) [@willingc](https://discuss.python.org/u/willingc)\
**Post date:** [May 31, 2025, 7:02pm UTC](https://discuss.python.org/t/finding-a-bloc-star-provider/73918/69 "2025-05-31T19:02:04Z")

</div>

I agree that having them run the election would be helpful.

That said, looking at their [contribution guide](https://docs.bettervoting.com/contributions/0_contribution_guide.html), it looks like a fairly straightforward dev deployment.

---

<div class="post-metadata">

**Author:** ![tim.one](https://sea2.discourse-cdn.com/flex002/user_avatar/discuss.python.org/tim.one/32/282_2.png) [@tim.one](https://discuss.python.org/u/tim.one)\
**Post date:** [May 31, 2025, 7:38pm UTC](https://discuss.python.org/t/finding-a-bloc-star-provider/73918/70 "2025-05-31T19:38:51Z")

</div>

> [@willingc](#):
>
> That said, looking at their [contribution guide](https://docs.bettervoting.com/contributions/0_contribution_guide.html), it looks like a fairly straightforward dev deployment.

FYI, they already run a voting service open for anyone to use. We’re not considering deploying their software ourselves.

This is more whether learning how to _use_ their voting service, as end users, is worth doing, or whether to pay them to push buttons on their GUI web site for us.

Not really a no-brainer to “do it on our own”. The service offers many alternatives, and no software is actually “easy to use” the first time you do it.

I wrote up exhaustive instructions on “what to click on” last December, but for all I know the UI has changed since then. But I had the advantage of knowing “a lot” about STAR voting methods at the start, so it was easy for me to guess at what various options meant.

For example, PEP 13 specifies that the SC will use “Multi-winner Bloc STAR”, but that phrase appeared nowhere in the maze of GUI options. But, to my eyes, it “was obvious” which collection of options added up to that specific method.

Did I get it right? Well, yes 😉. But it’s easier to be more certain if we pay the people who wrote the code to use it.

---

<div class="post-metadata">

**Author:** ![EWDurbin](https://sea2.discourse-cdn.com/flex002/user_avatar/discuss.python.org/ewdurbin/32/3103_2.png) [@EWDurbin](https://discuss.python.org/u/EWDurbin)\
**Post date:** [June 2, 2025, 11:55am UTC](https://discuss.python.org/t/finding-a-bloc-star-provider/73918/71 "2025-06-02T11:55:13Z")

</div>

OK, I took some time to review [bettervoting.com](http://bettervoting.com) and setup a test election. This seems straightforward enough with @tim.one’s instructions.

My only observations beyond “works”:

- There’s no way I could find to create a hyperlink for each candidate on the ballot. In the past we have included a link to the nomination for each candidate on [discuss.python.org](http://discuss.python.org).
- I tested the email sending, and found delivery to be fast and accepted across mail hosting I had accessible to me, with happy SPF/DKIM/DMARC. This is a big upgrade from past providers.

I think addressing the first point is all that I would encourage before using it for a real election.

---

<div class="post-metadata">

**Author:** ![EWDurbin](https://sea2.discourse-cdn.com/flex002/user_avatar/discuss.python.org/ewdurbin/32/3103_2.png) [@EWDurbin](https://discuss.python.org/u/EWDurbin)\
**Post date:** [June 2, 2025, 12:00pm UTC](https://discuss.python.org/t/finding-a-bloc-star-provider/73918/72 "2025-06-02T12:00:51Z")

</div>

As far as “running the election” there is a bit more involved than just setting up an election and feeding a voter list in. There’s a decent amount of work in preparing the voter role, drafting/updating election PEP, handling cases where people did not receive a ballot they believe they should have, closing out election PEP, etc…

So I don’t think we can “just pay” them to do it for us. I’m happy to do all that again this year, including turning the knobs on [bettervoting.com](http://bettervoting.com).

---

<div class="post-metadata">

**Author:** ![guido](https://sea2.discourse-cdn.com/flex002/user_avatar/discuss.python.org/guido/32/21_2.png) [@guido](https://discuss.python.org/u/guido)\
**Post date:** [June 2, 2025, 3:20pm UTC](https://discuss.python.org/t/finding-a-bloc-star-provider/73918/73 "2025-06-02T15:20:32Z")

</div>

Great! For the first issue, I would just file a bug.

I love the better email delivery.

---

<div class="post-metadata">

**Author:** ![tim.one](https://sea2.discourse-cdn.com/flex002/user_avatar/discuss.python.org/tim.one/32/282_2.png) [@tim.one](https://discuss.python.org/u/tim.one)\
**Post date:** [June 2, 2025, 3:39pm UTC](https://discuss.python.org/t/finding-a-bloc-star-provider/73918/74 "2025-06-02T15:39:38Z")

</div>

> [@EWDurbin](#):
>
> There’s no way I could find to create a hyperlink for each candidate on the ballot. In the past we have included a link to the nomination for each candidate on [discuss.python.org](http://discuss.python.org).

Yes, I mentioned that here in December to @ArendPeter, but it seems to have vanished in the noise. Pinging him now in hopes it will be noticed now:

> [@tim.one](#):
>
> And one more that hasn’t yet come up here: the ability to add some text to the display of a candidate’s name, and particularly to add a hyperlink. Candidates’ nomination statements can be quite lengthy, and it’s great to have live links to their statements in the ballot.

> [@EWDurbin](#):
>
> As far as “running the election” there is a bit more involved than just setting up an election and feeding a voter list in

Don’t be modest - there’s a _lot_ more to running an election, and navigating the service’s web UI is the least of it, but is the only part I expect they _could_ be paid to do. I’m happy to hear you found that part of it “straightforward enough”!

A fine point you may have missed in your testing: the service keeps track of which email addresses have and haven’t voted yet, and part of the admin UI allows to send an email blast to only those who haven’t voted yet (or only to those who have!). I thought that was a nice touch.

Full speed ahead! I anticipate success 😄

---

<div class="post-metadata">

**Author:** ![ArendPeter](https://sea2.discourse-cdn.com/flex002/user_avatar/discuss.python.org/arendpeter/32/24499_2.png) [@ArendPeter](https://discuss.python.org/u/ArendPeter)\
**Post date:** [June 8, 2025, 2:03am UTC](https://discuss.python.org/t/finding-a-bloc-star-provider/73918/75 "2025-06-08T02:03:48Z")

</div>

Hi all 👋! Sorry for the delay. I’ll continue to check back here occasionally, but folks are welcome to fill out the feedback form or email me at arendpeter@equal.vote for a faster response.

> [@EWDurbin](#):
>
> There’s no way I could find to create a hyperlink for each candidate on the ballot. In the past we have included a link to the nomination for each candidate on [discuss.python.org](http://discuss.python.org).

We can add this pretty quickly. We’ve done it for prior elections, but it’s currently disabled as we’re finalizing the UI. If you see [this ballot](https://bettervoting.com/g3mvqw/vote) as an example, would that be sufficient?

I also wanted to flag, that implementing the TinyRand for the final tiebreaker and allowing for users to edit their ballot are both on my todo list to complete before your election in November.

> [@EWDurbin](#):
>
> I tested the email sending, and found delivery to be fast and accepted across mail hosting I had accessible to me, with happy SPF/DKIM/DMARC. This is a big upgrade from past providers.

> [@tim.one](#):
>
> A fine point you may have missed in your testing: the service keeps track of which email addresses have and haven’t voted yet, and part of the admin UI allows to send an email blast to only those who haven’t voted yet (or only to those who have!). I thought that was a nice touch.

Super glad those touches were helpful 😃

---

<div class="post-metadata">

**Author:** ![EWDurbin](https://sea2.discourse-cdn.com/flex002/user_avatar/discuss.python.org/ewdurbin/32/3103_2.png) [@EWDurbin](https://discuss.python.org/u/EWDurbin)\
**Post date:** [June 8, 2025, 2:21am UTC](https://discuss.python.org/t/finding-a-bloc-star-provider/73918/76 "2025-06-08T02:21:35Z")

</div>

> [@ArendPeter](#):
>
> We can add this pretty quickly. We’ve done it for prior elections, but it’s currently disabled as we’re finalizing the UI. If you see [this ballot](https://bettervoting.com/g3mvqw/vote) as an example, would that be sufficient?

Yes. Absolutely.

---

<div class="post-metadata">

**Author:** ![tim.one](https://sea2.discourse-cdn.com/flex002/user_avatar/discuss.python.org/tim.one/32/282_2.png) [@tim.one](https://discuss.python.org/u/tim.one)\
**Post date:** [June 8, 2025, 5:18am UTC](https://discuss.python.org/t/finding-a-bloc-star-provider/73918/77 "2025-06-08T05:18:11Z")

</div>

> [@ArendPeter](#):
>
> I also wanted to flag, that implementing the TinyRand for the final tiebreaker and allowing for users to edit their ballot are both on my todo list to complete before your election in November

Thanks! I would strongly prefer that you prioritize allowing users to change their votes. That’s something that affects all voters directly, and is actively wanted by more than just a few.

While my heart (& code 😉) is part of the TinyRand crusade, it can wait. Relatively few people will ever care about that - until a contentious tie actually happens, and “sore losers” attack the integrity of your service. As we’ve briefly discussed elsewhere, there’s a lot you _can_ do in advance to render such attacks toothless, but it’s real work with no immediate payoff. Also possible it will never come up. So, in all, possibly important but not urgent. User-facing changes are always urgent 😉.

---

<div class="post-metadata">

**Author:** ![ArendPeter](https://sea2.discourse-cdn.com/flex002/user_avatar/discuss.python.org/arendpeter/32/24499_2.png) [@ArendPeter](https://discuss.python.org/u/ArendPeter)\
**Post date:** [September 1, 2025, 4:49am UTC](https://discuss.python.org/t/finding-a-bloc-star-provider/73918/78 "2025-09-01T04:49:41Z")

</div>

Hi just adding a quick fyi, that this is still in progress.

I’m hoping to get all the features in place by late September / early October.

Sorry for cutting it so close, and thank you for your patience.

---

<div class="post-metadata">

**Author:** ![tim.one](https://sea2.discourse-cdn.com/flex002/user_avatar/discuss.python.org/tim.one/32/282_2.png) [@tim.one](https://discuss.python.org/u/tim.one)\
**Post date:** [September 1, 2025, 5:10am UTC](https://discuss.python.org/t/finding-a-bloc-star-provider/73918/79 "2025-09-01T05:10:24Z")

</div>

> [@ArendPeter](#):
>
> I’m hoping to get all the features in place by late September / early October.

It’s better to get it right than to get it quickly;😉.

I can’t speak to the schedule, and best I know the dates haven’t been announced yet.. But SC elections _typically_ have a voting period in the late November - early December range. For example, last year SC voting ran from Nov 25 - December 10. That seems comfortably removed from your date range.

So I’m guessing we’re all good. If I’m wrong, I hope someone jumps in to say so 😉.

---

<div class="post-metadata">

**Author:** ![ArendPeter](https://sea2.discourse-cdn.com/flex002/user_avatar/discuss.python.org/arendpeter/32/24499_2.png) [@ArendPeter](https://discuss.python.org/u/ArendPeter)\
**Post date:** [October 15, 2025, 7:12pm UTC](https://discuss.python.org/t/finding-a-bloc-star-provider/73918/80 "2025-10-15T19:12:53Z")

</div>

We’re still on track 🙂

To confirm are you planning to use the email list option on bettervoting, or will there also be voters without an email?

---

<div class="post-metadata">

**Author:** ![guido](https://sea2.discourse-cdn.com/flex002/user_avatar/discuss.python.org/guido/32/21_2.png) [@guido](https://discuss.python.org/u/guido)\
**Post date:** [October 15, 2025, 7:47pm UTC](https://discuss.python.org/t/finding-a-bloc-star-provider/73918/81 "2025-10-15T19:47:26Z")

</div>

All voters have email addresses.

---

<div class="post-metadata">

**Author:** ![EWDurbin](https://sea2.discourse-cdn.com/flex002/user_avatar/discuss.python.org/ewdurbin/32/3103_2.png) [@EWDurbin](https://discuss.python.org/u/EWDurbin)\
**Post date:** [October 21, 2025, 1:44pm UTC](https://discuss.python.org/t/finding-a-bloc-star-provider/73918/82 "2025-10-21T13:44:44Z")

</div>

> [@EWDurbin](#):
>
> > [@ArendPeter](#):
> >
> > We can add this pretty quickly. We’ve done it for prior elections, but it’s currently disabled as we’re finalizing the UI. If you see [this ballot](https://bettervoting.com/g3mvqw/vote) as an example, would that be sufficient?
> 
> Yes. Absolutely.

@ArendPeter I do not seem to be able to add a hyperlink. Can you update on the status of this?

[Previous page](https://discuss.python.org/t/finding-a-bloc-star-provider/73918.md?page=3)

[Next page](https://discuss.python.org/t/finding-a-bloc-star-provider/73918.md?page=5)
