[Numpy-discussion] What is consensus anyway
Tue Apr 24 18:24:14 CDT 2012
On Apr 24, 2012, at 6:01 PM, Stéfan van der Walt wrote:
> On Tue, Apr 24, 2012 at 2:25 PM, Charles R Harris
> <email@example.com> wrote:
>>> Why are we having a discussion on NAN's in a thread on consensus?
>>> This is a strong indicator of the problem we're facing.
>> We seem to have a consensus regarding interest in the topic.
> For the benefit of those of us interested in both discussions, would
> you kindly start a new thread on the MA topic?
> In response to Travis's suggestion of writing up a short summary of
> community principles, as well as Matthew's initial formulation, I
> agree that this would be helpful in enshrining the values we cherish
> here, as well as in communicating those values to the next generation
> of developers.
>> From observing the community, I would guess that these values include:
> - That any party with an interest in NumPy is given the opportunity to
> speak and to be heard on the list.
> - That discussions that influence the course of the project take place
> openly, for anyone to observe.
> - That decisions are made once consensus is reached, i.e., if everyone
> agrees that they can live with the outcome.
This is well stated. Thank you Stefan.
Some will argue about what "consensus" means or who "everyone" is. But, if we are really worrying about that, then we have stopped listening to each other which is the number one community value that we should be promoting, demonstrating, and living by.
Consensus to me means that anyone who can produce a well-reasoned argument and demonstrates by their persistence that they are actually using the code and are aware of the issues has veto power on pull requests. At times people with commit rights to NumPy might perform a pull request anyway, but they should acknowledge at least in the comment (but for major changes --- on this list) that they are doing so and provide their reasons.
If I decide later that I think the pull request was made inappropriately in the face of objections and the reasons were not justified, then I will reserve the right to revert the pull request. I would like core developers of NumPy to have the same ability to check me as well. But, if there is a disagreement at that level, then I will reserve the right to decide.
Basically, what we have in this situation is that the masked arrays were added to NumPy master with serious objections to the API. What I'm trying to decide right now is can we move forward and satisfy the objections without removing the ndarrayobject changes entirely (I do think the concerns warrant removal of the changes). The discussion around that is the most helpful right now, but should take place on another thread.
More information about the NumPy-Discussion