If you care about the voting method, please vote ; -)
There's a poll about the voting method to use to decide on the winning governance PEP. We'd like to see more people weigh in:
https://discuss.python.org/t/python-governance-electoral-system/290/26
PEP 8001 specifies that IRV will be used. There's pushback against that. Since a poll is a form of approval voting, there's also pushback against using a poll to vote on the voting method. But we really don't have the time to pursue infinite regress to its end ;-)
I'm not in charge of anything, so take this for what it's worth: pick the option(s) that are closest to what you can live with, but add a comment to the poll if there's some aspect of what you vote for that you really can't abide (e.g., at least one person said they would vote for Approval, _except_ that they object to getting the PSF Board involved in case there's a tie). The high-order bit of this poll is about the basic approaches people can live with, not details of how problem cases are handled.
FYI I just updated PEP 8001 with the result of the poll which very clearly favoured the Condorcet method for winner selection.
On Tue, 30 Oct 2018 at 12:52, Tim Peters <tim.peters@gmail.com> wrote:
There's a poll about the voting method to use to decide on the winning governance PEP. We'd like to see more people weigh in:
https://discuss.python.org/t/python-governance-electoral-system/290/26
PEP 8001 specifies that IRV will be used. There's pushback against that. Since a poll is a form of approval voting, there's also pushback against using a poll to vote on the voting method. But we really don't have the time to pursue infinite regress to its end ;-)
I'm not in charge of anything, so take this for what it's worth: pick the option(s) that are closest to what you can live with, but add a comment to the poll if there's some aspect of what you vote for that you really can't abide (e.g., at least one person said they would vote for Approval, _except_ that they object to getting the PSF Board involved in case there's a tie). The high-order bit of this poll is about the basic approaches people can live with, not details of how problem cases are handled.
python-committers mailing list python-committers@python.org https://mail.python.org/mailman/listinfo/python-committers Code of Conduct: https://www.python.org/psf/codeofconduct/
On Fri, Nov 02, 2018 at 03:20:43PM -0700, Brett Cannon wrote:
FYI I just updated PEP 8001 with the result of the poll which very clearly favoured the Condorcet method for winner selection.
That was quick. It would have been nice if there had been some sort of obvious announcement of the time frame available for voting before voting closed :-( Did I miss it?
How many people voted? Out of what (approximate) pool of potential voters?
-- Steve
Le ven. 2 nov. 2018 à 23:49, Steven D'Aprano <steve@pearwood.info> a écrit :
How many people voted? Out of what (approximate) pool of potential voters?
25 voters on 65 core developers who have an account on discuss.python.org.
25 can be seen at: https://discuss.python.org/t/python-governance-electoral-system/290/26
65 comes from: https://discuss.python.org/groups/committers
Note: I didn't vote (not interested to vote on the voting method).
Victor
On Fri, Nov 02, 2018 at 11:57:02PM +0100, Victor Stinner wrote:
Le ven. 2 nov. 2018 à 23:49, Steven D'Aprano <steve@pearwood.info> a écrit :
How many people voted? Out of what (approximate) pool of potential voters?
25 voters on 65 core developers who have an account on discuss.python.org.
Thanks!
-- Steve
It would have been nice to know beforehand if the results of the poll were going to change the PEP. I didn't participate because I didn't feel like the poll had a fair process like the PEP's themselves.
--Chris
On Fri, Nov 2, 2018 at 3:21 PM Brett Cannon <brett@python.org> wrote:
FYI I just updated PEP 8001 with the result of the poll which very clearly favoured the Condorcet method for winner selection.
On Tue, 30 Oct 2018 at 12:52, Tim Peters <tim.peters@gmail.com> wrote:
There's a poll about the voting method to use to decide on the winning governance PEP. We'd like to see more people weigh in:
https://discuss.python.org/t/python-governance-electoral-system/290/26
PEP 8001 specifies that IRV will be used. There's pushback against that. Since a poll is a form of approval voting, there's also pushback against using a poll to vote on the voting method. But we really don't have the time to pursue infinite regress to its end ;-)
I'm not in charge of anything, so take this for what it's worth: pick the option(s) that are closest to what you can live with, but add a comment to the poll if there's some aspect of what you vote for that you really can't abide (e.g., at least one person said they would vote for Approval, _except_ that they object to getting the PSF Board involved in case there's a tie). The high-order bit of this poll is about the basic approaches people can live with, not details of how problem cases are handled.
python-committers mailing list python-committers@python.org https://mail.python.org/mailman/listinfo/python-committers Code of Conduct: https://www.python.org/psf/codeofconduct/
python-committers mailing list python-committers@python.org https://mail.python.org/mailman/listinfo/python-committers Code of Conduct: https://www.python.org/psf/codeofconduct/
[Chris Jerdonek <chris.jerdonek@gmail.com>]
It would have been nice to know beforehand if the results of the poll were going to change the PEP.
Don't look at me ;-) Like I said, "I'm not in charge of anything", and I had no input in changing PEP 8001 beyond contributing to the message thread, same as everyone else. I viewed the poll as being informational, to get a sense of how people felt about the issues. Apparently someone actually in charge of the PEP thought consensus was "clear enough", presumably in part because of the poll results, but also presumably because of the quite extensive following discussion (of which the poll results can fairly be said to be representative).
I didn't participate because I didn't feel like the poll had a fair process like the PEP's themselves.
Which you've already said in the discuss.python.org thread. So, mentally, when I viewed the poll, I added one vote to IRV for you. I don't know whether Brett did too, but IRV was trailing too much for it to make a material difference.
As above, I expect it was really the discussion that drove the decision, of which the poll results were but a summary. But October is over, so Brett can speak for himself now ;-)
On Fri, Nov 2, 2018 at 5:09 PM Tim Peters <tim.peters@gmail.com> wrote:
[Chris Jerdonek <chris.jerdonek@gmail.com>]
It would have been nice to know beforehand if the results of the poll were going to change the PEP.
Don't look at me ;-) Like I said, "I'm not in charge of anything", and I had no input in changing PEP 8001 beyond contributing to the message thread, same as everyone else.
My reply was to Brett and not to you. If I had known the poll was going to be binding, I could have made an effort to participate in the discussion and try to sway people. As it was, the discussion was started and dominated by people who were against IRV. They are the most motivated to change things, and they're also the ones most motivated to participate in the poll. I couldn't afford to participate in such a discussion otherwise, as I said in the discussion. There are already 98 messages -- many of which are lengthy -- not to mention messages in other threads. It would take a lot of time and emotional energy to engage in such a discussion.
--Chris
I viewed the poll as being informational, to get a sense of how people felt about the issues. Apparently someone actually in charge of the PEP thought consensus was "clear enough", presumably in part because of the poll results, but also presumably because of the quite extensive following discussion (of which the poll results can fairly be said to be representative).
I didn't participate because I didn't feel like the poll had a fair process like the PEP's themselves.
Which you've already said in the discuss.python.org thread. So, mentally, when I viewed the poll, I added one vote to IRV for you. I don't know whether Brett did too, but IRV was trailing too much for it to make a material difference.
As above, I expect it was really the discussion that drove the decision, of which the poll results were but a summary. But October is over, so Brett can speak for himself now ;-)
On Nov 2, 2018, at 8:22 PM, Chris Jerdonek <chris.jerdonek@gmail.com> wrote:
On Fri, Nov 2, 2018 at 5:09 PM Tim Peters <tim.peters@gmail.com> wrote:
[Chris Jerdonek <chris.jerdonek@gmail.com>]
It would have been nice to know beforehand if the results of the poll were going to change the PEP.
Don't look at me ;-) Like I said, "I'm not in charge of anything", and I had no input in changing PEP 8001 beyond contributing to the message thread, same as everyone else.
My reply was to Brett and not to you. If I had known the poll was going to be binding, I could have made an effort to participate in the discussion and try to sway people. As it was, the discussion was started and dominated by people who were against IRV. They are the most motivated to change things, and they're also the ones most motivated to participate in the poll. I couldn't afford to participate in such a discussion otherwise, as I said in the discussion. There are already 98 messages -- many of which are lengthy -- not to mention messages in other threads. It would take a lot of time and emotional energy to engage in such a discussion.
--Chris
I don’t believe the poll *was* binding, certainly I suspect that if the results of the poll had been say, tied instead of a blowout that even if Condorcet had barely won out, that the PEP would not have changed (other than to update that while there were other methods, discussion around them compared to IRV was inconclusive). Rather I think that the poll and the entire discussion was weighed, both of which provide different signals (discussion tends to overweight people who are more passionate, whereas the poll takes very little effort to participate in, but tends to overweight people who don’t really care).
Honestly, I’m not sure what you thought the point of the discussion was if not to advocate that the PEP itself should change and thus a possible outcome of that was that the PEP would change. Why else would that discussion exist? I can sympathize with being unable to participate due to time constraints, but we also have to weigh in realities like we’re never going to be able to structure such a discussion such that 100% of people are able and willing to participate in it, the best you can do is try to structure it to give everyone as much chance as possible.
The selection of a voting mechanism ended up going through these layers:
- In person discussion at an event in the West Coast USA.
- Online discussion largely in discourse, but slightly on python-committers as well.
- An online poll on discourse, with notification to python-committers.
Of those, (1) selected IRV and while I was not there, I get the send that there wasn’t a strong preference for IRV in that meeting, rather it was better than plurality and something the attendees were familiar with. (2) seemed to me (and I may be biased) to heavily weight towards a “Anything but Plurality or IRV” direction, and (3) ultimately confirmed that.
While not everyone might not have gotten to have their voice heard, the discussion and the poll was accessible to any committer who could participate via online (which I suspect is most of them) with the barest amount of investment being to vote in the poll and otherwise ignore the discussion.
I would also point out that while the poll itself was run via the Approval voting method [1], looking at the numbers it’s not hard to come to the conclusion that it’s hard to suggest that the *method* used by the poll gives us invalid results. For instance, if we had instead run the poll using IRV instead of Approval *and* we assume that every single person who approved of IRV would have ranked it first (and anyone who didn’t approve of IRV at all would have ranked it last)… then IRV still would have lost even if the poll was run via IRV.
Unfortunately, It’s hard to know exactly how the voting mechanism would have affected the other results because while IRV was “disapproved” by a significant margin, the other ones were not.
However, since the poll was run using Approval, it’s hard for someone advocating for the Approval method to say that the results are invalid due to the method used, since it was their desired method that chose a method other than Approval.
I suspect folks who prefer Condorcet are not going to complain too much about the poll using Approval, since it fair and away preferred Condorcet (21 of the 25 voters were OK with Condorcet) although it’s *possible* that the 20 people who were Condorcet voters would not have ranked it first, but that it was everyone’s second choice. Though if their first choice was Approval, see above!
Really, 3-2-1 is the only one that it feels to me like could really argue about the tally method of the poll. The poll wasn’t run with their preferred method (like anyone who preferred Approval), they didn’t win, their loss wasn’t so great that they would have, for sure, lost under their own method [2], and if everyone who approved of them had picked them as their first choice, that’s roughly half of the people taking the poll. Fortunately I can say as one of the people who approved of 3-2-1, it would *not* have been my first choice, which pushes it from 12 to 13, to 11 to 14 which makes it more unlikely that 3-2-1 would have won in any other method as well.
Fortunately, the margins of the poll are such that the outcome is unlikely to have changed by having run the poll under a different method.
[1] Largely because that’s what discourse polls supported, plus getting into a discussion about choosing the method we use to choose the method that we use to choose the method that we use to choose the method that we use to choose the PEP is an unsolvable, infinite problem. [2] We might be able to compute this by assuming approval = +1, disapproval = -1 and then running the simulation, but that’s more effort than I feel like putting in.
[Donald Stufft <donald@stufft.io>]
... Really, 3-2-1 is the only one that it feels to me like could really argue about the tally method of the poll.
Since I suggested 3-2-1 to begin with, let me assure you that Approval for the poll was fine with me. Heck, I didn't even once object that the pool creator thought so little of 3-2-1 that he didn't even name it correctly ;-) (I _assume_ the "1-2-3" in the poll was intended to be "3-2-1").
... Fortunately I can say as one of the people who approved of 3-2-1, it would *not* have been my first choice,
Nor mine! STAR would have been my first choice, but it didn't even appear in the poll (3-2-1 is just too new to trust yet). As is, "pure Condorcet" was my first choice, which happened to be the winner, so I can hardly complain.
Everyone who has spoken up on my behalf is right: I personally never viewed the poll as binding. When I first suggested doing the poll my schedule outline included a day to discuss the results as never considered it something that was an objective thing to follow (I think we ended up with about two days in the end as no one else volunteered to update the PEP faster than me getting to it on Friday). Had it been close I would never have suggested changing the PEP to help keep this discussion to a minimum (which is why I personally pushed back any changes to the PEP to begin with).
But as Donald points out below, the results were very clearly in Condorcet's favour no matter how you wanted to measure things, whether it was by the poll or "reading the room" based on how people seemed to be reacting to the IRV selection to begin with. Since finding a voting system that everyone is happy with appears impossible we had to choose something, and with a clear preference from those that participating in the process I decided to update the PEP -- with a prior announcement on that thread that I was going to in order to provide people time to object -- to represent what seemed like the closest thing we came to consensus to.
On Fri, 2 Nov 2018 at 18:04, Donald Stufft <donald@stufft.io> wrote:
On Nov 2, 2018, at 8:22 PM, Chris Jerdonek <chris.jerdonek@gmail.com> wrote:
On Fri, Nov 2, 2018 at 5:09 PM Tim Peters <tim.peters@gmail.com> wrote:
[Chris Jerdonek <chris.jerdonek@gmail.com>]
It would have been nice to know beforehand if the results of the poll were going to change the PEP.
Don't look at me ;-) Like I said, "I'm not in charge of anything", and I had no input in changing PEP 8001 beyond contributing to the message thread, same as everyone else.
My reply was to Brett and not to you. If I had known the poll was going to be binding, I could have made an effort to participate in the discussion and try to sway people. As it was, the discussion was started and dominated by people who were against IRV. They are the most motivated to change things, and they're also the ones most motivated to participate in the poll. I couldn't afford to participate in such a discussion otherwise, as I said in the discussion. There are already 98 messages -- many of which are lengthy -- not to mention messages in other threads. It would take a lot of time and emotional energy to engage in such a discussion.
--Chris
I don’t believe the poll *was* binding, certainly I suspect that if the results of the poll had been say, tied instead of a blowout that even if Condorcet had barely won out, that the PEP would not have changed (other than to update that while there were other methods, discussion around them compared to IRV was inconclusive). Rather I think that the poll and the entire discussion was weighed, both of which provide different signals (discussion tends to overweight people who are more passionate, whereas the poll takes very little effort to participate in, but tends to overweight people who don’t really care).
Honestly, I’m not sure what you thought the point of the discussion was if not to advocate that the PEP itself should change and thus a possible outcome of that was that the PEP would change. Why else would that discussion exist? I can sympathize with being unable to participate due to time constraints, but we also have to weigh in realities like we’re never going to be able to structure such a discussion such that 100% of people are able and willing to participate in it, the best you can do is try to structure it to give everyone as much chance as possible.
The selection of a voting mechanism ended up going through these layers:
- In person discussion at an event in the West Coast USA.
- Online discussion largely in discourse, but slightly on python-committers as well.
- An online poll on discourse, with notification to python-committers.
Of those, (1) selected IRV and while I was not there, I get the send that there wasn’t a strong preference for IRV in that meeting, rather it was better than plurality and something the attendees were familiar with. (2) seemed to me (and I may be biased) to heavily weight towards a “Anything but Plurality or IRV” direction, and (3) ultimately confirmed that.
While not everyone might not have gotten to have their voice heard, the discussion and the poll was accessible to any committer who could participate via online (which I suspect is most of them) with the barest amount of investment being to vote in the poll and otherwise ignore the discussion.
I would also point out that while the poll itself was run via the Approval voting method [1], looking at the numbers it’s not hard to come to the conclusion that it’s hard to suggest that the *method* used by the poll gives us invalid results. For instance, if we had instead run the poll using IRV instead of Approval *and* we assume that every single person who approved of IRV would have ranked it first (and anyone who didn’t approve of IRV at all would have ranked it last)… then IRV still would have lost even if the poll was run via IRV.
Unfortunately, It’s hard to know exactly how the voting mechanism would have affected the other results because while IRV was “disapproved” by a significant margin, the other ones were not.
However, since the poll was run using Approval, it’s hard for someone advocating for the Approval method to say that the results are invalid due to the method used, since it was their desired method that chose a method other than Approval.
I suspect folks who prefer Condorcet are not going to complain too much about the poll using Approval, since it fair and away preferred Condorcet (21 of the 25 voters were OK with Condorcet) although it’s *possible* that the 20 people who were Condorcet voters would not have ranked it first, but that it was everyone’s second choice. Though if their first choice was Approval, see above!
Really, 3-2-1 is the only one that it feels to me like could really argue about the tally method of the poll. The poll wasn’t run with their preferred method (like anyone who preferred Approval), they didn’t win, their loss wasn’t so great that they would have, for sure, lost under their own method [2], and if everyone who approved of them had picked them as their first choice, that’s roughly half of the people taking the poll. Fortunately I can say as one of the people who approved of 3-2-1, it would *not* have been my first choice, which pushes it from 12 to 13, to 11 to 14 which makes it more unlikely that 3-2-1 would have won in any other method as well.
Fortunately, the margins of the poll are such that the outcome is unlikely to have changed by having run the poll under a different method.
[1] Largely because that’s what discourse polls supported, plus getting into a discussion about choosing the method we use to choose the method that we use to choose the method that we use to choose the method that we use to choose the PEP is an unsolvable, infinite problem. [2] We might be able to compute this by assuming approval = +1, disapproval = -1 and then running the simulation, but that’s more effort than I feel like putting in.
python-committers mailing list python-committers@python.org https://mail.python.org/mailman/listinfo/python-committers Code of Conduct: https://www.python.org/psf/codeofconduct/
[Chris Jerdonek <chris.jerdonek@gmail.com>]
My reply was to Brett and not to you.
So it was! I missed that - I just noticed that the vast bulk of the text I was replying to was a quote of my message here about the poll. I should have checked.
If I had known the poll was going to be binding,
As before, I had - and have - no reason to believe the poll was binding. It did, however, fairly reflect the sentiments expressed in the long thread of which it was a part - except for not recording your opinion, but because you didn't vote.
I could have made an effort to participate in the discussion and try to sway people. As it was, the discussion was started and dominated by people who were against IRV. They are the most motivated to change things, and they're also the ones most motivated to participate in the poll. I couldn't afford to participate in such a discussion otherwise, as I said in the discussion. There are already 98 messages -- many of which are lengthy -- not to mention messages in other threads. It would take a lot of time and emotional energy to engage in such a discussion.
Decisions are often driven by people who do give the time and emotional energy to discussing the issues at length. It's not like there was universal agreement in the thread - there was lots of give & take. IRV "lost" because _nobody_ spoke for it. About 40% of the core developers who have an account on discuss.python.org did vote in the poll, so it's not like it was just a tiny percentage of developers who made their opinion known. And we know some didn't vote because they couldn't care less how the vote is run (e.g., Guido appears to be in that category).
I'd be concerned it there were evidence that there _might_ be widespread support for the PEP as it was originally written - but I just don't see any. Now that Brett announced the change, you're - so far - the only one objecting to the change.
I'm not a fan of Condorcet methods myself (but because of their conceptual complexity - their results are fine), but even I'm not complaining ;-)
participants (6)
-
Brett Cannon
-
Chris Jerdonek
-
Donald Stufft
-
Steven D'Aprano
-
Tim Peters
-
Victor Stinner