-
Notifications
You must be signed in to change notification settings - Fork 0
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
Update governance model #56
Comments
Lets try and do the actual conversation at the hackathon, but some preparation before. |
@ivirshup what preparation did you have in mind? |
@scverse/core, summarizing what we discussed at the munich hackathon Things we (sort-of) agreed on
Things that need further discussion
|
Some thoughts:
|
Python does nominations and term limits for rotation. I don't think someone should be "randomly selected" for this. It's a bunch of work to just randomly assign.
I think NumFOCUS can help organize/ provide this for us |
I agree with all the points above but I wonder if, regardless the implementation of who takes part in the governance model, the time commitment is too long. I would be more in favour of a 6 months time limit, that could nevertheless be renewed. Wdyt? |
You'd still need to be willing to contest to be among the list of potential governance team members. Random choice would just replace the election process.
That would be amazing!
Happy to go with shorter limits. What do you think about imposing a limit on how many consecutive terms (one or two) one can serve? This is also a guarantee that one gets the chance to step down at some point without feeling guilty. |
I personally think that 6 months is too short. If people join the governance team that weren't as involved as all of us, it'll take them quite some time to get up to speed. That's like only 6 governance meetings! |
What @grst answered here. Also, organizing proper votes would be a loooot more work to ensure that it is transparent etc. I'm convinced that picking people randomly (of the pool of people that signed up for it!) is less work. |
Uhh, pretty sure this is antithetical to our mission and origin. Guilt based motivation is a key driver of open source development. |
I am confident that there are better sources of motivation :) What you're describing can enforce discipline. |
Yeah, but we don't have gobs of money |
on the other hand, this fast turnover enables more people to be exposed to such process/task and understand whether it suits them + enables flexibility for sitting governance members. I think faster turnover has really the benefit of increase diversity and exposure to/from the community, and also improve processes (e.g. streamline joining/leaving governance). I can see that it might have a detrimental effect on decision making and vision but I think the chances are quite smallas for big/long term decisions we'd probably want to have a solid community/devs support regardless of the sitting governance members. |
@giovp totally fair arguments, but I still lean more on my side thinking that the benefit of experienced people making decisions (we'll hopefully always have a few newcomers in the governance team) outweighs the "flexibility". Interested in what the others think. |
What does the governance team do? They'll do some funding stuff, but I would imagine in practice most funding decisions should be made by the sub teams. I feel like the biggest value of governance is coordination across sub teams without have members of all teams have to join a meeting every couple weeks.
I think there's also value of institutional knowledge around this stuff. But, I would like to really figure out what he governance team can do. As an open source community decision making tends to be pretty decentralized. It's ultimately a do-ocracy. So I don't want to overstate the power a governance team would have.
Flexibility is good, but I'd also say commitment is even more important for someone in a role with more power. Ideally we hit some balance Off the top of my head I would propose something like: governance team is the chair and co-chair from each sub team + steering council. One of these positions could cycle more quickly, but tbh probably leave it up to the sub team. We can make some rule about amount steering council and these roles can overlap (maybe a little, maybe none). |
I think that higher turnover + term limits is more sustainable long term as it insures more new people getting involved for two reasons:
Just because an experienced member is not on the governance team for a while, doesn't mean they can't be asked for advice. |
All seem valid points to me with pros and cons. I would be more in favor of what Lukas said about yearly rotations. This make sense practically IMO, as it ensures that elections or random selections will consistently occur in a designated month, say July, and outgoing members have until September to transition (I am saying random months). Also having a bit more time to adjust makes more sense I think, even in terms of recognition. Being a governance member for year, e.g. 2023. I also agree with Isaac. It needs to be very clear what the role and the tasks are. It sounds more scary than it is probably. |
With some help of GPT4, I reviewed all notes of the past governance meetings. Here's what we have been handling in governance meetings in the past:
Given that most of this is delegated to the dev/community teams it essentially boils down to
|
Governance models from similar communitiesBioconductor
One thing I would note here is that at least the technical team has resonsibilities about funding in their description. There is a "core team" which has members from multiple groups, but unfortunately no documentation that I could find. nf-corePangeo
Unfortunately, I don't think there is very centralized documentation on this. I know they are doing a bunch, but unclear to me how it's all organized. Astropy
Python |
We could frame this governance model update as a purpose-driven change, and my impression is that it makes sense in order to accommodate a larger core team while also keeping the discussions reasonable as not impede the decision-making process. For the latter, binary votes and raising objections don't seem to be the issue as those have been done asynchronously. So the purpose is to handle a potential future influx of people in relation to keeping discussions productive. The governance/dev/community split seems reasonable as already discussed on multiple occasions however I am wondering about the topic and responsibility split between those entities. For instance, so far it seemed sensible to conduct the governance meetings with the developers/maintainers of core packages as these packages seem to be the kernel of the consortium. The new model should either (a) explicitly move some of those interactions to the dev meetings or (b) keep core packages developers in the governance team. The former would thus repurpose the governance meetings as they are now (probably related to some of the @ivirshup's comments above), the latter would mean we could be inviting people to participate in the core scverse matters with intention, be it development, community, governance, or any combination of those. The former has an added bonus of immediately relieving [at least some of] the core maintainers from the governance overhead however the latter might help us to achieve the same objective in a more sustainable form. Thus I wonder if the latter is a more organic change at this point. Moreover, this discussion can have more moving parts if we consider people specifically hired through scverse to fill one of the many roles we have, e.g. funding or event management. This might develop into a separate discussion on roles somewhat akin to what @Zethson has mentioned above but I don't think we are there yet. |
As our team grows, we want to update our governance model to accomodate both developer and community roles in the core team.
TODOs
Related PRs
The text was updated successfully, but these errors were encountered: