I wasn't around at the time but, from my research, the decay in Nix community civility was begun in mid-2021 by RFC 98 (https://github.com/NixOS/rfcs/pull/98), a document advocating for a "Community Team." RFC 98 was created and championed mostly by a person who has a history of within-organization agitation, first within Google, and now within Nix. This isn't to say they aren't personable and amicable! By my reading, they are extremely polite and accomodating in the RFC 98 discussions. They have a history of activism and labor organization, and as far as I can tell, they are employed or contracted in various capacities that allow them to persue these goals. I don't think the other major participants in the ensuing discussions about the RFC -- the originators of Nix and other long time contributors -- knew this at the time. But because they are kind, liberal, thoughtful, reasonable people, and because they really do want to create a maximally welcoming environment, and because Nix really was an exceptionally open, welcoming community in the first place, they were happy to encourage anyone who might come along who might offer work towards such a thing. The activist champion of RFC 98 seemed like just such a person. RFC 98 had as one of its concretely identifiable origins (the only one I can actually find) a minor argument between two contributors which surfaced in GitHub. One contributor was irritated that a reviewer was terse in communications about a PR, and took the terseness as rudeness. The prolific reviewer is terse because he reviews many issues, spending only a few minutes on each. The disagreement was rooted in the contributor feeling garden-variety disrespected by the reviewer, and was not a marginalized person feeling othered or anything like that. Cross words were traded. (XXX citation needed) When this argument was brought to the fore by a third well-meaning contributor who had been tangentially involved by stepping into code in which the the other two were participating, the misunderstanding mushroomed into a more general debate about civility. He was taken aback by the tension between the other two and brought the issue to Discourse. He framed it as "what can we do, in general, such that I don't step into these kind of interpersonal land mines again?" (XXX citation needed) At this point, in a *better* timeline, some other well-respected community member would have pulled the reviewer, the offended contributor, and the third person who had stepped on the land mine aside, maybe even privately, and heard their cases. They might have said "hey, I appreciate all of you doing what you do. I think I understand why all of you are irritated, and I don't blame any of you. Let's try to work it out." He or she might have then recounted all their positions as he or she understod them, and then asked of the offended parties "what can we do here?" And determine if they could work it out on their own through a short round of continued mediation. If they could not, then at least the irritated contributor, the reviewer, and the hapless reporter would have felt like their cases had been heard, and, though they might have had run-ins in the future, it might have been deescalated enough in the present. And that would have been the end of it. In the *actual* timeline, the minor three-party dustup began a very long, very public, very well-attended Discourse discussion about solving an overly-general imaginary civility crisis through the introduction of policy. This was mostly because no one felt empowered to be a mediator between the actual parties involved in the tragically minor dispute. The mods could have done some sensible small scale mediation, I guess, but it didn't happen. They seemed more attracted to the long discussion instead. And it's always more fun to recreationally participate in conversation that promises grand meaning than it is to solve small but important problem. At a properly run company, if you are caught eating someone else's sandwich from the fridge, your boss wil confront you and say "hey, Bob, don't eat Ted's sandwiches." That will be the end of it. In an organization with weak leadership, however, the entire company will receive an email from HR in the afternoon dictating a company-wide seminar on sandwich theft prevention, a #sandwich-theft chatroom will be created, posters depicting sandwich thiefs in an encircled red X will appear on the walls, etc. The latter is more akin to what happened in the Nix case I outlined. There was no leadership in place to deal with an isolated sandwich theft, so it now needed to discuss policies with the goal of ending sandwich theft forever. In the meantime, most labor organizers aren't opposed to completely upending whatever organization that they're targeting. To many labor organizers, upending the targeted organization is the goal. They need leverage for change, and they know if they upend an organization, they are more likely to gain that power, because those in power will drop out during the chaos and infighting they cause. They're quite happy to see any orirignal participants off, replaced by others who share their goals. This doesn't really need to stop until the organization is modeled perfectly after their values, after which it will not bear much resemblance to those of the original organization at all. It will however, bear a resemblance to a labor union or a political advocacy group, always with the labor organizers in positions of considerable power. This is, over enough time, easy to do in a community that is already very open and welcoming. So thus began RFC 98, which defined a "Community Team" with frighteningly broad powers such that no one would ever need to experience anything like sandwich theft again, and also in the background hey maybe we can also turn Nix into some sort of advocacy group. Meanwhile, the Nix moderation team became stuffed with ringers from the activism side due to a poorly thought out policy that ensured the existing moderation staff had to agree unanimously to invite each additional moderator added instead of a policy that tried to ensure a more diverse team (XXX citation needed). The moderation team became quite powerfully aligned with the activists as a result, and it became one of the only identifiable locuses of power that were actually willing to use any. The Nix Foundation board also had power, but they did not use it. They hadn't really wanted any power in the first place, they just wanted to write and talk about code, and facilitate paying the bills that allowed for it. Community interpersonal stuff was left to the community. Whatever that was. The process of debating RFC 98 flushed out the folks who were likely to become opponents of the labor organization and activism goals (developers like Jon, several members of the board, and a variety of other people). Eventually, the RFC was not accepted because it was pretty incoherent and gave far too much power to a very few individuals. But the non-acceptance of the RFC became an excuse to agitate for the activism faction, and they began the process of dividing the community along the lines they had identified. Opponents of the RFC were singled out and accused of various moral failures. Credulous community members were convinced by the labor organizers that the community had fundamental problems due to the continued participation by the immoral. The moderation team suppressed dissent heavily, creating an atmosphere of anger and distrust. Later, a similar pattern repeated itself with Anduril conference sponsorships. North American Nix conference organizers accepted an Anduril sponsorship despite a similar offer having been rejected by the European conference. This was due to the extreme distribution of control and lack of centralized power within the various Nix organizer teams. It was also red meat for the activists, whom seized on the misstep as yet another wedge issue. And then the pattern repeated itself with issues related to the feelings of members of marginalized groups. Incidents of injustice to the marginalized committed by the powerful people in the Nix community are probably identifiable in the small. But no one actually bothered to identify any coherently. Everyone else just assumed everyone else had a legitimate beef and fought bravely on their behalf, too drunk on their own righteousness to check for receipts. And then the same pattern repeated itself under the guise of Eelco not being sufficiently open and communicative. And then this grab bag of issues were compiled and mixed up via an open letter. The letter drew support from credulous people whom each maybe took offense to one of the four wedge issues. People who really only cared about Eelco's intransigence found themselves thus accidentally allied with the three other groups, and people who only cared about military sponsorships likewise, etc. It appeared as one group (150 signatories wow!), although it was just an engineered alliance of people riled up about four different issues clueless to the goals of the labor organizers. The letter made sure to blur all those boundaries, mixing them all together into some single seeming big-tent cause. And so the battle lines became drawn. Either you were with the labor organizing writers of the letter, or you weren't. And the community became unfixably divided. The labor organizing faction had done its job. Four of five board members are gone, including Eelco. They didn't really have the stomach for conflict. The mod team is still around, though. They do have stomach for conflict, or at least the stomach to suppress it. Thus, no discussion about anything related to any of these topics can be had on Discourse or GitHub, both are tightly policed. The "governance discussions" proposed by the board were policed just as tightly and any dissenters ejected. The "constitutional assembly" created by this process has as a majority of those at least not-unsympathetic to the labor organizers. It will create a governance structure partial to them. A few true villiains and some real heroes were identified during this process, but mostly it's just stupid people doing stupid things. I hope folks will see that we are being played, but I doubt it. We won't toss out the professional dividers because most of us actually secretly enjoy the shallow, faux meaning the conflict confers on us temporarily. Once the dividers have achieved perfect control, they'll do whatever inscrutable thing they want with the ruined shell of what used to be a thriving community for a while, with them at the helm, until they get bored. Eventually, forks will appear, and those forks will begin to rebuild actual open source software development communities, hopefully with better immune responses, but probably not. The dividers and activists will always be circling, waiting to end us, advertising themselves as our redemption.