On Sat, Feb 2, 2019 at 10:20 PM Zeev Suraski <z...@php.net> wrote:

> On Fri, Feb 1, 2019 at 7:14 PM Dan Ackroyd <dan...@basereality.com> wrote:
>
> > On Thu, 31 Jan 2019 at 13:44, Zeev Suraski <z...@php.net> wrote:
> > >
> > > Without further ado, an RFC that’s attempting to comprehensively solve
> > many of the issues that have plagued our RFC process since it was hastily
> > introduced in 2011:
> >
> > Hi Zeev,
> >
> > Please can you very clearly state what problem you are trying to solve
> > by changing the rules about who can vote.
> >
> > Without presenting the problem, and why your solution is the correct
> > one, it's not obvious that the change being proposed is either needed
> > or the right one choice.
> >
>
> Fair enough, I've heard that question from several others.
>
> I'll use your email to clarify my motivation for the RFC, primarily on the
> voting eligibility part - in slightly more detail than my reply to Nikita
> on the other thread.
>
> Beginning with the latter, the reality of things that the Voting RFC of
> 2011 was written in what was supposed to codify, and also structure a bit
> more the already existing process of decision making that we had prior to
> it.  The structuring was mainly through the introduction of a voting
> process, as well as some elements such as a mandatory discussion period.
> However, it quickly became apparent that this RFC, that was written with a
> certain 'working knowledge' of what was already happening de-facto, and
> assuming these would continue - became treated as if it was the U.S.
> constitution, and whatever wasn't in it - did not exist.  Moreover - even
> elements which were in fact in it (such as the voting eligibility), became
> ignored - exclusively for the simple reason of the way the Wiki software,
> used for voting, was implemented.
>
> Edge cases came up over the years in all sorts of manners.  The most recent
> edge case which isn't handled by the terse, laconic 2011 Voting RFC is the
> Abolishing Narrow Margins RFC, which went straight from de-facto
> hibernation into a "we're about to vote" stage overnight.  But there were
> many others (and yes, one of the common ones was 'how do we choose between
> 50%+1 and 2/3', but it was by no means the only one).  The goal here is to
> provide clear cut answers to these cases, instead of leaving it up to the
> RFC author to decide.  Over the years, it became clear that RFC authors had
> not only the ability to decide what goes into the RFC, but to also decide
> much of the process surrounding the discussion and acceptance of the RFC -
> filling the major voids that were present in the terse 2011 Voting RFC on
> demand.
>
> In terms of Voting Eligibility, here's what was written in the original
> RFC:
>
> ---quote---
> There's no way around this 'small' issue. Changes made to the PHP language
> will affect millions of people, and theoretically, each and every one of
> them should have a say in what we do. For obvious reasons, though, this
> isn't a practical approach.
>
> The proposal here is for two audiences to participate in the voting
> process:
>
> - People with php.net VCS accounts that have contributed code to PHP:
> - Representatives from the PHP community, that will be chosen by those with
> php.net VCS accounts
>    - Lead developers of PHP based projects (frameworks, cms, tools, etc.)
>    - regular participant of internals discussions
> ---end quote---
>
> Now, there are several things you can tell from the way this topic is
> treated that are evident from this text.  First, that the topic of Voting
> Eligibility wasn't taken lightly, nor was there any intention to provide a
> very low bar on who gets to vote.  Secondly, which is a lot more
> unfortunate, it's very terse and laconic - like the rest of the RFC - e.g.,
> when stating how the folks from the the 2nd group of eligible voters will
> be chosen - even though it's evident that the idea was that they *will* be
> chosen, in one way or another;  Heck, even the first group is open to
> interpretation from the way it's written (although the intention was clear)
> - code contributors to PHP - was supposed to mean folks that truly
> contributed code to PHP, and not every person with a VCS account (it's
> clearly a subset, even from the poor way it's written).  Bear in mind that
> Pierre Joye, that promoted this RFC - believed that we will be able to
> figure these parts out as we go along.  De-facto, what happened was very
> different - overnight, because of the way the Wiki software was
> implemented, anybody with a VCS account became an eligible voter, with the
> same weight as Rasmus, myself, Nikita, or whomever else.  This was never
> the intention.
>
> What was the intention?  In a nutshell:
> - Code contributors to php-src get a vote
> - Everyone with a VCS account (wider audience) get the ability to choose
> folks that are beyond the first group, that will also get a vote (with the
> assumption that the number of folks elected in this way will not be nearly
> as high as the number of folks with VCS accounts, and in fact, a lot lower
> than the first group of code contributors - essentially, it was to bring
> outside voices, but not effectively overtake and marginalize the voice of
> the code contributors).  Regrettably, how that was to take place was left
> out of that laconic RFC - in the belief that "we'll figure it out".
>
> The goal of the voting eligibility section in the updated RFC is to clarify
> this.  It's clear we have more work to do in this front here - but ignoring
> this elephpant in the room shouldn't be an option anymore.  It's just as
> important, and arguably a lot more important, than the voting thresholds.
> To me, the two are clearly interlinked, as is the potential question of a
> quorum.
>
> The barrier to obtaining a vote today is ridiculously low.  Mostly anybody
> I spoke with that I shared how easy it was to get a vote that's equal to a
> person that's been contributing for years and has proven knowledge about
> PHP for ages - was shocked.  And indeed, our system where a person can
> become an eligible voter almost overnight has no parallels (to the best of
> my knowledge) in any other major OS project.  Virtually all of them are
> some form of meritocracy, and yes, that's despite all of them having impact
> on millions of users.  The situation where an open source project effects
> millions of users isn't uncommon - it's standard in virtually all major OS
> projects - and yet, none of them makes it this easy to have voting rights,
> literally overnight, and with 100% equivalence to folks who have
> contributed for years - the way PHP de-facto does.
>
> We were *supposed* to be more advanced than other projects, by providing
> folks that aren't code contributors with a way to also influence votes -
> and I still think it's worth exploring ways of doing it.  But at no point
> was the intention to lower the bar so much, providing a vote for anybody
> with a VCS account (which is very, very easy to get) with a vote.  This is
> unfair to ones who actually take the time and effort to work on the project
> itself.
>
>
> Additionally, giving a vote to members of PHP-Fig is not a good idea
> > for multiple reasons.
> >
>
> I'm not sold on it being a good idea either, especially seeing the level of
> controversy it stirred here (by the way - it accounts for most of the
> controversy on this thread, as far as I can tell - I think that the general
> idea of voting eligibility was actually supported by many folks replying to
> this thread, mainly because it's common sense and is present in all other
> major OS projects).
>
> I think we need to either come up with a mechanism - that's reasonably
> well-defined - to bring the 'voice of the masses' into the voting process,
> that would not be biased towards one particular group - or we simply stick
> with the first group only, with the reasonable assumption that they'll
> factor in what they hear from these masses during the discussion period as
> they come to vote.  That's mostly how all other major OS projects work.
>
> Another option might be going back to elements in the 2011 RFC (while
> clearly clarifying it).  Perhaps, defining some sort of a voting/election
> process where code-contributors can elect non-code-contributors that will
> also have a vote is a way to go.  What I definitely don't want to repeat,
> though, is having open-ended definitions.
>
> I'll reply to more elements in this thread later tonight - had an unusually
> busy weekend...
>
> Zeev
>

I just want to reiterate that there are other good ideas in this RFC that
would probably pass easily.  I strongly urge you to move the voting to a
separate RFC.

--Kris

Reply via email to