Some additional perspectives from someone not on Iceberg, but who's
looked into a lot of ASF project communities.
On 2024/06/25 17:54:48 Tyler Akidau wrote:
...snip...
1. I like the idea of guidelines on committership and PMC membership, but
worry about overspecification limiting who might be considered. Just
something to be careful about.
As you may have seen other ASF folks say: lowering the bar to adding
committers is always a good thing. Gatekeeping productive and helpful
contributors (of anything, not just code!) out of being committers helps
no-one, presuming there's enough of an active community to keep
reviewing PRs and making releases.
...snip...
3. PMC chair rotation: it seems a bit silly to have to consider this when
the chair role is largely meant to be an administrative function, but given
that the chair in every project I've seen has indeed carried outsized
influence as a result, it does seem like a healthy exercise.
Plenty of projects start with an expectation the PMC chair will rotate
annually by vote. It's also good for long-term project health, since
different chairs bring slightly different perspectives for writing
reports and interfacing with the ASF board.
5. I personally prefer majority voting rules for an effort the size of
Iceberg. The single veto power in consensus votes just makes it too easy
for one person to filibuster changes that most of the community would like
to see move forward. Beyond a certain point, consensus just isn't
practical, IMO. It also motivates folks who care deeply about their -1 to
rally support for their position, sharing the burden of influence across
both sides of the discussion. With consensus votes, the person who is -1
doesn't have to convince anyone, they can just block, and all of the burden
of advocacy falls on the +1s.
Just to be clear: -1 vetoes on code modifications *must* have some
specific and recognizable technical justification. If a vetoer can't
explain what the change proposed breaks (security, performance,
tests/compatibility, etc.), then it's not a valid veto.
https://apache.org/foundation/voting.html#Veto
With larger code changes, it may seem like it's not always obvious if a
technical reason to not add something is really valid. But if we focus
on what's best for the largest number of users of Apache Iceberg, the
answer should usually be obvious. Does it add something useful, without
harming compatibility, performance or security? Then it's probably a
good thing to add.
Hope that helps!
--
- Shane
Member
The Apache Software Foundation