-
Notifications
You must be signed in to change notification settings - Fork 44
Add a general CoC for LDK contributors #184
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
Conversation
✅ Deploy Preview for lightningdevkit ready!
To edit notification comments on pull requests, go to your Netlify site settings. |
A very reasonable CoC. I can't at the moment think of any specific point to add. I feel like this covers most (if not all) the problems contributors usually face when something negative happens. I also like the bit about excessive nitpicking. I can see why that would just make a contributor feel unwelcome. For the enforcement side of things, I think we'll be good with what's suggested here and maybe only need to take another look if the community really becomes much larger. I know in some open source communities there's this question around who moderates the moderators and whether community members feel okay enough to report one of them in the hypothetical case of being toxic. But pretty much LGTM |
Yea, rust suffered a lot from "who moderates the moderators" syndrome. Hopefully we won't suffer from that, but I'm not sure what we can really do about that up front, either. Ultimately as is the case with all CoC-type discussions it always comes down to individual circumstances and whoever is deciding being reasonable. |
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.
No real qualms from my side.
For transparency towards the LDK community, there were some ethical discussions between Matt and Steve few weeks ago about some behavior of mine actually beyond the scope of this project. Not related to code or technical subjects (not anchor output really!) and the case is pretty complex. After internalizing I understand how I have harmed some people involved in Bitcoin development and I take opportunity to renew my apologies. No one is perfect, and I took some personal commitments to heal the situation. Generally, I'm not a strong believer in code of conduct for a variety of reasons. Not only the philosophical aspects in a decentralized open-source software project, though also due to the surface increase to social attacks of any kind (abusive claims, vector of legal involvement, distorsions in the neutrality of the review process, etc). In case of ethical concerns, I'm far more convinced in ethical feedback from my peers as it has been formalized and nurtured by lawyers and practicians by centuries of tradition. One can find such formalization of general professional ethics in the field of software engineering, e.g the ACM one. Caveat said, if a Coc is wished by the majority of all other contributors, I won't oppose. Beyond, we're all to make contributing on LDK an inclusive space, and I think I'm the one who authored the original calling in current If we have concerns, where the respect of the CoC might interfer with security and safety sensitive issues with significant impacts on users (potentially under time constraints), where project decisions might have to be build in emergency with lesser considerations of the community of contributors "comfort zone", I'm overall confident in the good intelligence of everyone to recognize the context and dissociate the domains, a posteriori if needed in a patient and respectful fashion. |
Thanks @TheBlueMatt LGTM, we can move the file to the top level and add a link in the footer under "Community" here |
For what its worth, this isn't the source of any kind of CoC writeup here - there was a desire to write one up independent of, and prior to, this.
A good CoC is really just formalizing the idea that individuals who are disruptive will be asked to leave. Writing up a CoC doesn't really change the possibility of "social attacks" - someone could just as easily accuse someone of misbehavior with or without a CoC. The change is that there's a more formal list of people responsible, and that is what matters - are those people reasonable? Notably, a CoC is not a replacement for any kind of legal action - its only intended to focus on "are people able to freely contribute to LDK", there is no desire to take any action outside of LDK forums nor is any LDK CoC committee responsible for addressing any issues beyond that scope. |
code_of_conduct.md
Outdated
Private or public harassment of any kind will not be tolerated. Since harassment can take many forms, here's a non-exhaustive list of what we consider unacceptable behavior: | ||
* Offensive language directed at individuals or groups of people | ||
* Bullying (verbal, physical, social, or cyber) | ||
* Interfering with someone's ability to contribute, like with excessive nitpicking | ||
* Continued one-on-one communication after a party has requested it cease | ||
* Stalking online or offline | ||
* Doxing or unauthorized publication of private information or communication | ||
* Unwelcomed sexual attention | ||
* Inappropriate visual displays such as sexually-oriented or offensive photography, cartoons, drawings, or gestures | ||
* Retaliation for reporting or threatening to report harassment |
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.
Should we add something -- not necessarily here -- for obvious spam? We had one incident of spam on Discord where deleting posts and banning was the clear action to take. Discord also has a kick and a timeout feature, FWIW.
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.
Good idea, I added a general "dont spam or prevent people from working" comment.
Okay, fixed the linking properly now. |
Nice, preview here |
Hopefully this will never be needed in any way, but in general we want to ensure that its documented that, above all else, everyone should act in a way that fosters an open community and ensures anyone can freely contribute to LDK.
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.
A good CoC is really just formalizing the idea that individuals who are disruptive will be asked to leave. Writing up a CoC doesn't really change the possibility of "social attacks" - someone could just
as easily accuse someone of misbehavior with or without a CoC. The change is that there's a more formal list of people responsible, and that is what matters - are those people reasonable?
No -- In real life, people officing in "court justice" or "disciplinary instances" not only follow a formal training, there are also numerous procedural principles bounding their actions and ensuring equity of the process towards both the victim and the accused. Beyond the procedural principles, sanctions must be grounded on texts and framework enumerating clearly the material torts committed, not on loosely subjective appreciation of facts like with the present CoC. Arbitrary of the "judge", or anyone vetted with authority prerogative is one of the most vocable concern of (Western) justice procedural frameworks to the best of my knowledge. And it's not I don't have appreciation for the proposed CoC team members, I do have faith in their good hearts and eagerness to ensure the project harmony. In my opinion, this is just "sanctioning" another human being is one of the most delicate task one might have to conduct, and it should be done with a lot of care, humility and self-doubt.
On this LDK CoC, I still think we would be far better off to add formal guarantees of "due process" in favor of the accused, as commented. At the very least, if there is a CoC breach reported against my persona in the future, I'll ask for the observance of those principles, like I'll be entitled in any other walk of life (in respectable juridictions). And this is not a posture to exonerate myself of accountability on my behavior towards the other LDK contributors, or anyone in the Bitcoin protocol development community. I think I've consistently advocated for personal ethics in public Bitcoin venues, far before this discussion about a CoC shows up.
If we would like to think about another alternative than a CoC to resolve interpersonal conflict between contributors inside the LDK community, I believe we would better to formalize a mediation process. From my perspective, there is a conceptual and philosophical leap between a "court justice"-like CoC and a mediation process. The latter is far more healing the "scratched" emotional states and reestablishing "good faith" communication. I can only recommend this great book (chap 11 iirc) about conducting mediation: https://www.nonviolentcommunication.com/product/nvc/
* Is there a risk of this behavior being repeated? | ||
* Does the reported person understand why their behavior was inappropriate? | ||
|
||
If a report is insufficiently detailed or involves multiple parties, the Code of Conduct Team may seek additional information from witnesses or the accused. Neither party should contact the other to discuss the incident. Likewise, the team will do its best not to disclose who reported a given incident, either to the accused or generally, though we recognize that circumstantial disclosures to the accused might be unavoidable. |
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.
I don't know much familiarity people have with the notion of "due process" in vigor in most of respectable jurisdictions, and the rights of the defense -- Here we should give far more prerogatives to the "accused" for a fair trial, otherwise we open the door to pure arbitrary. Being an online community doesn't exempt us to respect the defense principles recognized by numerous international treatises and constitutions all around the world.
Among the rights of the defense:
- right to an exact qualification of the torts and the detailed facts
- right to produce a contradictory report with reasonable time offered on all the facts and qualified torts
- right to request a third-party from the Bitcoin community to articulate and defense the case
- right to silence or not to testify against oneself
- right to be communicated all the pieces and documents of the case
- right to appeal the case
- right to ask recusation of a CoC team member if the member is involved in the case
- right to presumption of innocence
- right to proportionality between the tort and the sanction
The default delay of 1 week sounds very far from reasonable to produce a grounded defense for the accused and in fact no delay should be given -- It should be function of the respect of the procedural steps guaranteeing the fairness of the disciplinary process.
Anyway, once anchor output is done and apart to handle hard security issues, I won't contribute to LDK during the coming years. So seriously I don't give a fuck about a project CoC and if it generates more drama than it is sensed to solve, at least I won't be responsible I would have give a strong warning. I won't comment anymore on this PR. |
I don't think the CoC as written here makes any statements to the contrary of any of the principles you outlined, it even makes explicit mention of simply giving warnings, which would hopefully lead to folks working issues out on their own. It instead exists to limit what is or isn't in scope and list responsible parties. This isn't the founding document for a court, it doesn't intend to consider all the possible ways things can go wrong and, again, it doesn't materially change the way issues would be handled from today. Part of the point of a CoC here is to explicitly limit scope - we only care about things which make it hard for folks to contribute to LDK, nothing more, nothing less. We aren't firing anyone, we aren't preventing them from working somewhere, we can't charge someone or send them to jail, we one care about ensuring (and maximizing) that anyone can choose to spend their free time contributing to LDK without having to think twice about it or the culture around it. If you view this as drama I'm sorry, you're welcome to spend your time contributing to projects as you see fit. |
Gonna go ahead and merge this - the only issues raised here are concern over fairness and due process, but those aren't changed here. |
Hopefully this will never be needed in any way, but in general we want to ensure that its documented that, above all else, everyone should act in a way that fosters an open community and ensures anyone can freely contribute to LDK.
Needs a contact email for me and devrandom, and probably needs some kind of link to the page from...somewhere, not sure exactly how to do that here (@ConorOkus any suggestions?), but I think the text is reasonable and draws a good line between not policing anyone's behavior outside of LDK and ensuring that everyone can feel welcome contributing to LDK.