-
Notifications
You must be signed in to change notification settings - Fork 70
Discussion: CoC Violations & Accountability : Node's future #111
Comments
To be clear, I want this to be a discussion that's not limited to just members of the CommComm. Since we are here to support the community, I want to hear from everyone. |
Thanks Rachel for opening this issue. I’d add are also hear to represent the community, including the members who left Node core because of the actions for Rod and others in the past. We hear you. Do Meeting Notes or a recording of the TSC vote exist? Is it known who voted what and who abstained? |
The vote was a confidential vote. I don't know who voted for what, and I'm not sure anyone does given the tool we used. |
@gr2m in the issue posted by James, it says
Which basically just says to me, and the ENTIRE community, that the majority of the people making the technical decisions don't care about anyone involved in the project but themselves. This will 100% hurt the Node community. |
It's very difficult to see this sort of stuff happen: there are those of us who have tried to do the work in the past to prevent this from happening, and people like Rod were directly responsible for preventing those efforts from taking root. There is a subset of the Node community, now growing in number as others leave, who believe "meritocracy" is the way to run things, and that harassment and CoC violations are justified as long as someone has enough technical contributions. As far as concrete stuff goes: it's important for Node.js to have a public, fair, and well-defined enforcement process, and for any internal leadership organizations to follow that as closely as possible. It should be as mechanical as possible. Folks that openly advocate against CoC complain that they can be used to ban random people for slip-ups but what we're seeing is that when you lack an enforcement process, what actually happens is that the people you like get away with it, and the people you don't get banhammered at a moment's notice. For an example of my own attempts at building a CoC with an enforcement process focused around empathy and growth (even/especially for folks who everstep it bounds!), see the WeAllJS Code of Conduct. This is pushing contributors away. I can say that as far as any communities I'm in, Node.js feels like an unsafe project to participate in for anyone in marginalized situations. I've had many conversations with very capable and talented developers who have outright told me they won't participate due to Node.js defending certain actors: Rod being one of them. Choosing to not remove or even make participation conditional on drastic changes in observed behavior is an active decision by Node to create a community that excludes others. [edit by @zkat: fixed some grammerz, added links, and added reference to WeAllJS] |
This will very negatively affect the community in the long term if we don’t correct it, if a committee like the TSC can simply vote to make exemptions from its own rules for one of its members. This is frankly corrupt. Update: basically what @zkat says. |
We shouldn't have been the ones but by technicality that is the way the written rules work, as of the current time. 😞 |
This is incredibly corrupt and the mis-use of science to protect anyone from being accountable for the actions and behavior is ridiculous. I have bipolar disorder, but I understand rules and how my actions affect other people. We need more diversity in open-source, and this is one of the reasons there's so little. |
Edited to add in the photo of the information that was removed because it was "unfair to Rod" because frankly, Rod's behavior is unfair to countless numbers of individuals from preventing them from wanting to contribute to the project. And he should absolutely be held accountable for his actions. |
We have a pull request out that I've requested we wrap up @rachelnicole that partially answers this in regards to CoC accountability. We've(TSC/moderation folks/CommComm) long recognized that the TSC being assigned escalation of Moderation isn't something they as a group alone would like to be responsible in dealing with. That pull request is here. This actually makes us, CommComm, also responsible and also means we have voice to help make it better. Prior, only collaborators had view of Moderation and that doesn't match up with how a Code of Conduct and reporting guidelines get worked out, especially in escalation. In regards to a vote, this is one vote, from one committee. There are other groups, such as the CTC, the CommComm, and the Board of Directors who are capable and can also voice what they'd like to see happen for moderation and leadership guidelines. This communicates our values, as a community. The vote on the TSC voices the decision of the TSC alone. |
To all CommComm members, lets review this Moderation issue asap. https://github.com/nodejs/TSC/pull/276/files |
I'm really not sure why @jasnell removed the list of issues from the other post—if they weren't enough to remove him then why is anyone upset about describing them? As for the community as a whole, to be honest reading through the CoC again I wonder if it's a bit vague and hard to enforce for anything outside of obvious harassment. The things originally described in the other post feel obviously out of line to me for a community leader like a "steering committee" member, but looking through the existing CoC I'm not sure if I can point to the relevant parts? At any rate, I'd like to see Node do better. Edit: Having looked at the screenshot again, it seems like there were a few pretty obvious violations. Not a great look for Node. :/ |
They were removed at the request of multiple collaborators who felt publishing the list unfairly targeted Rod for harassment. |
@jasnell if they felt his actions would warrant harassment, I find it odd that they are okay enough with the actions to have voted the way they did. Especially since they weren't speculations on actions, it's the clear set examples of his behavior. |
Stuff like this is why I've felt zero motivation to contribute lately. 😑 |
@jasnell if a Code of Conduct violation has no repercussions how does that protect anyone else from harassment? Can you elaborate on that? So far I'm seeing only Rod being protected, members of underrepresented groups quitting the committee and frankly, disappointing actions reflecting poorly on the inclusion and diversity of the Node project. Decisions like this are a slap for women, people of color and other underrepresented groups, showing there's no real commitment to challenging the status quo within Node and the tech community in general. This doesn't make them feel like there's respect and consideration for their safety. There's no free pass out of Code of Conduct for anyone, nor there ever should be. Code of Conducts aren't PR stints, but carefully written and implemented precaution mechanisms that should be effectively enforced if need be. |
Given the issues that were reported to the tsc for consideration, there was not consensus that those represented a code of conduct violation. There were clear moderation policy issues that had been dealt with in accordance to the moderation policy. Thus far, while there are quite a few people speaking in very general terms about Code of Conduct violations, there has been absolutely no clear identification to the tsc what the specific violations were. Additionally, those who submitted the complaint did not frame it as a Code of Conduct issue. Rather, it was framed as a "Is This How A TSC Member Should Act" issue in general. The set of bullet points I posted originally constitute the extent of the context that was provided to the TSC for consideration beyond calls for specific mitigating actions and statements about what the result would be if those specific actions were not taken. Specifically, an ultimatum was given that if Rod was not forcibly removed from the TSC, certain members of the TSC would resign. No other option or course of action was acknowledged as being acceptable to the individuals making the complaint. With regard to at least one of the specific issues raised, there is significant disagreement among TSC members that tweets that do not, on their face, have anything to do with Node.js, posted to a personal twitter account fall under the TSCs oversight in any way other than those already documented in our moderation guidelines. We just simply do not have a documented policy or precedent that we can fall back on. I can easily say that I don't like it so I think the poster should be banned, but I am not the Benevolent Dictator of Node.js, nor do I want to be, and I have no authority whatsoever to take unilateral action. It was agreed by everyone directly involved in the discussion, including those that have resigned from the tsc, that our existing policies required a vote given that we lacked consensus, and the requirements for such a vote are spelled out clearly in the charter we are bound to. So after we gave tsc members time to review the complaint and provide their feedback, we called for a vote. While that may seem like I'm hiding behind policy, I am not. I'm saying that there's literally no other process we could have followed. In short: the TSC DID execute on our established code of conduct enforcement guidelines. There are just many who disagree with the outcome and who feel that the current enforcement policies are inadequate. We do have a process for changing those policies, and there are already efforts in the pipeline for changing those. Improved moderation guidelines, mediation, escalation and even complete restructuring of the tsc body have been on the table for discussion for quite some time and are efforts that I have strongly endorsed or initiated. I invite everyone to actively participate in those efforts. |
@jakeNiemiec you know that Myles wasn't telling people to kill themselves, and in the comment to him he further clarified what his intentions were. In the issues we're specifically addressing, IMO, there were violations. Though as @jasnell elaborates above, the people who were making the decisions worked in accordance with the way things were set up, which is what a lot of us don't agree with. Which is what I'm hoping this thread will encourage people to talk about, and if you're involved in any of the relevant committees please work to help make changes to prevent this type of thing from happening this sort of way again. |
Note: non-contributor but heavy Node user. My team and I rely on Node every single hour of our workdays. It gives me great pause that we apparently rely on a software project that does not care to enforce its CoC. Further, it's an embarrassment to see this behavior coming from an org with such a prominent place in the modern web dev toolchain. The whole situation makes me wonder if we should be using something different. It'd be far better for the TSC to provide oversight and thereby grant a plurality of its current and prospective contributors the dignity of a safe, professional space. |
@rachelnicole I know he was being hyperbolic, but saying "[insert any group here] people, step in front of a bus" is unacceptable, even as a joke.
|
@jakeNiemiec From what I can see, Myles deleted the original tweet, wrote a follow-up with much less problematic language, and tried to engage with you to better clarify intent, even going so far as to thank you for pointing out the problematic language. If you genuinely feel like that action was a CoC violation that merits investigation, I would suggest that you look at the Enforcement guidelines and report the incident through normal channels. Right now, it feels like a weird attempt at derailing conversation. |
Written before @brianarn posted: thank you. I agree. Added this anyway, because I think it sheds some more light on the derail. The internet is not the right venue for discussing miscommunications like this, because tone does not come across at all. @jakeNiemiec I hear you. That was a very unfortunate phrase for you to hear. Please know that I do not think that @MylesBorins was joking - he was referencing the phrase throw under the bus, but from a perspective of altruism. He was not advocating suicide, from my perspective, but actively using your privilege to take a fall when others can't. These sorts of difficulties do fall under the Code of Conduct, and would be a great examples for a proper moderation board to take a look at. While I understand your reading, I think that this was just a misunderstanding. For more context, please read Myles' blogpost about stepping down, where he gives a great example of someone who uses his privilege to make a statement, even if it hurts. I can't think of a better way to lead by example. I think there's a good amount of missed connections going on in this conversation, besides the one I brought up above. I want to take a moment to thank @rachelnicole, @jasnell, @jakeNiemiec, @hackygolucky, @thefoxis, and the others here for jumping in as they are. There two points I want to highlight in case they get lost: From @jasnell:
From @hackygolucky:
Everyone: let's work on fixing our Code of Conduct and the way disputes are adjucated. This vote does not have to stand as an example of Node, frozen forever in a weird, damaging "well it can't be fixed" stasis. |
@jakeNiemiec this is getting off-topic, feel free to open a separate issue if you see the need to. If the TSC followed all the processes in place then the processes are broken. The result from the TSC vote which resulted in protecting an individual who repeatedly harassed members in the Node community to the point that they left and never came back anywhere close. If this decision by the TSC has no consequences, any rules put in place to create and grow a safe place will loose all their meaning. And as member of CommComm I see it as my responsibility to act if I see the community being threatened to become a hostile place. |
I'll stop commenting since I see what you mean. Feel free to remove my comments. It just seemed like any enforcement of a CoC requires a Twitter firestorm to get the ball rolling. Edit: I don't want to keep commenting about a resolved situation, so I will put this here:
Yesterday I was paging through the parties involved, trying to get an idea of what happened and why people were leaving. I am not one to make a fuss, but the whole situation compelled me to say something...but the criticism was undeserved, as you had promptly responded. Thank you @MylesBorins and others for the professional, level-headed responses. |
You're not wrong. That's part of what @gr2m is getting at, and others have raised the same concerns (on Twitter). This is what happens when the processes in place, and private admonitions, fail. It would be great to have a very clear, bullet-pointed post about where to go from here. How can I, as an enraged person (and me specifically, on CommComm), help to fix the current process. @MylesBorins calls for a merging of the TSC and the CTC. On what door can I nail this thesis? Can someone more experienced in Node.js land help me by writing this? (Happy to help draft it with you). |
FWIW, I agree that the choice of words from Myles was not great. It's referencing a common phrase, but that common phrase has always been a bit problematic. It's easy to use out of habit, if you aren't careful. Myles was good about it in that he immediately acknowledged his mistake when called out and made the effort to apologize and correct it. I know he meant well, but I know that from the context of knowing him personally. Some internet stranger could easily have misinterpreted the intent of his words. This is the core of most issues we as a community face: a lack of either context or clarity in how we communicate publicly. We can not be vague about issues like this or we alienate our community. |
@jakeNiemiec hello again. My original choice of language in that tweet was quite unfortunate. I am very grateful you called it out, and was more than happy to remove it and take accountability for my mistake. To me, that experience was a perfect use of moderation by you, and the correct response to moderation by me. That contract is important. At this point, if we were in the Node.js moderation process, the issue would be considered resolved. Here is the section in the moderation guidelines outlining the steps we would follow when moderating post. Keep in mind that there is a different process in place for collaborator < > collaborator moderation. One thing that is totally acceptable in any moderation is dealing with things privately, and is often a way these matters can be sorted in an amicable way. It appears that my original comment made it hard to trust me, that is totally fair. I'm simply asking that you give me the benefit of the doubt. I'll do my best to do better next time 👍🏽 |
I am upset that there is a lack of accountability for hostility whilst acting in the capacity of a steward of the community. Beyond broken processes, internal conflicts, and the efforts to fix them, I am upset that a group of people had to vote at all on whether or not to hold a person with authority accountable for causing harm to the community. It is clearly evident to me that the the behavior laid out is counter to building a healthy and open node community. An opinion bolstered by those involved finding the behavior aggregious enough to “protect” Rod from having his comments speak for themselves. Which, despite happening online and in a (semi) public forum, have been made unavailable to the community. Whether working through imperfect processes or not, there are several charges I would absolutely expect to influence decision making about node at all levels. I believe how this situation was handled fails each of these:
Specifically, these are things which should be upheld no matter the topic if Node is serious about building a top notch community. By all the people here lending their time, thoughts and hard work, I think its pretty clear that Node is serious about it! These actions detailed here are indicative of people being human and fallible when handling a difficult topic, but point to systemic issues within the organization. I understand there are processes in place and my guides are too simple. It is my assertion that these processes are set up to serve those larger goals, and so they maintain their relevance. . I believe TSC made mistakes by:
Moving forward I would like to see:
Ultimately, I think the world deserves the best Node possible, and the above are necessary first steps towards it. Edit: formatting |
@watilde i'm pretty sure that's what they're trying to do in regards to the proposed remerger of TSC / CTC & the establishment of the Moderation group with more representation across the board. We'll probably see more progress and updates about things as Issues & PR's start getting closed. |
Yep. There are a couple of open relevant threads:
|
@jasnell I could not find any information on conduct violations in the statements released today: As far as I can tell, either:
(*: The misconduct is being treated as a foregone conclusion, no uninvolved layman will sympathise with "we all need to punish this person. Trust us they did bad things we can't tell you about.") Despite what the answer to the above is, withholding an official list of accusations has led to (less than reputable) media/individuals either smearing the members who left after the vote or making wild, hyperbolic accusations about No matter who you agree with or what side you are on: the Node.js community loses So I ask again (as per the issue description above): What specific conduct violations occurred?@jasnell @rachelnicole: I am all for an inclusive CoC, but my persistence comes from the fear that I, or someone I know, will be targeted based on |
It was discussed publicly, however the details were removed from the post due to fears that they'd encourage targeted harassment. (Personally, I disagree with that response. I think the accountability is necessary.) |
As I have said in follow up posts in twitter, the issues reported to the TSC included Moderation Policy violations (some acknowledged, some contested) and concerns around tweets that the individual posted to their personal twitter feed that several peers on the TSC felt were not becoming of a TSC member. At least three TSC members further indicated that they no longer felt comfortable working with this individual due to what they perceived to be a long running pattern of behavior that was not becoming of a TSC member. The specific issues raised to the TSC were never framed as CoC violations by the individuals making the claims so we never framed them as such to the TSC body. |
Re: the comment Removing the list of issues as I did, which was done as a response to individuals who felt publishing the list was unfair and would be further damaging, had the opposite effect of what was intended by those who had requested that I remove them. At this point in time, I do regret having removed those. At this point in time, my focus is on ensuring that the processes are in place to deal more effectively with these kinds of disputes, ensuring that there is both fairness and accountability throughout -- not only for the individuals being accused of wrong doing, but accountability of those reporting issues, to ensure that the possibility of abusing the system is lessened. Over the nodejs/tsc repo there are a number of open pull requests the update guidelines for all of this that do exactly that. No system is perfect and I think it's safe to say that Psychology and Mediation Skills are not commonly taught in CompSci 101 so we're all pretty much learning as we go here. |
@jasnell you are scooping me again. I was looking for the right forum and right words to say just that. I can not agree with you more! |
That might be a good sign that it would be helpful to have the Foundation (which I assume would have the resources) provide that kind of expertise, rather than going with “we don’t know any better because we’re not professionals”. |
I'm closing this thread now as I feel the constructive conversation has tapered out, and we can wait on the additional statements from the board. If anyone has anything else they'd like to discuss, please feel free to open your own issue. |
Are you seriously kidding me? Right after the 3 most constructive comments on this issue. |
@jakeNiemiec We've got some great progress happening in regards to the reasons this issue was opened in other PRs, such as adjusting moderation guidelines, the teams, and how we execute Codes of Conducts, but the conversation happening here, today, isn't addressing the issue as filed. Please file an issue that addresses your concern directly or hop on one of the appropriate issues or comments. We've got a lot of activity this week in the comments, so it's especially important for us to keep these focused in scope. |
@jakeNiemiec no, I'm not. Feel free to open your own issue for additional concerns that are relevant to the questions you're asking, as they're separate from what this issue was opened for. |
@jakeNiemiec we do what we can, it is all on our free time besides our day-to-day job. I understand you are upset, but please remain constructive, the phrase "Are you seriously kidding me" is a personal attack and is not helping your cause. Please create a separate issue |
The filed issue is Edited: I |
@rachelnicole I'm taking the "unlock" at you still leaving room for discussion.
I strongly believe that nodejs/TSC#276 (the TSC requesting to hand over Moderation responsibilities to a new dedicated Moderation team, and appoint a Mediator as the final jurisdiction) is an excellent solution for the problem of "CoC Violations & Accountability". |
@jakeNiemiec can I ask you to rephrase your last comment? I think I understand your intent, but it comes off as a personal attack. |
Going to lock this conversation. Not going anywhere productive with the issue at hand, and - as suggested - other discussions can and should happen in other issues. ❤️ Edit: Unlocked to allow for review. |
@refack no the unlock was because we aren't supposed to lock conversations unless it's been reviewed by the moderation team, so it was a mistake. And @jakeNiemiec no. The thread was opened for what we can do as a community going forward, it wasn't opened to question whether you thought a supposed violation is a 'witch hunt'. That conversation would be more important and relevant in a discussion about actual content of a Code of Conduct, which are happening elsewhere. |
@refack Thanks, see edit above.
@rachelnicole Please read it again, I was not saying that. I am only asking what what the violations were. No source seems to have a clear answer.
I will rephrase: What happened in those private issues that we need to (Please do not take my frustration as an attack. It seems like there are different |
Noted for discussion in Moderation. Locking again. Want to restate: if you are interested in having discussions about Node.js and what the CommComm can do to help, please don't hesitate to open an issue. |
Locking a thread is not uncommon in the Node.js repos. If someone is not heeding requests after derailment of a topic happens(this happens quite often, and that doesn't mean you are a terrible person), then moderation is requested because the sheer velocity of an argument can cause a breakdown in communication. Sometimes locking is used as a cooldown mechanism. Thanks for being patient y'all. If it wasn't explained already, the image listing grievances in this issue was removed by @rachelnicole because our policies handling moderation and conduct do not have us publicly listing out reports. Requests for moderation and administering those requests occur in a repo where collaborators can try to tackle the conflict as it is occurring and attempt to reach out to the parties privately. We don't have a policy of publicly documenting a person's behavior, and it is also kind to protect those who were potentially harmed in said behavior(because they often become targets), but also that the person in potential violation sees some pretty serious ramifications, too. |
So this is going to be a little unorganized, but this is in regards to the TSC vote, and frankly I don't think they should have been the ones that made that decision.
nodejs/TSC#310
How can we have CoC accountability when that apparently doesn't even extend to the core contributors of a project? There are MULTIPLE conduct violations. What does one have to do to actually have any repercussions?
I'm frankly appalled and confused why this decision was left up to a select few, though I'm not surprised the outcome given the lack of diversity and representation on the TSC.
So what can we do? If anything? I want Node to be a welcoming and helpful community, and I want people to feel safe.
Removed image per Moderation Request.
Code of Conduct: https://github.com/nodejs/TSC/blob/master/CODE_OF_CONDUCT.md
The text was updated successfully, but these errors were encountered: