Stay For The Community Revisited
Three years ago I gave a keynote at the Pacific Northwest Drupal Summit called Stay For The Community, which I later released as an article. The main focus of the talk was threefold:
- Drupal is explicitly about community, not just code, and communities have values that guide them.
- Many of the ways in which the Drupal community is structured (or not structured) work at odds with those values.
- In such a situation, community members need to be careful to protect themselves from burnout and emotional exhaustion, because the community isn’t structured to do that on its own. In fact, just the opposite.
While we have gone a long way on some of these issues, recent events highlight the ways in which the topics from Stay For The Community continue to plague us, and I wanted to take the time to examine them.
One of the core reasons that many people in the community seem to be disturbed about is the idea that a contributor was asked to leave because of their beliefs rather than their actions. This argument goes that as long as a person’s actions are respectful and considerate, then their beliefs don’t matter and that we should welcome them. Lets unpack that a bit, first by covering some things that we as a community have already established.
One of the observations I made in Stay For The Community is that whether or not we explicitly define them as such, the Drupal community as a collective has a set of values. Here are some examples
- By acknowledging non-binary genders in user profiles on drupal.org, we acknowledge that folks outside the gender binary exist and are part of our community.
- By taking part in actions like The Day We Fight Back, we are sending the message that we believe in the personal privacy and security of our devices and data.
- Our values extend outside the strict boundaries of drupal.org and Drupal Association events, and include activity on social media and other places.
- We support a diverse community without discrimination based on culture, religion, physical appearance, disability, race, ethnicity, gender, or sexual orientation..
Note that while we might not all have these beliefs as individuals, we acknowledge that the community as a whole does, and by participating in the community we accept that these norms are implemented and enforced by the community’s agents (the Drupal Association, the Community Working Group, and Dries.) In fact, accepting that is an explicit precursor to contributing to the project on drupal.org and attending DA-funded events.
So having established that there are certain values the community holds dear, what happens when someone comes into conflict with those values? A lot of this is already defined within the Code of Conduct (both for drupal.org and DrupalCon). What isn’t explicitly defined in any of these places is what happens when someone holds beliefs that are in conflict with our proposed values, but those beliefs are not backed up by any specific actions which are in violation. This is still a problem though, and it is worth talking through.
Lets say that someone writes a blog post expressing that pinball enthusiasts who live in Portland are genetically inferior and of lesser intelligence. One could (and many do) say that as long as this person conducts themselves within the confines of the Code of Conduct, then the beliefs they hold and the words they post outside the community have no bearing. I might not like that person, but that’s my problem.
It is easy to agree with this on the face of it — if someone’s actions are respectful, then what do their beliefs matter? That is pretty easy to say until you are a pinball enthusiast from Portland who must suddenly work side by side with someone who believes you are of lower intelligence. You personally might think “Well screw them, I don’t care what they think” and that’s great! I commend you on your self-confidence and calmness.
However, I have to say, it is hard to blame any other pinball enthusiast from Portland for feeling uncomfortable working with that person, for always wondering if their code was being judged more harshly, or for knowing that every second they spend with that person they will always be thought of as less simply because they dig pinball.
So now you have one person’s beliefs in conflict with another’s, and one way or another one of them is probably going to end up leaving. Who do you think is better for the project? Who is going to make new pinball enthusiasts from Portland feel more welcome? If I discover that a community member is privately biased against pinball players from Portland, should I inform those affected of the community member’s bias?Where is the tipping point when the damage caused by losing or turning away pinball enthusiasts from Portland no longer offsets the value that this biased person brings? When does that move from being an individual problem to a group problem?
These are tough questions, and once you say “Yes that tipping point exists” then people rightly get scared. They cry “Who will be next? People who believe the Earth is flat? People who believe that red socks cure cancer?” and I don’t have the answer to those questions. I have my opinions and lots of other people have theirs too, and the conversations around those topics will be hard and painful and no matter how they play out we are going to lose community members over them. But to argue that this line doesn’t exist and never should is far worse than getting the line wrong. It is saying “I don’t want to think about this, so I’m not going to by pretending it doesn’t matter” but it does, it matters a lot.
Another thing I have seen proposed is that when these sorts of violations happen, it makes sense to remove people from a position of leadership, but not from the community entirely. Again, this makes sense on the face of it. If someone who thinks that certain classes of people are beneath them is involved in selecting sessions for a conference, you can’t help but wonder how that might impact their criteria for selection. So sure, remove them from that formal position.
The problem is that there are almost no formal positions in the community, and in fact most people in community leadership positions have no formal titles at all. Tim Plunkett is a fine example of this (for the record Tim is one of my favorite people in the world.) Tim is one of the most high profile leaders in our community, and he has no formal role whatsoever. His position of leadership comes entirely through his time spent on the project through the issue queues, and the fact that he does excellent work. While we do have some other formal titles within Drupal (core committer, initiative lead) for the most part the people considered leaders are those doing the tough work of pushing through patches day in and day out. As we are so fond of saying, code is gold.
This is great, but it also comes to the core of the problem. In a world where leadership is largely defined by time in the issue queues, how do you remove a leadership role from someone without ejecting them from the community or at the very least barring them from drupal.org? If Tim Plunkett was to be spewing hatred of pinball enthusiasts from Portland, and it was determined he was no longer fit to be a leader in the community, what other options would we have?
As I pointed out in Stay For The Community, the only structure we have in Drupal is hours spent in the queues, and as long as someone is free to put in those hours then they will always be a leader. The idea that we can “de-leader” someone in our community while still allowing them to contribute is demonstrably preposterous.
I remember almost five years ago having a conversation with Angie Byron at Drupal Dev Days in Barcelona where we tried to lay out what it would mean to eject a major core contributor from the community, and what situations that would be appropriate in. I never quite expected it to happen, but I also recognized that if we are going to create any meaningful form of governance for Drupal then we have to be prepared for the possibility.
It saddens me to see us here today still unable to answer that question. These hard conversations need to happen, not get put off hoping for the best. Like everything else in Drupal, we have got to figure out who we are, what we stand for, and how we are going to represent that within our community. Without that we have no context for the tough problems, and no process for making them happen. Priorities, goals, and values drive all decisions. Many of us have been harping on this with regards to Drupal the product for almost a decade, but it applies just as well to the community itself.
Will we lose people because of the choices we make? Absolutely. Hey, I might be one of them! But I would rather see those values become explicit so I can decide whether or not I belong here, rather than watching the community try and have its cake and eat it too for the next five years in fear of anyone walking away. Without that definition, these controversial events are just going to continue, and the drama cycle will follow in perpetuity, consuming everything in its path.