-
-
Notifications
You must be signed in to change notification settings - Fork 5.5k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add a code of conduct doc. #2454
Conversation
Interesting approach. I am generally bewildered, as an interested onlooker. So we should really only be interested in this Code of Conduct insomuch as how we might be able to use it to restrain your behavior. By your own indication. Yes? That's why you linked to the report of your misbehavior, correct? I am concerned by the report of your editing the comments of other users (I didn't even know Github provided that tool). Play the game of saying what you mean and apologizing by editing afterwards if you like. Enforcing edits on others and hiding the evidence is a closed, hamfisted approach guaranteed to stir up trouble. I will of course be keeping a copy of this comment for comparison. |
It's more to iron out what is acceptable and what is not. The link was to give context. Others may have a different bar/criteria for moderation. Having a code of conduct helps set that bar and outlines what is acceptable behavior.
I tend to side more with stopping the derailing of threads and keeping nonconstructive bits out. Again though a CoC will set the expectations of behavior and conduct. The one I've provided is what I've used for other projects. |
It's a sad day that something like this may even be needed, IMHO.
My email begs to differ :P |
Code of conducts are a good thing.
It's unfortunate that disagreements and spats happen but they are usually dealt with and corrected in back channel or cleaned up after cooler heads prevail. Public squabbling doesn't serve the good of the project. I think we all participate in these projects to make things better. |
I'm not sure of any great open source project that originated from a code of conduct. Code of conducts always come after a sad day, whether experienced first-hand or not. They are good insofar as there are, sadly, folks who need them.
No doubt, thank you for your contributions!! |
I guess I disagree. A code of conduct is a win for moderators and the community. |
👍 editing peoples comments because of bickering 👎 If a maintainer edited someones comment because it was noise / bickering I would say that would be in violation of the CoC (the one being proposed) and would be terms for removal from the project. +1 to merge edit (just to be extra clear I appreciate everyones time and work that they put into this project, my above comment only aims to support a healthy community on both sides of the proverbial fence here) |
I'm cool with it. I think clarification and outlining things is a good thing. |
👍 to a code of conduct, discussion on specific scenarios that violate it are probably out of scope for this issue though. Although I do find it pretty ironic that the one pushing for a CoC is the one being accused of violating it. |
It's my hope that it clears things up and prevents issues in the future. |
@@ -0,0 +1,41 @@ | |||
Contributor Covenant Code of Conduct |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
what is the source of this code of conduct? Seems different from the one I'm familiar with
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
what is the source of this code of conduct?
The last line covers it.
This Code of Conduct is adapted from the Contributor Covenant, version 1.4, available at http://contributor-covenant.org/version/1/4.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Ah whoops, missed that. Mind just fixing the formatting
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Done.
It is really unfortunate you feel that way. I'm not 100% of the situation that has brought this up, but I can give some thoughts based on the experience with a CoC and moderation policy form the Node.js core team. Having a CoC is a baseline, although it often gets brought up during a time of turmoil. A CoC is a signal, it is a way to let people know that your project cares about protecting individuals from harassment. There really is not a valid reason to not want to protect individuals from harassment. That being said, a CoC is completely useless without
A clear moderation policy allows collaborators to moderate appropriately and not get stuck bike shedding about process. This has been experienced first hand in the node project when we had a CoC without clear moderation policies, and we spent days figuring out how to deal with a situation while members of our community were being actively harassed. Our moderation policy can be found here The code of covenant comes with a paragraph outlining that moderation may happen, but it is not clear about how to moderate, or how to document the process. The node project has a different process for moderating content from a collaborator vs. a non-collaborate, it sounds like being explicit about this might be important for this project. It is sad that CoC's and moderation policies often come up after an unfortunate instance makes it seem necessary, but that does not mean that having a CoC itself is toxic. Having a clear CoC and moderation guideline will reduce the odds of these types of events happening in the first place. We use linters to make sure our code fits within the agreed upon standards of a project. We use a CoC to make sure our behavior does as well. It seems to me like @megawac @akre54 @michaelficarra are the ones mostly merging code ATM... if we do not have buy in from these individuals a CoC is worse than useless. If anyone has questions about this type of stuff they are not comfortable asking in the open please feel free to DM me. Individuals with power in the world have a duty to empower and protect those who do not. |
First off, I'm in favor of CoCs generally for most if not all projects. And to be further clear, I don't believe I have the "full story" (nor am I interested in knowing it) and certainly entertain the notion that multiple parties have taken damaging actions. One can imagine your (@jdalton) using a code of conduct to excuse editing others' comments. It would be an act of deep political cynicism to use a conflict whose creation is at least partially your responsibility to pass a code of conduct that would allow you greater leeway in resolving conflict in your favor. It would be unfortunate if people got this impression. Since that is not what's happening here, you're presenting the code of conduct as a means of considering action against yourself or one contributing to conflict in a similar manner as yourself in a future situation. I am reading this correctly, right? In that case a good way to build the argument for a Code of Conduct would be for you to apply that code to the preceding situation or some abstract of it. Some person with admin powers uses those powers in a way that makes another contributor feel unwelcome and generates more conflict (as witnessed by your link). The community recourse would be to contact jashkenas and jashkenas would then be enabled by the code of conduct to boot Ths is a slight improvement over the various privilege/permission wars I've heard of, in passing, between you and jashkenas, I agree!
I do not think you have done a very good job explaining why this is your hope with the specifics of this project. |
👏
This was a squabble between a couple core contributors and the tweet was one side of that squabble. I don't care to turn this into a TMZ event so rather start the process to help prevent things like this in the future. A code of conduct and a moderation policy is a good start. |
You haven't even demonstrated the capacity to work on things like this in the present. |
Over the last four years I've contributed bug fixes, api design, triaged issues, started the merge discussions, and have worked with and incorporated several core into semi daily discussions on libs, utils, projects to make things better for developers. And now I'm working on this. It's not easy for sure and sometimes there's bumps but over the years things trend in a positive direction. |
Starting a pull request for a CoC does not disavow you of responsibility for the circumstances that you directly linked to as justification for the CoC. If you did not wish to consider them you should not have brought them up. Your overall actions as a contributor to open source is (was) not up for consideration. |
Oh that was contributions to Underscore. But ok.
I'm fine with folks having a different opinion on how to best moderate. I think we can both agree that outlining a CoC and moderation policy is a good thing. |
My mistake. I am more or less a bystander. As a bystander, my impression of your involvement with the underscore project is overwhelmingly that you are someone that stirs up trouble. Certainly you and jashkenas have had your differences. Certainly you are not entirely to blame for dramatic happens. It does not help your case, in my opinion, to confine your demonstration of authority, when it comes to handling conflict, to the Underscore repository. I preferred thinking of you as resting on your authority as the maintainer and core collaborator of Lo-dash. (Not that I think that helped, either, of course.) As far I'm concerned, this very topic is an instance of your inability to de-escalate conflict. In fact I think you have no small ability to propagate it, which would be much better handled if you could acknowledge that, and act as a humble human being under the judgment of any code of conduct you might have proposed. I began this conversation with bewilderment. I don't understand you. Or I understand you perfectly. There's not a lot of ambiguity in this conversation on my end. You've settled on the CoC as a perfect middle ground that no one can contest, and having claimed it, you can't be attacked. You should perhaps consider that you do damage to the credibility of CoCs when you initiate them in such a strange way. |
Guys, can we not start an argument in the PR for a CoC? That's ridiculous. This a positive change, I'm in favor. @thealphanerd's comment seems particularly relevant:
That'd make this even better. |
Obviously it is not my place, as a non-contributor and only a long-time user of Underscore and Lodash, to stop a CoC from being instated. I would not want any of my comments to be read as such. (Nor would my recommendation that Underscore adopt a CoC hold much weight; however, I do recommend that we do.) |
Anyway, I'm 👍 for the COC in general.
I agree due to the circumstances prompting this Any off topic banter from this point will be removed. |
@koglerjs
The daily ins and outs are much more mundane.
It's certainly a tricky position to be in. Being 100% isolated is hard and doesn't help folks wanting to make plugins or projects that can leverage either project. It takes a lot of cross-lib collaboration on APIs, behaviors, compat paths. And sometimes lines get blurred, toes get stepped on, & feathers get ruffled, but as I've written earlier I think we all participate in these projects to make things better.
I'm 👍 on the moderator policy. Would that be more approp for a separate PR for core to hash out? Edit |
@megawac I'm not sure the wisdom of employing the very comment moderation policy we're debating in this thread. None of the removed posts appear to be especially egregious. Deleting or editing "off topic" or "unconstructive" comments is a really slippery slope. Not least because it's incredibly subjective. |
I suppose, however this thread was getting lengthy at 25 posts in one day and none of the 8 posts I deleted (after providing a warning that posts off topic from the COC topic would be deleted) discussed the topic of the thread. I wanted to avoid further derailment. Anyway now -- yay or nay for a COC? Any changes to the proposed COC? |
I think the points raised are important to discuss because they provide context. Particularly for something as nuanced as a Code of Conduct, it's important to get the details right. A Code of Conduct isn't a magic bullet. We're talking about repeated and flagrant violations of respectful tone and unwillingness to handle disagreements over years. |
That plus a moderation policy seems like a start though.
I think most core will agree you've done your part to stir up trouble. Having a code of conduct will help outline what's accepted and what's not and a moderation policy will help with the moderation of core and users. |
Uh, you edited your warning in and I didn't notice until after the comments were suddenly gone. Github's tools for this are terrible. I don't mind particularly that my comments were removed. |
¯_(ツ)_/¯ Totally is. That being said we've found it is better to trust the judgement of those who we collaborate with. Things are documented, and if we believe someone was being hasty we definitely call them out on it. Then we improve moving forward. It is also worth mentioning that we do not often opt to delete, especially when things have a troll like tone. We have had more than one instance in the past where we have take the time to talk the individual down, and eventually they self moderated (many hours later). This is to avoid feeding trolls, making people feel marginalized, or potentially increasing the potential for abuse. edit: I have removed the portion of this comment that was directly engaging and critiquing another person from this thread as I believe it was derailing |
I strongly disagree. With the exception of a few minor squabbles in the middle of the thread (since deleted), I think he's been totally fair given the circumstances. Again, subjective. What in what he said do you see as derailing? |
@akre54 I'm going to avoid derailing this thread myself... I likely should not have even engaged the way I did. I apologize for not holding myself to a higher standard. |
Thank you for self-moderating and setting a good example. I am curious to hear your opinion off-thread. Either in Gitter or via email. |
Edit: At akre54's request below, I have softened the tone in a few places while trying to keep the critical summary intact.
Thank you, sincerely, for publicly indicating as such, it allows me to shorten this comment and keep its combativeness low. The following should be read dispassionately. I will note that you do not address my criticism of your use of this thread's moderation as an example, and have instead chosen to make an assessment of me generally, which I will of course consider. I promise this is on topic: the course of events is that JDD suggests bringing in a Code of Conduct, referencing incidences of his reported/alleged misbehavior. He summons @thealphanerd, who, acting initially as a reference for similar communal management, eventually puts on his moderator attitude rather strongly towards me. I don't take it personally, I assure you. But how amusing is it that I end up on trial, at the close of this topic! I would say that I had played the politics poorly, except I am not really a community member (just an interested party) and cannot really fear my voice being 'marginalized.' If this is meant to be a demonstration of how the community should function under a Code of Conduct with moderation rules, how successful has it been? You have conveniently ignored the actions of your friend jdalton, @thealphanerd, and the way you swiveled away from considering my argument to evaluating my toxicity as a person (Edit: he has retracted his assessment, which I appreciate, but even deletions, as we've seen, do not erase the course of events) makes me think that maybe every user starts looking like a troublemaker to a moderator, except of course for those that are politically aligned with the moderator. You are even more of an outsider to this community than I am, so far as I can tell. My toxicity is direct and impersonal. I know I was pushing @jdalton. I wanted to see what he had to say for himself. If he had been able to say something like "This CoC could have been used to limit some of my recent behavior"--anything approaching willingness to express some public awareness of his own responsibility--I would have been much less aggressive in my inquiry and appreciative that the proposal was in good faith. My line of reasoning had a purpose; for that reason I'm also not at all bothered by the deletion. I'm still in favor of the CoC on principle and the moderation rules because they would have helped this topic. I think this has been a productive conversation overall. But I don't think they make moderation easy or successful. This will be my last post; I'll read and consider responses but feel like I've said what I needed to say. Apologies for any remaining stepped-on toes I may have clomped on. |
Alright @koglerjs that's far enough. He apologized. Please trim your comment down. |
First off, I'm writing this in an attempt to help move things forward. If this comment does not succeed at that, feel free to delete it. It seems to me the main reason for Underscore's presence here on GitHub is to evolve and continuously improve the quality of the underscore project. While this thread does not deal with code, it does deal with the quality of this project. As such, it saddens me to see that - imho - most of the conversation has been people trying not to devolve into bickering, but failing. When a pull request with some code changes is not quite ready to be merged, you don't point at the developer, you point at parts of the code that could use improvement and make your case. Improving community guidelines has equally much to do with evolving and improving the quality of the project as writing cleaner code or better tests. Let's treat the task at hand the same way this community would treat a code commit and focus on converging towards something that makes underscore better. I would like to suggest that one of the powers that be draft a few moderation rules and / or propose changes to the CoC if needed? I think a serious and constructive attempt to materialize some concrete rules may help regain some focus here. |
I think |
Building on that it might be a good idea to reference it is the Readme |
@megawac @jridgewell |
Good with me, but I'll wait for another 👍. |
So concretely, what are we agreeing to here by merging this? |
For this PR that the code of conduct provided is acceptable. At the time of creating the PR I wasn't aware that moderation policies were a thing so that's something for a follow up PR (but really should be hashed out by core contribs). |
Right but concretely what does that mean. Most of the language in this change is about attempting to create a safe space and limiting harassment in the project. If we don't have clear definitions of trolling or harassment, what have we gained?
No codified policy, but a generally accepted standard of behavior the core contributors have tried to moderate by. In the past bad behavior has been called out and dealt with on a case-by-case basis. (I believe comment editing / deletion was brought up in 2013). Is the idea to formalize these policies into a document, rather than just calling out bad faith and underhanded comments in the thread itself? |
I believe @thealphanerd covered that above.
Yes. When I opened the PR I thought the code of conduct could perform double duty. As the thread progressed a moderation policy was mentioned as something more appropriate for outlining core and contributor moderation (Node's was used as a reference). As Underscore core continues to grow (2 added in the last week) and with the lead away at the moment, formalizing these things can help prevent issues before they start. That's not to say I don't think a code of conduct is needed (they go hand in hand). |
I'll leave it to Adam to handle this PR. He seems to be the one still with reservations. I think we should also include Michael's suggested changes in the COC. I'm indifferent if that is done now or in the future |
I think a follow-up commit to tweak to core taste would be appropriate or else it would just be me guessing at the exact wording or phrasing you all would prefer. |
Couldn't we just formalize the moderation policy here in this thread like @michaelficarra has done above? I think being explicit that substantively changing the content of your post or others is out of line? Especially when it reframes the debate to look like one that didn't actually take place. I'm in weak support of this pull request, but I almost feel like this isn't much better than having nothing at all. I'd like to wait for one of the Underscore OGs to weigh in (@jashkenas, @tgriesser, @braddunbar) but I'm fine merging if everyone else is. |
I'm fine with merging this as long as we immediately follow it up with a PR that adds my suggested moderation policy (as a separate document I guess?). |
👍 |
I'm a 👍 on the pull because I think outlining these things explicitly is a good idea. That said, I'm uncertain that it will be of assistance in the specific scenarios mentioned here. ¯_(ツ)_/¯ |
Great idea. Having the moderation policy in a PR is something that can be referenced while it is being fleshed out. Better to not push things through that are not quite ready |
I was planning on drafting a PR with a moderation policy as a show of good faith and alignment with the CoC, even before this topic reopened. (Probable plan: copy-paste @michaelficarra's proposal and make some minor suggestions on some modifications.) I won't be able to get to it until late tonight and if anyone else wanted to take initiative that's fine by me. |
Add a code of conduct doc.
Apologies to those waiting on a moderation policy; I've begun the process but it is more than I can finish tonight. |
@koglerjs Don't worry about it. I've created #2463. |
Adding a code of conduct to help avoid issues over moderation and behavior. This will spell out what is and what isn't acceptable to help foster a better environment and prevent infighting on how moderation should be handled.