Zulip setup coordination | 80 Members | |
| Coordination to setup https://nixpkgs.zulipchat.com/, see https://github.com/NixOS/foundation/issues/143 | 22 Servers |
| Sender | Message | Time |
|---|---|---|
| 20 Feb 2024 | ||
| A typical passed RFC looks like a search for a least-disliked outcome, not most-liked. Even local goals are never actually aligned and won't be aligned. Global goals and vision can only serve to fragment. | 20:22:17 | |
| 20:51:29 | ||
| I'm more optimistic about the benefits of having some explicit goals. They can serve to unify and motivate as well as having the risk of fragmentation. We should consider if we want to or not. At the moment, I think we should. | 21:10:31 | |
| By now, I think any claim that a goal can unify should come with an explanation where such an optimistic view comes from | 21:16:28 | |
It could mean as well that the RFC process or other processes in place cause people to dis-align and are dysfunctional to some extent. I find it hard to take the impossibility of a shared vision and shared goal to be the ultimate conclusion. It would seem to me that all collaborative social interaction would break down entirely at this point. So if collaborative social interaction exists, and there is a lot of that in nixpkgs every day, then some people at least align some of the time with other people in goal and vision. Which raises the question what causes them to dis-align in some cases so that these interactions become a "search for a least-disliked outcome". So I am with tomberek on this I guess. I am more optimistic about the possibility of shared goals. Dysfunctional processes in place might make it harder of course.
I think I somewhat gave one: without the possibility of shared goals at least on a limited basis, how can you have collaborative social interaction? And if it is only to fix a package together that you use on a daily basis but is broken after a change upstream... that's a shared goal already. | 21:26:42 | |
This is an unfounded conclusion. Ideally, for each change there are some people who are interested in it, and many others — maybe many more — for whom the change is useless, but whatever no harm from it. Unfortunately, this ideal is not achievable and the changes will have negative impact on people who see no benefit, but we try to reduce such impacts, so that sharing the useful parts of this ball of questionable trade-offs is still preferable to splitting. | 21:30:47 | |
| But this doesn't need goals to be widely shared, much less near-uniformly | 21:32:03 | |
| I don't think my "conclusion" is unfounded at all. You went very far before, basically denying all goal-alignment between people even on a local level. And I think there is just no evidence for that. So I wanted to call that into question.
That is a different story, yes. On which level do the goals have to be shared? Local, somewhere in the middle, or global? Maybe we should focus on this issue, and not dispute that people can have shared goals and also do from time to time collaborate. Because I think it is fairly obviously true that human beings are on average social enough to be able to coordinate their actions to some extent.
But that depends crucially on how the comparison actually is between the trade-offs and splitting to you in particular. And that again depends on your goals. Because stuff is only better or worse in relation to some goal. And in a way this clarification of what goals people have in mind was what tomberek wanted to hear initially as a starting point: "Please consider the goals you personally have for Nix" That is what he said. | 21:44:28 | |
| anyways, I hope that helps. I thought his initial point was valuable to explore | 21:45:54 | |
| (but I have to leave now, so let's see what comes next, if anything) | 21:46:23 | |
«goals that governance should be aiming for» is something project-scale | 21:47:37 | |
| potentially yes | 21:47:48 | |
| but this channel is called "Nix Platform Governance" so... | 21:48:05 | |
| * but this room is called "Nix Platform Governance" so... | 21:48:11 | |
| And project-scale actually-shared goals are exactly what we have always failed at. | 21:49:14 | |
And also this — this is not disalignment, RFCs figure out time and time again that not everyone sees the proposed changes as useful, so the changes need to be made less harmful at least. | 21:50:45 | |
| It's not dysfunction, it's actually acknowledging and solving the real question. | 21:51:16 | |
| but if my goals and your goals are fully contradictory, then making things less and less harmful to both will end up doing nothing at all and no one gets anything. So complete inaction will be the result. However if our goals are actually contradictory, that we can only know if we acknowledge what our goals are. | 21:52:57 | |
| anyways, have a good night everyone! | 21:53:04 | |
| 21 Feb 2024 | ||
| I'm surprised by this. We are discussing governance, a thing that only makes sense when trying to manage limited resources; maintainer attention, money, contributors time, official status, infrastructure, so forth. Having a guiding principle helps when tradeoffs need to be judged. I agree that we have often failed at project-scale goals. Perhaps exactly because we've not set any, or talked about them. I dont mean that if we establish such goals that they are to the exclusion of everything else. My optimism for the benefit of being more explicit about vision+goals is that it seems to help get things done and aid in predictability. Already a few teams have started to write down what they are trying to accomplish and publish them, should they stop? Perhaps they are focusing on the wrong things, how would we know? Jonas has established and communicated a personal goal of unblocking efforts, that is way more effective due to knowing about it. Knowing the NAT was going to work on one project at a time managed expectations. Knowing docs would be overhauled was beneficial. Knowing that the S3 cache needed dedicated time to fund, coordinate, and work on was useful. Marketing got contributors by communicating a goal of overhauling the website implementation. Nixpkgs commits to two NixOS releases each year. If we explicitly want to set no direction for the ecosystem, even that statement would help make it clear for people to not expect project-level things to get done/prioritized - help manage those expectations. | 07:05:05 | |
They are. And they are not. Whatever they are doing are right things for them and wrong things for someone else. Just not wrong enough to actively oppose.
And just to make a point, the releases are a small pure negative in terms of what I use from the project. This is sincere. I just know people actually care about releases existing, and not always mistakenly, so whatever.
They can get done — if a committed enough team of people who do wnat them can convince the others these things are not too harmful, and then carry out the task. | 07:19:50 | |
Which, to reiterate my earlier point, in practice might just mean that nothing can get done because of a lack of higher level goals and a lack of decision making processes that would implement them in case of lack of consensus. So concretely, if you find enough people to make a decent initiative appear very harmful, everything just stalls. This approach appears to me to have a strong tendency to lead to extreme risk aversion since people have a tendency to confuse apparent risk with harm sadly. Which I think is a shame. | 12:34:49 | |
| Governance test; in your view, who can make the decision whenever we allow unfree packages to be built on Hydra or not? It's not urgent, but I think is a good example of something that has been lingering and nobody feels empowered to make a decision ( see https://github.com/NixOS/nixpkgs/issues/83884 ). My interest is not to debate on the question, but what mechanism should be used to reach a conclusion. | 13:38:12 | |
| I think that is a really interesting question and a really good example I feel. Do you have some already existing mechanism in mind that could lead to a conclusion? In the debate on GitHub it appears that Graham was of the opinion that "We'd need sign-off from the NixOS Foundation which is responsible for supporting the infrastructure". So the NixOS Foundation would be empowered to decide. However you could make the case that that is maybe not the best arrangement. In particular if the foundation doesn't really seek an active role in micromanaging things. My impression so far was that it doesn't seek such a role. However if we agree that the foundation has the ability to make such decisions, maybe it also has the ability to delegate it's authority to someone else? For instance the infrastructure team. | 14:42:07 | |
| This idea of local vs global vision is interesting. Even if it's hard to build a globally shared vision, we can at least work to make local visions a bit more coherent. Part of the issue with the RFC process how it's currently structured is that it tends to destroy visions. If you get shepherd involved, then by nature they will want to give their inputs. That's just the nature of humans. And if you end up paired with people with different views, then it creates a weird, incoherent, design by committee, but kinda agreed on output. For smaller things, I would much prefer for people to write up their vision, submit it for approval/rejection, than going trough that grueling process. | 15:02:19 | |
| FWIW I don't think the "should we build unfree on Hydra" thing is a good example of a decision that needs governance process to decide | 15:02:45 | |
| What it needs is a lawyer to say "it's OK to do this" | 15:02:57 | |
| And the foundation is realistically the only entity with the authority to get counsel from a lawyer | 15:03:36 | |
| unfree+redistributable are legal, assuming that the classification is done properly. there is a practical issue of; how do we purge the cache if we discover that the classification is incorrect. this can already happen today if people put the wrong license on a project, but is more likely to happen if we start building unfree+redistributable packages. | 15:06:59 | |
| Yeah, see, this is exactly the kind of thing that requires a lawyer to know how to handle correctly | 15:08:08 | |