The ToDo Group, a commune of open source software developers including Google, Yahoo, Facebook, and Dropbox, released An Open Code of Conduct. Given two of the heaviest hitters in software development are involved in the project, I started to look at it excited that I might get some insight as to how the all-pro software development organizations manage their open source software baselines and share them. The CoC, I thought, was going to be a sort of process document. I was wrong. Say, Admiral Ackbar, what is An Open Code of Conduct?
When I need to know about traps, I go to the Mon Calamari (who are also delicious). To choose to adopt An Open Code of Conduct is to choose to ensure no code gets written for your project in favor of top contributors getting bullied out your project by remoras. It’s a subjugation of writing lines of code to discussions of intersectionality, and using first-world oppression as the reason substandard code should be accepted by the open source community. To see what I mean, let’s dig in.
What’s funny to me is how every SocJus trap starts out reasonably; in that way SocJus and the LDS church have a great deal in common. The first bullet in the CoC is to “be friendly and patient.” What a wonderful way to start a Code of Conduct. In fact, one could stop right there and move on to the process for violating the bullet in the CoC. It wouldn’t be much of a trap if the CoC ended at the first bullet though, would it?
The second bullet starts with this line, “We strive to be a community that welcomes and supports people of all backgrounds and identities.” Uh oh, I feel a complete compromise of the topic at hand to the Oppression Olympics coming on. Here it comes:
This includes, but is not limited to members of any race, ethnicity, culture, national origin, colour, immigration status, social and economic class, educational level, sex, sexual orientation, gender identity and expression, age, size, family status, political belief, religion, and mental and physical ability.
Okay, benefit of the doubt time—maybe this is just the way ToDo Group has decided to say it’s not okay to drop the N-bomb, B-bomb, or C-bomb, among others, in any open source community that chooses to adopt the OCoC. For the time being, it’s a reasonable assumption. Let’s cautiously, but optimistically, continue.
The rest of the bullets in the first section are reasonable. Be considerate, be respectful, choose your words carefully, and try to understand why we disagree are all things that people in professional development organizations should do. Even the explanatory text under each of the bullets makes sense in the context of people writing, releasing, and sharing lines of code. I can’t help but feel like coders wrote this section of OCoC. Could it be the premise of this commentary is off? The next section is definitions.
The first definition of harassment is what I’d consider a more traditional definition of the term: saying derogatory or offensive things about another person. Again, totally reasonable.
The second bullet says, “Unwelcome comments regarding a person’s lifestyle choices and practices, including those related to food, health, parenting, drugs, and employment.” Ah, so rejecting a piece of code and stating, “You always pump out garbage code when you visit your friends in Colorado,” is apparently not acceptable in any open source community that adopts OCoC. Strange the OCoC doesn’t just make their communities drug free—surely that’s easier, and more in line with professional development organizations like Google and Facebook. I suppose that’s a nod to the international flavor of open source?
The third bullet calls “deliberate misgendering” harassment. Get your spreadsheets out, so you can track the preferred pronouns of the potato-kin in your community (I’m xin, xis, xol, cispig).
Bullet four is physical contact and simulated physical contact. Makes sense, strictly speaking, though I have to wonder how much of this happens and why in open source communities.
Bullets five through fifteen are a return to common sense, as they discuss threats of violence, inciting to violence, deliberate intimidation, stalking, harassing recording, and other things most people would consider harassment. With the exception of bullets two and three, the definition of harassment is more than workable.
It isn’t until the bottom of the definitions section that reality escapes the OCoC. Here’s the complete paragraph.
Our open source community prioritizes marginalized people’s safety over privileged people’s comfort. We will not act on complaints regarding:
‘Reverse’ -isms, including ‘reverse racism,’ ‘reverse sexism,’ and ‘cisphobia’
Reasonable communication of boundaries, such as “leave me alone,” “go away,” or “I’m not discussing this with you”
Refusal to explain or debate social justice concepts
Communicating in a ‘tone’ you don’t find congenial
Criticizing racist, sexist, cissexist, or otherwise oppressive behavior or assumptions
If you’ll indulge me for a second, I want to propose a Use Case for this particular subsection of the OCoC. Let’s say George Jefferson was a major contributor to an open source project. Let’s further assume George referred to everyone he thought was white as “Master,” and called white contributors “honkeys” or “crackers” in a non-joking way—I imagine to some, white people not wanting to be called racial epithets is a matter of comfort. Does this section of the OCoC protect the contributor, or is the contributor violating OCoC sections about garden-variety racism? Since I honestly cannot tell from this document, I’m going to go ahead and call the above ambiguity a major design flaw in the OCoC.
The Diversity Statement is mostly weasel words, except for the first sentence of paragraph two, which reads thus:
Although this list cannot be exhaustive, we explicitly honor diversity in age, gender, gender identity or expression, culture, ethnicity, language, national origin, political beliefs, profession, race, religion, sexual orientation, socioeconomic status, and technical ability.
This is the “don’t you dare tell the truth to a god awful coder” clause in the OCoC. At this point, we see a couple of things. First, any organization adopting the OCoC is less interested in writing code and solving problems than thought policing the members of its community. Second, the ToDo Group is the League of Legends of the open source community: it is worse to be honest with a bad coder to tell the bad coder their code is bad than it is to be a bad coder. In a bizarro corner of the Tumblrverse, someone is fist pumping. Calling an organization the LoL of anything isn’t a compliment, unless you’re a person who incorrectly conflates popular and good.
Finally, the last set of paragraphs is about reporting incidents. This section is procedural, and near as I can tell, covers the necessary iterations of conflicts of interest if an incident were to occur with a member of the response team.
What Happened to Open Source?
Maybe this is my own naivety, but I always thought the open source community was supposed to be carrying on the standard set by garage hackers. While there probably won’t be another Wozniak and Jobs thrashing out the first Apple computers or Carmak and Romero slumming it at Apogee churning out shareware copies of Doom, I was expecting more passion for solving problems. I was expecting an air of almost childlike wonder and positivity to permeate the tone of the OCoC. So what happened to Open Source to turn it into an intellectual and emotional prison?
This isn’t the end of the story for OCoC. GitHub, host of the worst piece of perl code ever written, had adopted OCoC, but is now taking a step back and reevaluating—in their words, consulting with people who know things to ensure further changes are made carefully and thoughtfully.
There’s a fair bit to like in the OCoC. It wasn’t what I was expecting; however, reading it a second time and analyzing it on its merits, one can find a good starting point. Yes, it needs major revisions; yes, it has a couple of massive design flaws that need to be fixed; and yes, once you boil away all the valueless pieces, the whole thing comes down to “be respectful of each other” with a side of “do unto others…”, which calls into question the value in expending even more effort in a document that says what everyone should already know.
Raptors: What things about the OCoC do you like and dislike?