Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[RFC 0043] RFC Steering Committee Rotation #43

Merged
merged 7 commits into from Jun 11, 2019

Conversation

globin
Copy link
Member

@globin globin commented Apr 24, 2019

This is a draft RFC to implement rotation for the RFCSC.

cc @grahamc @NixOS/rfc-steering-committee @ciil

Rendered Version

@globin globin added the status: open for nominations Open for shepherding team nominations label Apr 24, 2019
@globin
Copy link
Member Author

globin commented Apr 24, 2019

I nominate @grahamc @zimbatm @edolstra and @flokli for shepherding.

@Ericson2314
Copy link
Member

This is similar to how release managers rotate, and that's process has been a wonderful success, so +1 from me. [That isn't to say -1 to other systems, however. I'm just approving of this one.]

Copy link
Member

@domenkozar domenkozar left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good to me.

I wonder how many people have to google for the exact definition of "abdication" :) I know this is typical name nitpicking, but I'd much prefer to use resignation to make these text approachable to non-native English speakers.

@7c6f434c
Copy link
Member

@domenkozar as a non-native speaker with a large enough passive vocabulary I didn't pay attention to the word choice; now I looked up in a dictionary and maybe people who remember the exact definition would also think the text with «resignation» is easier to read (abdication implies some position held for life).

@globin
Copy link
Member Author

globin commented Apr 25, 2019

I have addressed the comments above.

Copy link
Member

@zimbatm zimbatm left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

As an outcome of this RFC, I would like the text to be added to the project's README or in any other document that acts the current RFC Steering Committee "constitution". Otherwise it's going to be difficult for new members to know the rules without reading all of the RFCs.

@7c6f434c
Copy link
Member

I guess we should nominate some more people as potential Shepherds, because it would be a bit weird to have an all-Tweag Shepherd team on this specific RFC…

@zimbatm
Copy link
Member

zimbatm commented Apr 26, 2019

good call @7c6f434c :)

@globin
Copy link
Member Author

globin commented Apr 28, 2019

Also nominating @lheckemann, @7c6f434c, @ryantm and @domenkozar.

Yeah, will add this to the README similar as #38 was to #36!

@globin globin changed the title RFC-0043: RFC Steering Committee Rotation [RFC 0043] RFC Steering Committee Rotation Apr 28, 2019
@7c6f434c
Copy link
Member

Re: nomination — thanks, I accept. But without promises that scheduling a sycnhronous chat will be easy. (But maybe reasonably fast responses to email will be enough anyway, and that I do promise).


Additionally to RFC 36 a new restriction formally comes into effect. In order
to avoid conflict of interest there is an upper cap of 2 members working for a
single employer.
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

  1. Does that mean that if a member changes employment in a cap-violating way, they are expected to resign (unless one of the two members from the new employment place prefers to resign themselves)? Should this be explicitly recorded?

  2. I want to have this question on the record: do we want to respect the other dimensions of conflict of interest? I think it would be feasible to ask that if a full SC of five members is being selected, at least one member of the incoming committee should have used Nix outside the single most popular setup (currently NixOS on x86_64). It would be a nightmare in a large election procedure, but for unanimous selection of successors it seems feasible.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

  1. I don't think it is necessary, but if someone cares to resign no one will stop them.
  2. I also think we don't have to specify this, as the RFCSC should always try and set up a balanced shepherding team, familiar with the affected parts and the RFCSC can realistically not cover everything themself.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

  1. I am OK with that, but then maybe reword it to say that there is a cap of appointing at most 2 people working for the same employer? Because right now it seems to mean my interpretation.

  2. It might be easier to evaluate experience (and relevance of that experience) of people working on special use cases for a SC including someone who doesn't use the «default setup» exclusively. But I do not insist.


Each year at the first meeting of the RFCSC in December (starting 2019,
approximately a year after establishment in RFC 36) they unanimously decide on
the succeeding committee members. If unanimous agreement cannot be reached, the
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Does ths old SC hold one more meeting (so that the new SC has a week to agree on their meeting schedule without interruption in RFC processing)? Or does the old SC continue to work until Christmas-New Year week (when everybody expects interruptions anyway)?

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

+1 for "new year, new committee" :)

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It takes immediate effect at the beginning of December.

The motivation is to not tie things around the new year when there's already lots of personal errands to be completed :)

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Immediate takeover has the problem of coordination; from the point of view of end-of-year, second half of December and first half of January are all bad anyway.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

(Just in case: the literal current text of RFC explicitly sets January as the takeover time)

Copy link
Member

@lheckemann lheckemann left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

👍 overall! I have a couple of mostly small and variably pedantic suggestions for the PR phrasing.

Also, I accept @globin's shepherd nomination :)


With the implementation of [RFC
36](https://github.com/NixOS/rfcs/blob/master/rfcs/0036-rfc-process-team-amendment.md)
the RFC Steering Committee has been established. Among others, future work for
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Nit: among others is redundant because included doesn't imply completeness

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

That's debatable, at least from a common law framing where the set phrase "included but not limited to" sometimes does kind of imply the completeness of includes (and is an instance of the legal principle expressio unius est exclusio alterius). That is, of course, just an equally debatable nitpick in the other direction 😄. I do think we can simply remove the among others without loss of meaning. We're not negotiating a liability waiver, after all. For me personally however, it adds to the flow just enough to make it worthwhile.

# Motivation
[motivation]: #motivation

With the implementation of [RFC
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The RFC Steering committee has been established by RFC 36

? More straightforward phrasing.


The RFC Steering Committee shall always have five members. If membership drops
below five members (for example by resignation of a member as detailed below), a
new member shall directly be elected after a nomination period of at least two
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Is "directly" needed here? I'm interpreting it as "immediately", but it could lead to confusion ("direct democracy"), and the "after" adequately describes the timeframe IMHO.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Maybe shall be elected without delay would make this clearer?


## Ending membership
A member can end their membership in the Steering
Committee by either of the following four mechanisms, ordered from most
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Feels awkward to specify the relative frequency of membership-ending mechanisms :) maybe leave the explanation of the order out?

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I guess the order is intended to vaguely guide the norms and expectations without creating formal rules.

1. At the end of an election period.
2. Resignation
3. Unanimous vote by all other members after having missed two or more regular
meetings without giving an appropriate excuse.
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Rules nit: what if two members are absent?

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Doesn't have to be on the same meeting, vote would be cast per member.

Copy link
Member

@vcunat vcunat Jun 2, 2019

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Do you mean to add that

If the number of members of the RFCSC drops below 4 people

it also shouldn't be able to apply (3) or (4)? (Though any relevant situation would probably be a "political crisis" anyway.)

If it was about members being present, I thought it's clear that "all other" means all other on the committee (not just present ATM).

Copy link
Member

@7c6f434c 7c6f434c Jun 2, 2019

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think the natural interpretation here is «all the other current members», I think reaching (3) instead of (2) is unfortunate and reaching (4) is outright bad whatever you do, and I think in both cases it is less bad to thave the possibility of removal before selecting replacement.


Each year at the first meeting of the RFCSC in December (starting 2019,
approximately a year after establishment in RFC 36) they unanimously decide on
the succeeding committee members. If unanimous agreement cannot be reached, the
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

+1 for "new year, new committee" :)

Each year at the first meeting of the RFCSC in December (starting 2019,
approximately a year after establishment in RFC 36) they unanimously decide on
the succeeding committee members. If unanimous agreement cannot be reached, the
RFCSC votes on each nominee, ranking them and further hold run-off votes if
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The process (and grammar — should that be "holds"?) is a bit unclear here.


As this process is to be implemented over a fairly long time frame (a year for
each iteration), this framework might have to be revised at a later date,
incorporating any learnings made over these years.
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

<personal-opinion> "learnings" is a nasty businessese word, "experience" would be better.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@leckermann btw you can click the "plus minus" button when commenting to suggest a wording change like this :)

Steering Committee can be established or ended, so as not to make membership a
mandate for life, allowing a healthy rotation of members, and offering several
procedures to always keep the Steering Committee capable of making decisions
such that the RFC process can keep running smoothly at all times.
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Run-on sentence! 🚨 The "mandate for life" and "healthy rotation" bits are also just restating that the committee will change and that that is in some vague way good. Here's an attempt at rephrasing with a bit more structure and justification:

This RFC provides mechanisms for beginning and ending Steering Committee membership. The purpose of this is to ensure that the committee:

  • continues to consist of well-informed and motivated members;
  • continues to represent the evolving community;
  • remains active and keeps the RFC process running.

@ryantm
Copy link
Member

ryantm commented Apr 29, 2019

I accept @globin 's nomination.

@lheckemann
Copy link
Member

The meeting to remove a member from the RFCSC shall constitute a quorum without consideration for the number of members present.

So could a quorum consisting entirely of non-members remove members? 🤔

Yeah, I think good faith makes sense here :D

@7c6f434c
Copy link
Member

7c6f434c commented May 9, 2019

@lheckemann if there was no agreement in RFCSC on moving the meeting and the regularly scheduled meeting is only attended by non-members, maybe we can count that as «no objections»…

I agree with the interpretation that «agreement of all the other members» means «lack of objections, with objections accepted both by email and at the meeting itself», so there is probably no need to change the RFC.

I still wanted every point raised to be explicitly acknowledged, thanks to everyone for your cooperation.


## Ending membership
A member can end their membership in the Steering
Committee by either of the following four mechanisms:
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Maybe rephrase as «Membership of a member in the Steering Committee can end by …»

(I tried to do a two-line suggestion and failed)

@Mic92
Copy link
Member

Mic92 commented May 16, 2019

We decided on @lheckemann as leader

@7c6f434c
Copy link
Member

@globin what's your opinion on rephrasing?

@globin
Copy link
Member Author

globin commented May 21, 2019

Updated

@7c6f434c
Copy link
Member

@globin Thanks

@lheckemann @ryantm @domenkozar I now see no outstanding questions (even minor ones), and the last new comment related to text was more than ten days ago. As far as I see, nobody has objected to the RFC in general. I think it is time to vote on starting the FCP with disposition to accept. For the record: I am in favour.

@ryantm
Copy link
Member

ryantm commented May 22, 2019

I sign off on @7c6f434c 's motion to enter the FCP with disposition to merge.

@ryantm
Copy link
Member

ryantm commented May 23, 2019

@lheckemann @domenkozar Can you indicate your sign off or objection to entering FCP?

@domenkozar
Copy link
Member

@ryantm I'll have time to reread the RFC tomorrow and sign off.

Copy link
Member

@domenkozar domenkozar left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

1. At the end of an election period.
2. Resignation
3. Unanimous vote by all other members after having missed two or more regular
meetings without giving an appropriate excuse.
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Doesn't have to be on the same meeting, vote would be cast per member.


Each year at the first meeting of the RFCSC in December (starting 2019,
approximately a year after establishment in RFC 36) they unanimously decide on
the succeeding committee members. If unanimous agreement cannot be reached, the
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It takes immediate effect at the beginning of December.

The motivation is to not tie things around the new year when there's already lots of personal errands to be completed :)

@@ -36,8 +36,8 @@ of members of the RFCSC drops below 4 people, it cannot proceed with shepherd
team selections until new members have been selected.

## Ending membership
A member can end their membership in the Steering
Committee by either of the following four mechanisms:
Membership in the Steering Committee can end by either of the following four
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

nit: s/either/any/

Copy link
Member

@lheckemann lheckemann left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'm also in favour of the RFC as it stands (and maybe fixing that one tiny remaining phrasing issue), so I believe we can declare the FCP as open, with disposition to accept!

FCP start: 2019-05-28
FCP end: 2019-06-07

@ryantm
Copy link
Member

ryantm commented May 30, 2019

@NixOS/rfc-steering-committee Who is in charge of making sure an FCP is "advertised widely"?

@shlevy
Copy link
Member

shlevy commented May 30, 2019

@ryantm Shepherd team/leader.

@nixos-discourse
Copy link

This pull request has been mentioned on Nix community. There might be relevant details there:

https://discourse.nixos.org/t/rfc-0043-rfc-steering-committee-rotation-fcp/3065/1

Copy link
Member

@vcunat vcunat left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

👍 The nits I see on the current version don't seem important (to my approval).

@edolstra edolstra added status: FCP in Final Comment Period and removed status: in discussion labels Jun 6, 2019
@lheckemann
Copy link
Member

The FCP has passed without any objections 🎉 If anyone with the appropriate permissions could merge the RFC and fix "either" → "any", I would be very grateful :)

@globin globin added status: accepted and removed status: FCP in Final Comment Period labels Jun 11, 2019
@globin globin merged commit 2ea88d8 into NixOS:master Jun 11, 2019
@globin globin deleted the rfcsc-rotation branch June 11, 2019 14:32
KAction pushed a commit to KAction/rfcs that referenced this pull request Apr 13, 2024
* RFC-0043: RFC Steering Committee Rotation

* RFC-0043: formatting

* RFC-0043: abdication -> resignation

* RFC-0043: add voting as possible alternatives

* RFC-0043: address reviews

* RFC-0043: rephrase membership ending sentence

* RFC-0043: either -> any
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet