Chandler Carruth via llvm-dev
2015-Oct-14 20:36 UTC
[llvm-dev] RFC: Second draft of an LLVM Community Code of Conduct
Greetings all, First off, thanks to everyone who contributed to the initial discussion thread. Judging by the responses from that thread, there seems to pretty broad interest in pursuing this. There also seem to be a few concerns. =] I'm including an updated draft based on the feedback, and I'll also try to break down the major points I've seen of discussion. Sorry for the long email, but I suspect it is much shorter than trying to read through the entire thread. High level points about a code of conduct in general: - Is this trying to change how the community behaves? I think the resounding answer is no, this is very much meant to formalize the existing extremely polite and respectful behavior that the LLVM community has had for many years. - Was this proposed in response to some particular event or problem? No. There has been mounting pressure throughout the industry and even within our community to take a step like this. There is a particular desire by many to have a code of conduct governing the developer's meeting. - Is this necessary? Has this ever come up in the community? Many people have expressed the view that some form of code of conduct is important and/or necessary. Chris has pointed out that there have been incidents that necessitated the degree of response outlined in this at least once in the past, but it was *many* years ago. - Why is this important? There is a tremendous amount of information online about why having these types of rules makes a huge difference for people who may feel unsafe in our community or conference. These range from advocacy from groups like the Ada Initiative[1] to powerful accounts of how these issues and related issues can negatively impact individuals in communities[2][3]. These may not apply to you personally, but they do apply to both current and potential future members of our community. [1]: http://adainitiative.org/ [2]: http://www.perpendicularangel.com/2015/08/no-i-dont-trust-your-conference-without-a-code-of-conduct/ [3]: http://sarah.thesharps.us/2015/10/06/what-makes-a-good-community/ More specific points about the proposed wording: - Why enumerate specifics in the code of conduct? While some people do not need any specific examples, others benefit significantly from them. In minor cases, these examples can serve as reminders for well intending members of the community. But to understand the major reasons, consider someone who is seriously concerned about whether they will be safe and respected in the community. These people do exist, both already in our community and as potential newcomers (see the links above). You may not be one of them, but try to empathize. These people can look to a list of explicitly called out unacceptable behavior, find many of their concerns already addressed, and learn that they will indeed be safe and welcome. For groups and behaviors where this is a long standing and widespread problem *for them*, this can be the difference between joining a community and not joining. To read more details about this, I continue to refer to this article from the Ada Initiative: http://adainitiative.org/2014/02/18/howto-design-a-code-of-conduct-for-your-community/ - Why use this specific wording? What about something much less verbose? Some of this is really the previous point in another form. However, there are reasons why I think this wording is a really good choice for the community even compared to other wording options. One, I have seen few that are meaningfully less verbose and still address the specifics. Two, this wording is *really* widely used. While I looked to and cited the Django Project, they are not alone. Here are some of the places using roughly the same core wording: http://couchdb.apache.org/conduct.html http://apache.org/foundation/policies/conduct.html http://opensource.box.com/code-of-conduct/ https://github.com/twitter/code-of-conduct/blob/master/code-of-conduct.md https://code.facebook.com/pages/876921332402685 That includes the Apache Foundation, Twitter, and Facebook among others. Several of these are based upon the template created by the http://todogroup.com/ organization which is extremely similar, but a bit longer than what is proposed here. So I believe that the core body of the wording has a really strong position in the larger industry and open source community. Naturally, the surrounding wording that gives the important context relevant for the *LLVM* community is and needs to be customized. But I have seen very few concerns about these parts of the text. - Do we need the degree of specificity with the "reporting guide"? See the discussion about specificity in general -- much of the same applies. Part of what the code of conduct needs to do to effectively make people feel safe is to advertise that we *will* actually act on issues when they come up. Again, this is nothing new to the community; we have asked people to correct their behavior before, and as Chris has pointed out even removed them from the community's forums in extreme cases. Issues around the specific people and process surrounding the advisory committee: We frankly don't have this sorted out yet. Clearly, we need to sort it out before this can be fully effective. I think we can make progress on converging on the code of conduct and the reporting guide, and then iterate on what the advisory committee looks like. I am sure I have missed some points in all of this, and for that I'm sorry. However, I am intentionally not going to engage in some of the very off topic discussions. For example, there was some excellent discussion about the Foundation itself. That feedback was I think well received and will be acted upon. I would expect updates and further discussion there in separate threads though. I've also sent out a patch which would add these documents to the tree, but with them clearly marked as *drafts*: http://reviews.llvm.org/D13741 This is based on the excellent suggestion by Philip. Please only make editorial and structural comments there, we should keep the vast majority of the content discussion here. To that end, the drafts are copied inline at the bottom. Thanks, -Chandler --------- =============================LLVM Community Code of Conduct ============================= .. note:: This document is currently a **DRAFT** document while it is being discussed by the community. We want to ensure that the LLVM community, while large and diverse, remains welcoming and respectful to all participants. To that end, we have a few ground rules that we ask people to adhere to. This isn’t an exhaustive list of things that you can’t do. Rather, take it in the spirit in which it’s intended - a guide to make it easier to communicate and participate in the community. This code of conduct applies to all spaces managed by the LLVM project or The LLVM Foundation. This includes IRC channels, mailing lists, bug trackers, LLVM events such as the developer meetings and socials, and any other forums created by the project that the community uses for communication. It applies to all of your communication and conduct in these spaces, including emails, chats, things you say, slides, videos, posters, signs, or even t-shirts you display in these spaces. In addition, violations of this code outside these spaces may affect a person's ability to participate within them. If you believe someone is violating the code of conduct, we ask that you report it by emailing conduct at llvm.org. For more details please see our :doc:`Reporting Guide <ReportingGuide>`. * **Be friendly and patient.** * **Be welcoming.** We strive to be a community that welcomes and supports people of all backgrounds and identities. 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 or lack thereof, and mental and physical ability. * **Be considerate.** Your work will be used by other people, and you in turn will depend on the work of others. Any decision you take will affect users and colleagues, and you should take those consequences into account when making decisions. Remember that we're a world-wide community, so you might not be communicating in someone else's primary language. * **Be respectful.** Not all of us will agree all the time, but disagreement is no excuse for poor behavior and poor manners. We might all experience some frustration now and then, but we cannot allow that frustration to turn into a personal attack. It’s important to remember that a community where people feel uncomfortable or threatened is not a productive one. Members of the LLVM community should be respectful when dealing with other members as well as with people outside the LLVM community. * **Be careful in the words that you choose.** We are a community of professionals, and we conduct ourselves professionally. Be kind to others. Do not insult or put down other participants. Harassment and other exclusionary behavior aren't acceptable. This includes, but is not limited to: * Violent threats or language directed against another person. * Discriminatory jokes and language. * Posting sexually explicit or violent material. * Posting (or threatening to post) other people's personally identifying information ("doxing"). * Personal insults, especially those using racist or sexist terms. * Unwelcome sexual attention. * Advocating for, or encouraging, any of the above behavior. * Repeated harassment of others. In general, if someone asks you to stop, then stop. * **When we disagree, try to understand why.** Disagreements, both social and technical, happen all the time and LLVM is no exception. It is important that we resolve disagreements and differing views constructively. Remember that we’re different. The strength of LLVM comes from its varied community, people from a wide range of backgrounds. Different people have different perspectives on issues. Being unable to understand why someone holds a viewpoint doesn’t mean that they’re wrong. Don’t forget that it is human to err and blaming each other doesn’t get us anywhere. Instead, focus on helping to resolve issues and learning from mistakes. Questions? ========= If you have questions, please feel free to contact the LLVM Foundation Code of Conduct Advisory Committee by emailing conduct at llvm.org. (This text is based on the `Django Project`_ Code of Conduct, which is in turn based on wording from the `Speak Up! project`_.) .. _Django Project: https://www.djangoproject.com/conduct/ .. _Speak Up! project: http://speakup.io/coc.html ------- -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20151014/5b0b6d25/attachment.html>
Rafael Espíndola via llvm-dev
2015-Oct-14 20:50 UTC
[llvm-dev] RFC: Second draft of an LLVM Community Code of Conduct
> - Is this trying to change how the community behaves? I think the resounding > answer is no, this is very much meant to formalize the existing extremely > polite and respectful behavior that the LLVM community has had for many > years.This is crucial IMHO as I am very happy with the current community. Can it be included in the code of conduct itself? It is not clear from the current wording. Cheers, Rafael
Chandler Carruth via llvm-dev
2015-Oct-14 20:57 UTC
[llvm-dev] RFC: Second draft of an LLVM Community Code of Conduct
On Wed, Oct 14, 2015 at 1:50 PM Rafael Espíndola <rafael.espindola at gmail.com> wrote:> > - Is this trying to change how the community behaves? I think the > resounding > > answer is no, this is very much meant to formalize the existing extremely > > polite and respectful behavior that the LLVM community has had for many > > years. > > This is crucial IMHO as I am very happy with the current community. > Can it be included in the code of conduct itself?I don't think it makes sense for a document to say directly that it isn't trying to change anything. Once it exists, there is no change to speak of?> It is not clear from > the current wording. >Hrm, I'm not sure how to make it more clear. I think the best way is to get the wording to align with the general expectations of the community. Do you have specific things that would help there? Here is my best idea: It already states "We want to ensure that the LLVM community, while large and diverse, remains welcoming and respectful to all participants." which is trying to get at what you are saying Rafael with the "remains". But I could imagine rewording it to make this more obvious like so: "The LLVM community has always worked to be a welcoming and respectful community, and we want to ensure that doesn't change as we grow larger and more diverse." Better word smithing of this would be very welcome! -Chandler> > Cheers, > Rafael >-------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20151014/d0592b14/attachment.html>
Arnaud A. de Grandmaison via llvm-dev
2015-Oct-14 21:49 UTC
[llvm-dev] RFC: Second draft of an LLVM Community Code of Conduct
I very much like that second draft !> Remember that we're a world-wide community, so you might not be communicating in someone else's primary language.While there, it might be worth stating as well the “someone else” may also be in a different timezone (or just travelling), and a lack of immediate answer/feedback does not necessarily imply lack of thoughtfulness. Cheers, Arnaud From: llvm-dev [mailto:llvm-dev-bounces at lists.llvm.org] On Behalf Of Chandler Carruth via llvm-dev Sent: 14 October 2015 22:36 To: llvm-dev at lists.llvm.org Subject: [llvm-dev] RFC: Second draft of an LLVM Community Code of Conduct Greetings all, First off, thanks to everyone who contributed to the initial discussion thread. Judging by the responses from that thread, there seems to pretty broad interest in pursuing this. There also seem to be a few concerns. =] I'm including an updated draft based on the feedback, and I'll also try to break down the major points I've seen of discussion. Sorry for the long email, but I suspect it is much shorter than trying to read through the entire thread. High level points about a code of conduct in general: - Is this trying to change how the community behaves? I think the resounding answer is no, this is very much meant to formalize the existing extremely polite and respectful behavior that the LLVM community has had for many years. - Was this proposed in response to some particular event or problem? No. There has been mounting pressure throughout the industry and even within our community to take a step like this. There is a particular desire by many to have a code of conduct governing the developer's meeting. - Is this necessary? Has this ever come up in the community? Many people have expressed the view that some form of code of conduct is important and/or necessary. Chris has pointed out that there have been incidents that necessitated the degree of response outlined in this at least once in the past, but it was *many* years ago. - Why is this important? There is a tremendous amount of information online about why having these types of rules makes a huge difference for people who may feel unsafe in our community or conference. These range from advocacy from groups like the Ada Initiative[1] to powerful accounts of how these issues and related issues can negatively impact individuals in communities[2][3]. These may not apply to you personally, but they do apply to both current and potential future members of our community. [1]: http://adainitiative.org/ [2]: http://www.perpendicularangel.com/2015/08/no-i-dont-trust-your-conference-without-a-code-of-conduct/ [3]: http://sarah.thesharps.us/2015/10/06/what-makes-a-good-community/ More specific points about the proposed wording: - Why enumerate specifics in the code of conduct? While some people do not need any specific examples, others benefit significantly from them. In minor cases, these examples can serve as reminders for well intending members of the community. But to understand the major reasons, consider someone who is seriously concerned about whether they will be safe and respected in the community. These people do exist, both already in our community and as potential newcomers (see the links above). You may not be one of them, but try to empathize. These people can look to a list of explicitly called out unacceptable behavior, find many of their concerns already addressed, and learn that they will indeed be safe and welcome. For groups and behaviors where this is a long standing and widespread problem *for them*, this can be the difference between joining a community and not joining. To read more details about this, I continue to refer to this article from the Ada Initiative: http://adainitiative.org/2014/02/18/howto-design-a-code-of-conduct-for-your-community/ - Why use this specific wording? What about something much less verbose? Some of this is really the previous point in another form. However, there are reasons why I think this wording is a really good choice for the community even compared to other wording options. One, I have seen few that are meaningfully less verbose and still address the specifics. Two, this wording is *really* widely used. While I looked to and cited the Django Project, they are not alone. Here are some of the places using roughly the same core wording: http://couchdb.apache.org/conduct.html http://apache.org/foundation/policies/conduct.html http://opensource.box.com/code-of-conduct/ https://github.com/twitter/code-of-conduct/blob/master/code-of-conduct.md https://code.facebook.com/pages/876921332402685 That includes the Apache Foundation, Twitter, and Facebook among others. Several of these are based upon the template created by the http://todogroup.com/ organization which is extremely similar, but a bit longer than what is proposed here. So I believe that the core body of the wording has a really strong position in the larger industry and open source community. Naturally, the surrounding wording that gives the important context relevant for the *LLVM* community is and needs to be customized. But I have seen very few concerns about these parts of the text. - Do we need the degree of specificity with the "reporting guide"? See the discussion about specificity in general -- much of the same applies. Part of what the code of conduct needs to do to effectively make people feel safe is to advertise that we *will* actually act on issues when they come up. Again, this is nothing new to the community; we have asked people to correct their behavior before, and as Chris has pointed out even removed them from the community's forums in extreme cases. Issues around the specific people and process surrounding the advisory committee: We frankly don't have this sorted out yet. Clearly, we need to sort it out before this can be fully effective. I think we can make progress on converging on the code of conduct and the reporting guide, and then iterate on what the advisory committee looks like. I am sure I have missed some points in all of this, and for that I'm sorry. However, I am intentionally not going to engage in some of the very off topic discussions. For example, there was some excellent discussion about the Foundation itself. That feedback was I think well received and will be acted upon. I would expect updates and further discussion there in separate threads though. I've also sent out a patch which would add these documents to the tree, but with them clearly marked as *drafts*: http://reviews.llvm.org/D13741 This is based on the excellent suggestion by Philip. Please only make editorial and structural comments there, we should keep the vast majority of the content discussion here. To that end, the drafts are copied inline at the bottom. Thanks, -Chandler --------- ============================= LLVM Community Code of Conduct ============================= .. note:: This document is currently a **DRAFT** document while it is being discussed by the community. We want to ensure that the LLVM community, while large and diverse, remains welcoming and respectful to all participants. To that end, we have a few ground rules that we ask people to adhere to. This isn’t an exhaustive list of things that you can’t do. Rather, take it in the spirit in which it’s intended - a guide to make it easier to communicate and participate in the community. This code of conduct applies to all spaces managed by the LLVM project or The LLVM Foundation. This includes IRC channels, mailing lists, bug trackers, LLVM events such as the developer meetings and socials, and any other forums created by the project that the community uses for communication. It applies to all of your communication and conduct in these spaces, including emails, chats, things you say, slides, videos, posters, signs, or even t-shirts you display in these spaces. In addition, violations of this code outside these spaces may affect a person's ability to participate within them. If you believe someone is violating the code of conduct, we ask that you report it by emailing conduct at llvm.org. For more details please see our :doc:`Reporting Guide <ReportingGuide>`. * **Be friendly and patient.** * **Be welcoming.** We strive to be a community that welcomes and supports people of all backgrounds and identities. 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 or lack thereof, and mental and physical ability. * **Be considerate.** Your work will be used by other people, and you in turn will depend on the work of others. Any decision you take will affect users and colleagues, and you should take those consequences into account when making decisions. Remember that we're a world-wide community, so you might not be communicating in someone else's primary language. * **Be respectful.** Not all of us will agree all the time, but disagreement is no excuse for poor behavior and poor manners. We might all experience some frustration now and then, but we cannot allow that frustration to turn into a personal attack. It’s important to remember that a community where people feel uncomfortable or threatened is not a productive one. Members of the LLVM community should be respectful when dealing with other members as well as with people outside the LLVM community. * **Be careful in the words that you choose.** We are a community of professionals, and we conduct ourselves professionally. Be kind to others. Do not insult or put down other participants. Harassment and other exclusionary behavior aren't acceptable. This includes, but is not limited to: * Violent threats or language directed against another person. * Discriminatory jokes and language. * Posting sexually explicit or violent material. * Posting (or threatening to post) other people's personally identifying information ("doxing"). * Personal insults, especially those using racist or sexist terms. * Unwelcome sexual attention. * Advocating for, or encouraging, any of the above behavior. * Repeated harassment of others. In general, if someone asks you to stop, then stop. * **When we disagree, try to understand why.** Disagreements, both social and technical, happen all the time and LLVM is no exception. It is important that we resolve disagreements and differing views constructively. Remember that we’re different. The strength of LLVM comes from its varied community, people from a wide range of backgrounds. Different people have different perspectives on issues. Being unable to understand why someone holds a viewpoint doesn’t mean that they’re wrong. Don’t forget that it is human to err and blaming each other doesn’t get us anywhere. Instead, focus on helping to resolve issues and learning from mistakes. Questions? ========= If you have questions, please feel free to contact the LLVM Foundation Code of Conduct Advisory Committee by emailing conduct at llvm.org. (This text is based on the `Django Project`_ Code of Conduct, which is in turn based on wording from the `Speak Up! project`_.) .. _Django Project: https://www.djangoproject.com/conduct/ .. _Speak Up! project: http://speakup.io/coc.html ------- -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20151014/a8a93862/attachment-0001.html>
Joachim Durchholz via llvm-dev
2015-Oct-15 05:21 UTC
[llvm-dev] RFC: Second draft of an LLVM Community Code of Conduct
Sorry, my mailer is wrapping the text so I can't easily read the text, even less find the differences - a quick scan didn't make them obvious to me, but then that was just a quick scan.
Pasi Parviainen via llvm-dev
2015-Oct-18 03:24 UTC
[llvm-dev] RFC: Second draft of an LLVM Community Code of Conduct
On 14.10.2015 23:36, Chandler Carruth via llvm-dev wrote:> * **Be welcoming.** We strive to be a community that welcomes and supports > people of all backgrounds and identities. 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 or lack thereof, and mental and physical > ability. >...> * **Be careful in the words that you choose.** We are a community of > professionals, and we conduct ourselves professionally. Be kind to > others. DoWhat kind of professionals? Professional boxers perhaps? Who do have a habit to get under the skin of the opponent with a insults before the match. Rarely people in their teens, or early twenties would be considered as professional on any area of expertise. So by claiming that community consist of professionals, aren't you already discriminating against individuals who do not have any professional (what ever it may be) interest on the project?> not insult or put down other participants. Harassment and other > exclusionary > behavior aren't acceptable. This includes, but is not limited to: > > * Violent threats or language directed against another person. > * Discriminatory jokes and language. > * Posting sexually explicit or violent material. > * Posting (or threatening to post) other people's personally identifying > information ("doxing"). > * Personal insults, especially those using racist or sexist terms. > * Unwelcome sexual attention. > * Advocating for, or encouraging, any of the above behavior. > * Repeated harassment of others. In general, if someone asks you to stop, > then stop. >
Joachim Durchholz via llvm-dev
2015-Oct-18 09:31 UTC
[llvm-dev] RFC: Second draft of an LLVM Community Code of Conduct
Am 18.10.2015 um 05:24 schrieb Pasi Parviainen via llvm-dev:> On 14.10.2015 23:36, Chandler Carruth via llvm-dev wrote: >> * **Be careful in the words that you choose.** We are a community of >> professionals, and we conduct ourselves professionally. Be kind to >> others. Do > > What kind of professionals?In this context, I interpret "professional" to mean "we take this seriously", not "we make a living off it" nor "we have taken an exam" (neither of which is actually required). > Professional boxers perhaps? That's exaggerating the wording, trying to lead it ad absurdum; it's a direct rhethoric attack, so your opponent has to deal with the feeling of being attacked. Also, it withholds the actual argument, so you're putting your opponent into an unclear situation, which causes stress. That's a good tactics to derail an opponent, but not a good one to cooperate towards a common goal. It's not a terribly damaging pattern, but it's one of the patterns that should be avoided. It's "unprofessional" in the sense that it distracts from the professional pursuit of building and improving one of the best compiler backends around. Not that it's terribly damaging or anything, I'm certainly not telling off anybody for that! Only if they make a habit out of using it, that is. Regards, Jo
Sean Silva via llvm-dev
2015-Oct-20 06:23 UTC
[llvm-dev] RFC: Second draft of an LLVM Community Code of Conduct
On Sat, Oct 17, 2015 at 8:24 PM, Pasi Parviainen via llvm-dev < llvm-dev at lists.llvm.org> wrote:> On 14.10.2015 23:36, Chandler Carruth via llvm-dev wrote: > >> * **Be welcoming.** We strive to be a community that welcomes and supports >> people of all backgrounds and identities. 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 or lack thereof, and mental and physical >> ability. >> >> > ... > > * **Be careful in the words that you choose.** We are a community of >> professionals, and we conduct ourselves professionally. Be kind to >> others. Do >> > > What kind of professionals? Professional boxers perhaps? Who do have a > habit to get under the skin of the opponent with a insults before the match. > > Rarely people in their teens, or early twenties would be considered as > professional on any area of expertise. So by claiming that community > consist of professionals, aren't you already discriminating against > individuals who do not have any professional (what ever it may be) interest > on the project?I agree the particular phrasing here (at least to me) reads as disparaging to people who are not employed to work on LLVM. As a side note: this whole bullet point is sort of weird. It is titled "Be careful in the words that you choose." which makes it sound like it is about incidental oversights, but everything after the second sentence seems pretty unrelated. E.g. one of the examples is "Posting (or threatening to post) other people's personally identifying information ("doxing")." - how does that fall under anything involving "be careful"? Similarly for "Unwelcome sexual attention." in what way does that involve "the words that you choose"; is there a choice of words that makes "Unwelcome sexual attention." any more or less acceptable? Same is true for " Repeated harassment of others.". Was there a typo and "Be kind to others" should start a new top-level bullet point? `* **Be kind to others.** ...` -- Sean Silva> > not insult or put down other participants. Harassment and other >> exclusionary >> behavior aren't acceptable. This includes, but is not limited to: >> >> * Violent threats or language directed against another person. >> * Discriminatory jokes and language. >> * Posting sexually explicit or violent material. >> * Posting (or threatening to post) other people's personally >> identifying >> information ("doxing"). >> * Personal insults, especially those using racist or sexist terms. >> * Unwelcome sexual attention. >> * Advocating for, or encouraging, any of the above behavior. >> * Repeated harassment of others. In general, if someone asks you to >> stop, >> then stop. >> >> > _______________________________________________ > LLVM Developers mailing list > llvm-dev at lists.llvm.org > http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev >-------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20151019/65976f8c/attachment.html>
Chandler Carruth via llvm-dev
2015-Oct-20 09:32 UTC
[llvm-dev] RFC: Second draft of an LLVM Community Code of Conduct
On Wed, Oct 14, 2015 at 11:49 AM Arnaud A. de Grandmaison < arnaud.degrandmaison at arm.com> wrote:> I very much like that second draft ! > > > > > Remember that we're a world-wide community, so you might not be > communicating in someone else's primary language. > > > > While there, it might be worth stating as well the “someone else” may also > be in a different timezone (or just travelling), and a lack of immediate > answer/feedback does not necessarily imply lack of thoughtfulness. >I don't have any problem with this, but others have expressed a hesitation at the size of the document, so I'd like to see other support for this particular addition before adding it.> > > Cheers, > > Arnaud > > > > > > *From:* llvm-dev [mailto:llvm-dev-bounces at lists.llvm.org] *On Behalf Of *Chandler > Carruth via llvm-dev > *Sent:* 14 October 2015 22:36 > *To:* llvm-dev at lists.llvm.org > *Subject:* [llvm-dev] RFC: Second draft of an LLVM Community Code of > Conduct > > > > Greetings all, > > > > First off, thanks to everyone who contributed to the initial discussion > thread. Judging by the responses from that thread, there seems to pretty > broad interest in pursuing this. There also seem to be a few concerns. =] > I'm including an updated draft based on the feedback, and I'll also try to > break down the major points I've seen of discussion. Sorry for the long > email, but I suspect it is much shorter than trying to read through the > entire thread. > > > > > > High level points about a code of conduct in general: > > > > - Is this trying to change how the community behaves? I think the > resounding answer is no, this is very much meant to formalize the existing > extremely polite and respectful behavior that the LLVM community has had > for many years. > > > > - Was this proposed in response to some particular event or problem? No. > There has been mounting pressure throughout the industry and even within > our community to take a step like this. There is a particular desire by > many to have a code of conduct governing the developer's meeting. > > > > - Is this necessary? Has this ever come up in the community? Many people > have expressed the view that some form of code of conduct is important > and/or necessary. Chris has pointed out that there have been incidents that > necessitated the degree of response outlined in this at least once in the > past, but it was *many* years ago. > > > > - Why is this important? There is a tremendous amount of information > online about why having these types of rules makes a huge difference for > people who may feel unsafe in our community or conference. These range from > advocacy from groups like the Ada Initiative[1] to powerful accounts of how > these issues and related issues can negatively impact individuals in > communities[2][3]. These may not apply to you personally, but they do apply > to both current and potential future members of our community. > > > > [1]: http://adainitiative.org/ > > [2]: > http://www.perpendicularangel.com/2015/08/no-i-dont-trust-your-conference-without-a-code-of-conduct/ > > [3]: http://sarah.thesharps.us/2015/10/06/what-makes-a-good-community/ > > > > > > More specific points about the proposed wording: > > > > - Why enumerate specifics in the code of conduct? While some people do not > need any specific examples, others benefit significantly from them. In > minor cases, these examples can serve as reminders for well intending > members of the community. But to understand the major reasons, consider > someone who is seriously concerned about whether they will be safe and > respected in the community. These people do exist, both already in our > community and as potential newcomers (see the links above). You may not be > one of them, but try to empathize. These people can look to a list of > explicitly called out unacceptable behavior, find many of their concerns > already addressed, and learn that they will indeed be safe and welcome. For > groups and behaviors where this is a long standing and widespread problem > *for them*, this can be the difference between joining a community and not > joining. To read more details about this, I continue to refer to this > article from the Ada Initiative: > > > http://adainitiative.org/2014/02/18/howto-design-a-code-of-conduct-for-your-community/ > > > > - Why use this specific wording? What about something much less verbose? > Some of this is really the previous point in another form. However, there > are reasons why I think this wording is a really good choice for the > community even compared to other wording options. One, I have seen few that > are meaningfully less verbose and still address the specifics. Two, this > wording is *really* widely used. While I looked to and cited the Django > Project, they are not alone. Here are some of the places using roughly the > same core wording: > > > > http://couchdb.apache.org/conduct.html > > http://apache.org/foundation/policies/conduct.html > > http://opensource.box.com/code-of-conduct/ > > https://github.com/twitter/code-of-conduct/blob/master/code-of-conduct.md > > https://code.facebook.com/pages/876921332402685 > > > > That includes the Apache Foundation, Twitter, and Facebook among others. > Several of these are based upon the template created by the > http://todogroup.com/ organization which is extremely similar, but a bit > longer than what is proposed here. So I believe that the core body of the > wording has a really strong position in the larger industry and open source > community. > > > > Naturally, the surrounding wording that gives the important context > relevant for the *LLVM* community is and needs to be customized. But I have > seen very few concerns about these parts of the text. > > > > - Do we need the degree of specificity with the "reporting guide"? See the > discussion about specificity in general -- much of the same applies. Part > of what the code of conduct needs to do to effectively make people feel > safe is to advertise that we *will* actually act on issues when they come > up. Again, this is nothing new to the community; we have asked people to > correct their behavior before, and as Chris has pointed out even removed > them from the community's forums in extreme cases. > > > > > > Issues around the specific people and process surrounding the advisory > committee: We frankly don't have this sorted out yet. Clearly, we need to > sort it out before this can be fully effective. I think we can make > progress on converging on the code of conduct and the reporting guide, and > then iterate on what the advisory committee looks like. > > > > > > I am sure I have missed some points in all of this, and for that I'm > sorry. However, I am intentionally not going to engage in some of the very > off topic discussions. For example, there was some excellent discussion > about the Foundation itself. That feedback was I think well received and > will be acted upon. I would expect updates and further discussion there in > separate threads though. > > > > > > I've also sent out a patch which would add these documents to the tree, > but with them clearly marked as *drafts*: http://reviews.llvm.org/D13741 This > is based on the excellent suggestion by Philip. Please only make editorial > and structural comments there, we should keep the vast majority of the > content discussion here. To that end, the drafts are copied inline at the > bottom. > > > > Thanks, > > -Chandler > > --------- > > > > =============================> > LLVM Community Code of Conduct > > =============================> > > > .. note:: > > > > This document is currently a **DRAFT** document while it is being > discussed > > by the community. > > > > We want to ensure that the LLVM community, while large and diverse, remains > > welcoming and respectful to all participants. To that end, we have a few > ground > > rules that we ask people to adhere to. > > > > This isn’t an exhaustive list of things that you can’t do. Rather, take it > in > > the spirit in which it’s intended - a guide to make it easier to > communicate > > and participate in the community. > > > > This code of conduct applies to all spaces managed by the LLVM project or > The > > LLVM Foundation. This includes IRC channels, mailing lists, bug trackers, > LLVM > > events such as the developer meetings and socials, and any other forums > created > > by the project that the community uses for communication. It applies to > all of > > your communication and conduct in these spaces, including emails, chats, > things > > you say, slides, videos, posters, signs, or even t-shirts you display in > these > > spaces. In addition, violations of this code outside these spaces may > affect > > a person's ability to participate within them. > > > > If you believe someone is violating the code of conduct, we ask that you > report > > it by emailing conduct at llvm.org. For more details please see our > > :doc:`Reporting Guide <ReportingGuide>`. > > > > * **Be friendly and patient.** > > > > * **Be welcoming.** We strive to be a community that welcomes and supports > > people of all backgrounds and identities. 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 or lack thereof, and mental and physical > ability. > > > > * **Be considerate.** Your work will be used by other people, and you in > turn > > will depend on the work of others. Any decision you take will affect > users > > and colleagues, and you should take those consequences into account when > > making decisions. Remember that we're a world-wide community, so you > might > > not be communicating in someone else's primary language. > > > > * **Be respectful.** Not all of us will agree all the time, but > disagreement is > > no excuse for poor behavior and poor manners. We might all experience > some > > frustration now and then, but we cannot allow that frustration to turn > into > > a personal attack. It’s important to remember that a community where > people > > feel uncomfortable or threatened is not a productive one. Members of the > LLVM > > community should be respectful when dealing with other members as well as > > with people outside the LLVM community. > > > > * **Be careful in the words that you choose.** We are a community of > > professionals, and we conduct ourselves professionally. Be kind to > others. Do > > not insult or put down other participants. Harassment and other > exclusionary > > behavior aren't acceptable. This includes, but is not limited to: > > > > * Violent threats or language directed against another person. > > * Discriminatory jokes and language. > > * Posting sexually explicit or violent material. > > * Posting (or threatening to post) other people's personally identifying > > information ("doxing"). > > * Personal insults, especially those using racist or sexist terms. > > * Unwelcome sexual attention. > > * Advocating for, or encouraging, any of the above behavior. > > * Repeated harassment of others. In general, if someone asks you to stop, > > then stop. > > > > * **When we disagree, try to understand why.** Disagreements, both social > and > > technical, happen all the time and LLVM is no exception. It is important > that > > we resolve disagreements and differing views constructively. Remember > that > > we’re different. The strength of LLVM comes from its varied community, > people > > from a wide range of backgrounds. Different people have different > > perspectives on issues. Being unable to understand why someone holds > > a viewpoint doesn’t mean that they’re wrong. Don’t forget that it is > human to > > err and blaming each other doesn’t get us anywhere. Instead, focus on > helping > > to resolve issues and learning from mistakes. > > > > Questions? > > =========> > > > If you have questions, please feel free to contact the LLVM Foundation > Code of > > Conduct Advisory Committee by emailing conduct at llvm.org. > > > > > > (This text is based on the `Django Project`_ Code of Conduct, which is in > turn > > based on wording from the `Speak Up! project`_.) > > > > .. _Django Project: https://www.djangoproject.com/conduct/ > > .. _Speak Up! project: http://speakup.io/coc.html > > > > > > ------- > > > > > > > > >-------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20151020/2a2abf07/attachment-0001.html>
Renato Golin via llvm-dev
2015-Oct-20 11:07 UTC
[llvm-dev] RFC: Second draft of an LLVM Community Code of Conduct
Hi Chandler, I have two very specific and very important details I want to discuss with you. The list of harassment concerns and the reporting policy being unilateral, with the latter being much more important than the former. I'm pleading people to avoid in-line reply, since the ideas are complete on their own, and picking any one paragraph may lead to misinterpretation of my words. Please, just read through, and comment at the end of each block. I also ask people not to interpret my words in any prejudicial way. This is a mathematical analysis of the text and the community, and it's the only type of analysis I'm physically able to make. If any of this looks offensive, it's because I'm not using the "politically correct" phrase construction and terms, not because I think human beings should be treated differently based on any characteristic irrelevant to the discussion. If you have any specific concern, let me know in private, to avoid deviating us from the discussion at hand. 0. Sources There are two main ones: the Ada initiative and Sarah Sharp's blog, both focus on gender inclusion. Personally, I agree with *all* of that, but I don't think we should side with any specific concern. Most of the time, prejudice is very similar, and advocating against one type often equals most other types. But not always. A few examples: * It's easy to spot gender by names, so *directed* prejudice on a mailing list is easier to women (and ethnicity) than sexual orientation of mental disability. Indirect prejudice is a lot easier to spot overall. * Disability is well established, so it's very crass to discriminate face to face, but some people feel more comfortable in discriminating against women (or gay) in person, especially if surrounded by other like minded men. * Skin colour and immigration status is a *very* contentious issue in the US, but almost irrelevant in other places of the world. This harder to spot electronically but *very* easy personally, also easier to get it wrong in the latter. * Religious discrimination is not as common in US as it is in Europe, because of the clash in cultural background in more mixed societies. It's possible that Americans (and I mean North, Centre and South) are more likely to be rude religiously than Europeans or Asians, due to severe lack of exposure to non-Christian religions. * Some cultures think it's extremely disrespectful to treat women like men. Others treat gun ownership like a religion, more important than people's safety. Isn't a gun more physically dangerous than disrespect? While we could go on forever, the key issue here is that all of those problems have infinite ramifications, but not all of them are treated equally by people that suffer a specific type of prejudice. I encourage you to draw another parallel here with me: Ada's post brings the "community conduct" in the beginning, but focus on physical contact, ie. conferences. In that area, discrimination is very clear, sometimes aggressive, and therefore potentially dangerous. Strong measures need to be taken quickly to safeguard the mental and physical state of the other participants. But most of that has a lot less practical value when dealing with mailing list or IRC conduct. Sarah's post is a lot more inline with the electronic interactions, which most of us do most of the year, and it doesn't bring much about all the differences nor speaks on drastic terms. It's based on respect. Plain and simple. So, based on your own sources, physical encounters and measures *may* need to be a lot more drastic than electronic ones, and that's not reflected on your proposal. 1. Harassment listing My point, simply put, is that listing some types of harassment, but not others, is prejudicial in itself against the people that face harassment types not specifically listed. Most of the codes you linked have a well separated block named "Diversity Statement", which lists even more stuff than what you used. CouchDB has both the list and the statement, which is highly redundant. As I listed above, there are many cultural, social and ethnic issues in each type of prejudice, and trying to list them all would be impossible. So, I think we should stick to the basics, remembering that this is an *international* community. I was recently reading about the word "race" in the English language. I see it as very derogative, trying to imply that we're *that* different. But I take it this scientific take on the meaning of the word may have been diluted over the years. I don't mind the use of it, as long as all native English speaker folks agree it's conflict-free. My proposal is to include one term for each *type* of conflict. I see: * "race" and/or "ethnicity" and/or "gender" as all conflicts involving visual individual characteristics, * "sexual orientation" and/or "religion" and/or "political views" as important non-visual characteristics, * "social status" and "disability" as important background discriminatory issues Everything else can be regarded as sub-groups of these. The codes you linked all have three very interesting ones: genotype, phenotype, neurotype. It would be possible to mathematically include *all* others within those three, but that would be too terse. So, I understand this is a spectrum, and that we have to find the right threshold. Only, that threshold is different for each one of us, because we all suffer from different types of prejudice. One idea is to set on a finite list, say 10, and let people choose which 10 they cannot live without, and pick the most common. After all, this IS "including, but not limited to". Or, if no one else is feeling segregated by that list, just keep it and ignore everything I said. :) 2. Unilateral reporting and actions This is the critical one, and unlike the harassment listing, one that I'll have *a lot* of trouble if it goes in this way. The key points are: * There is *no* mention that the committee will gather, nor value, the input of the accused. * Due to protection issues, the accused will most likely only be contacted *after* the decision is taken * Most decisions are unilateral and cannot be appealed If this was a form of government, it would be called despotism. Without knowing what the committee will be, or how it'll be chosen, replaced and be made responsible for their actions (some codes you link account for some of that), there is little we can work with at this moment. None of the codes nor the blog posts you linked have that kind of unilateral and strict consequences. I'm not sure where you got that from. Factoring out immediate criminal danger, my proposal is simple: * The accused must be involved, and must be given *every* chance to defend him/herself, including asking other people's statements, publicly or privately, * The accused's own deficiencies *must* be taken into account when presenting the verdict, and he/she should be consulted on which response would be best, * *Every* decision must allow for appeal if new evidence is presented, (the asymptote here is zero very early) * Any member of the community can request investigation of the committee's decisions, by an independent representative panel. By representative, I mean chosen by the people, for the people, and accountable for their actions to the people, with the same vigour as we deal with breaches of conduct. Basically put, the ends don't justify the means. This reporting guide puts too much power into a committee that hasn't even been decided how it will be formed. Given how the LLVM Foundation was formed, I understand why people are unsure how this will play out. However, even if we did know exactly how the committee would be chosen, these guarantees are still mandatory. As I said earlier, projects and people change. If the code allows for abuse, given enough time, abuse will be taken. cheers, --renato
Joachim Durchholz via llvm-dev
2015-Oct-20 12:32 UTC
[llvm-dev] RFC: Second draft of an LLVM Community Code of Conduct
Am 20.10.2015 um 13:07 schrieb Renato Golin via llvm-dev:> It's possible that Americans (and I mean North, Centre and South) are > more likely to be rude religiously than Europeans or Asians, due to > severe lack of exposure to non-Christian religions.Just for the record: Actually in Mid and South America, non-Christian religions are making a comeback, up to and including representatives of shamanic belief systems inaugurating a president. I.e. I think your analysis may be slightly off the mark here. Some more general remarks: I do agree that any concrete bullet list of harrassing actions is culturally biased, and I do agree that that might cause problems in the long term. I'm not 100% sure that this is going to be serious though. No dictatorship ever worked as long as people could vote with their feet, and if it comes to the worst and the LLVM committee starts making "strange decisions", there will be an organizational fork and likely a code fork as well. Over time, one of the forks will die, or they will get merged amicably - either way nothing really bad happened, except maybe to those who engaged in direct confrontation. The knowledge that this can happen will in itself cause the committee to restrain any dictatorial ambitions, further reducing the issue a bit. Well, that's the typical event sequences. There is the occasional exception, mostly revolving around situations where the original project isn't that easy to leave or fork after all. So I won't deny that there could be a problem, and it would be nice to get that improved. OTOH any alternate proposals would need to be evaluated as well, and I have seen situations where the cure was as bad as the illness. I'm willing to accept that some things simply can't be regulated via rules and bylaws, and the best and most well-meaning organisations can deteriorate. It's just what can (and ultimately will) happen, not the End of the World as we Know it, so... relax :-) Regards, Jo
Karen Shaeffer via llvm-dev
2015-Oct-20 14:22 UTC
[llvm-dev] RFC: Second draft of an LLVM Community Code of Conduct
On Tue, Oct 20, 2015 at 12:07:43PM +0100, Renato Golin via llvm-dev wrote:> Hi Chandler, > > I have two very specific and very important details I want to discuss > with you. The list of harassment concerns and the reporting policy > being unilateral, with the latter being much more important than the > former. > > I'm pleading people to avoid in-line reply, since the ideas are > complete on their own, and picking any one paragraph may lead to > misinterpretation of my words. Please, just read through, and comment > at the end of each block. > > I also ask people not to interpret my words in any prejudicial way. > This is a mathematical analysis of the text and the community, and > it's the only type of analysis I'm physically able to make. If any of > this looks offensive, it's because I'm not using the "politically > correct" phrase construction and terms, not because I think human > beings should be treated differently based on any characteristic > irrelevant to the discussion. If you have any specific concern, let me > know in private, to avoid deviating us from the discussion at hand. > > 0. Sources > > There are two main ones: the Ada initiative and Sarah Sharp's blog, > both focus on gender inclusion. Personally, I agree with *all* of > that, but I don't think we should side with any specific concern. > > Most of the time, prejudice is very similar, and advocating against > one type often equals most other types. But not always. A few > examples: > > * It's easy to spot gender by names, so *directed* prejudice on a > mailing list is easier to women (and ethnicity) than sexual > orientation of mental disability. Indirect prejudice is a lot easier > to spot overall. > * Disability is well established, so it's very crass to discriminate > face to face, but some people feel more comfortable in discriminating > against women (or gay) in person, especially if surrounded by other > like minded men. > * Skin colour and immigration status is a *very* contentious issue in > the US, but almost irrelevant in other places of the world. This > harder to spot electronically but *very* easy personally, also easier > to get it wrong in the latter. > * Religious discrimination is not as common in US as it is in Europe, > because of the clash in cultural background in more mixed societies. > It's possible that Americans (and I mean North, Centre and South) are > more likely to be rude religiously than Europeans or Asians, due to > severe lack of exposure to non-Christian religions. > * Some cultures think it's extremely disrespectful to treat women > like men.Hi Renato, With all due respect, cultural tradition doesn't justify discrimination against women. More generally, there is a long history of outrageous and often violent discrimination against groups that becomes embedded within the cultural tradition of a segment of a society. That is true everywhere, including the United States. Living and working in Silicon Valley for many years, I have worked with and become friends with folks from all over the world. And most of them are wonderfully adaptive folks who aspire to the ideal of equality for all that the United States aspires to as an inclusive society at large. But I have personally been the victim of hideous discrimination projected onto me by individual's who justify their actions by cultural tradition. It's no small matter. Karen.> Others treat gun ownership like a religion, more important > than people's safety. Isn't a gun more physically dangerous than > disrespect? > > While we could go on forever, the key issue here is that all of those > problems have infinite ramifications, but not all of them are treated > equally by people that suffer a specific type of prejudice. > > I encourage you to draw another parallel here with me: > > Ada's post brings the "community conduct" in the beginning, but focus > on physical contact, ie. conferences. In that area, discrimination is > very clear, sometimes aggressive, and therefore potentially dangerous. > Strong measures need to be taken quickly to safeguard the mental and > physical state of the other participants. But most of that has a lot > less practical value when dealing with mailing list or IRC conduct. > > Sarah's post is a lot more inline with the electronic interactions, > which most of us do most of the year, and it doesn't bring much about > all the differences nor speaks on drastic terms. It's based on > respect. Plain and simple. > > So, based on your own sources, physical encounters and measures *may* > need to be a lot more drastic than electronic ones, and that's not > reflected on your proposal. > > > 1. Harassment listing > > My point, simply put, is that listing some types of harassment, but > not others, is prejudicial in itself against the people that face > harassment types not specifically listed. > > Most of the codes you linked have a well separated block named > "Diversity Statement", which lists even more stuff than what you used. > CouchDB has both the list and the statement, which is highly > redundant. > > As I listed above, there are many cultural, social and ethnic issues > in each type of prejudice, and trying to list them all would be > impossible. So, I think we should stick to the basics, remembering > that this is an *international* community. > > I was recently reading about the word "race" in the English language. > I see it as very derogative, trying to imply that we're *that* > different. But I take it this scientific take on the meaning of the > word may have been diluted over the years. I don't mind the use of it, > as long as all native English speaker folks agree it's conflict-free. > > My proposal is to include one term for each *type* of conflict. I see: > * "race" and/or "ethnicity" and/or "gender" as all conflicts > involving visual individual characteristics, > * "sexual orientation" and/or "religion" and/or "political views" as > important non-visual characteristics, > * "social status" and "disability" as important background > discriminatory issues > > Everything else can be regarded as sub-groups of these. The codes you > linked all have three very interesting ones: genotype, phenotype, > neurotype. It would be possible to mathematically include *all* others > within those three, but that would be too terse. > > So, I understand this is a spectrum, and that we have to find the > right threshold. Only, that threshold is different for each one of us, > because we all suffer from different types of prejudice. > > One idea is to set on a finite list, say 10, and let people choose > which 10 they cannot live without, and pick the most common. After > all, this IS "including, but not limited to". > > Or, if no one else is feeling segregated by that list, just keep it > and ignore everything I said. :) > > > 2. Unilateral reporting and actions > > This is the critical one, and unlike the harassment listing, one that > I'll have *a lot* of trouble if it goes in this way. > > The key points are: > > * There is *no* mention that the committee will gather, nor value, > the input of the accused. > * Due to protection issues, the accused will most likely only be > contacted *after* the decision is taken > * Most decisions are unilateral and cannot be appealed > > If this was a form of government, it would be called despotism. > Without knowing what the committee will be, or how it'll be chosen, > replaced and be made responsible for their actions (some codes you > link account for some of that), there is little we can work with at > this moment. None of the codes nor the blog posts you linked have that > kind of unilateral and strict consequences. I'm not sure where you got > that from. > > Factoring out immediate criminal danger, my proposal is simple: > > * The accused must be involved, and must be given *every* chance to > defend him/herself, including asking other people's statements, > publicly or privately, > * The accused's own deficiencies *must* be taken into account when > presenting the verdict, and he/she should be consulted on which > response would be best, > * *Every* decision must allow for appeal if new evidence is > presented, (the asymptote here is zero very early) > * Any member of the community can request investigation of the > committee's decisions, by an independent representative panel. > > By representative, I mean chosen by the people, for the people, and > accountable for their actions to the people, with the same vigour as > we deal with breaches of conduct. > > Basically put, the ends don't justify the means. This reporting guide > puts too much power into a committee that hasn't even been decided how > it will be formed. Given how the LLVM Foundation was formed, I > understand why people are unsure how this will play out. However, even > if we did know exactly how the committee would be chosen, these > guarantees are still mandatory. As I said earlier, projects and people > change. If the code allows for abuse, given enough time, abuse will be > taken. > > cheers, > --renato > _______________________________________________ > LLVM Developers mailing list > llvm-dev at lists.llvm.org > http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev--- end quoted text --- -- Karen Shaeffer Be aware: If you see an obstacle in your path, Neuralscape Services that obstacle is your path. Zen proverb
Apparently Analagous Threads
- RFC: Introducing an LLVM Community Code of Conduct
- RFC: Second draft of an LLVM Community Code of Conduct
- RFC: Introducing an LLVM Community Code of Conduct
- RFC: Introducing an LLVM Community Code of Conduct
- Resuming the discussion of establishing an LLVM code of conduct