Skip to content
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

Create CODE_OF_CONDUCT.md #2895

Closed
wants to merge 2 commits into from

Conversation

jacobherrington
Copy link
Contributor

I personally think this is valuable, but I want to open it up to
discussion. Is this something Solidus would benefit from? Are there
any changes we'd like to make from the Code of Conduct at
https://citizencodeofconduct.org/?

Improvements that could be made to this PR: adding a grievance
policy and adding reporting guidelines.

Copy link
Member

@tvdeyen tvdeyen left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I 100% support this. ❤️

We need to be sure that reports get dealt with in an appropriate manner. Therefore we would ideally define a person (or several persons) who are in charge for dealing with violations of the CoC.


## 9. Contact info

[email protected]
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I don't know who reads this Mail. We need to make sure we have a public email address that core team members get. Maybe we can define one dedicated person for this and present their email here?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

You're right, also the contact email and the reporting email should be different.

I'm happy to be that person if no one wants to volunteer, but would a group email for the core team members be better? That would allow you and the others to discuss the emails during core team meetings when/if they came up.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'm happy to be that person if no one wants to volunteer

Thank you. That would be great.

to discuss the emails during core team meetings

I am not sure this is necessarily a core team responsibility. Reading the code of conduct:

Unacceptable behavior from any community member, including sponsors and those with decision-making authority, will not be tolerated.

Having a team outside of the core team is even preferable

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Do we want to create something like [email protected]?

@tvdeyen
Copy link
Member

tvdeyen commented Oct 5, 2018

Please ignore the failed Netlify checks. They will be green after we merged #2893

@kennyadsl
Copy link
Member

Personally I'm more for a simpler Community Conduct Guideline like the one used for Ruby which we can evolve in our community if we think it's needed.

@jacobherrington
Copy link
Contributor Author

@kennyadsl I think that is a good idea.

However, I also really like this part of the Citizen Code of Conduct:

1. Purpose

A primary goal of Solidus is to be inclusive to the largest number of contributors, with the most varied and diverse backgrounds possible. As such, we are committed to providing a friendly, safe and welcoming environment for all, regardless of gender, sexual orientation, ability, ethnicity, socioeconomic status, and religion (or lack thereof).
This code of conduct outlines our expectations for all those who participate in our community, as well as the consequences for unacceptable behavior.
We invite all those who participate in Solidus to help us create safe and positive experiences for everyone.

2. Open Source Citizenship

A supplemental goal of this Code of Conduct is to increase open source citizenship by encouraging participants to recognize and strengthen the relationships between our actions and their effects on our community.
Communities mirror the societies in which they exist and positive action is essential to counteract the many forms of inequality and abuses of power that exist in society.
If you see someone who is making an extra effort to ensure our community is welcoming, friendly, and encourages all participants to contribute to the fullest extent, we want to know.

And I appreciate the idea of having a line of communication -- such as an email inbox intended for people who are having problems or have questions with the community.

Thoughts?

@jacobherrington
Copy link
Contributor Author

jacobherrington commented Oct 5, 2018

@tvdeyen @kennyadsl What are your thoughts on the following?


The Solidus Code of Conduct

Solidus strives to be inclusive of as many contributors as possible.

All contributors and participants are welcome regardless of gender, sexual orientation, ability, race, ethnicity, socioeconomic status, and religion (or lack thereof).

This document highlights the values of the Solidus community. It includes our expectations for community members. It is inspired by elements of the Ruby Community Conduct Guideline.

It applies to all "collaborative space", which is defined as community communications channels (such as mailing lists, messaging platforms, conferences, meetups, submitted patches, commit comments, etc.).

Community Expectations

  • Participants will be tolerant of opposing views and new ideas.
  • Participants will not engage in personal attacks and disparaging personal remarks.
  • When interpreting the words and actions of others, participants will always assume good intentions.
  • Behavior which can be considered harassment will not be tolerated.

We invite all Solidus contributors and participants to join us in creating a productive and positive open source community.

Have Questions?

[email protected]


I would love to hear from @gmacdougall @cbrunsdon or @ericsaupe as well as any member of the community with opinions on this idea. Thanks.

@tvdeyen
Copy link
Member

tvdeyen commented Oct 5, 2018

Sounds great.

Maybe add "Conferences" and "Meetups" as collaborative spaces?

@jacobherrington
Copy link
Contributor Author

Done!

@tvdeyen
Copy link
Member

tvdeyen commented Oct 5, 2018

Please rebase to get rid of the Netlify errors.

@jacobherrington
Copy link
Contributor Author

jacobherrington commented Oct 5, 2018

@tvdeyen Done, also updated the CoC to the copy from my previous comment. Thanks!

@jacobherrington
Copy link
Contributor Author

Not sure why this failed CI. You can't see any useful information on the Circle web app because of the deprecation warnings, but if you download the log here is the failure:

1) Checkout user has payment sources allows user to enter a new source
     Failure/Error: expect(page).to have_current_path(spree.order_path(Spree::Order.last))
       expected "/checkout/payment" to equal "/orders/R681598160"
     # ./spec/features/checkout_spec.rb:364:in `block (3 levels) in <top (required)>'

ericsaupe
ericsaupe previously approved these changes Oct 8, 2018
Copy link
Contributor

@ericsaupe ericsaupe left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for this!

@mamhoff
Copy link
Contributor

mamhoff commented Oct 9, 2018

Thank you. I think this is a great step forward.

Copy link
Member

@kennyadsl kennyadsl left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks, I think this is the right direction. I just left some personal opinion on the text proposed. 🙂

CODE_OF_CONDUCT.md Outdated Show resolved Hide resolved
CODE_OF_CONDUCT.md Outdated Show resolved Hide resolved
CODE_OF_CONDUCT.md Outdated Show resolved Hide resolved
CODE_OF_CONDUCT.md Outdated Show resolved Hide resolved
CODE_OF_CONDUCT.md Outdated Show resolved Hide resolved
@jacobherrington
Copy link
Contributor Author

@kennyadsl Good suggestions, changes made!

Copy link
Member

@tvdeyen tvdeyen left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Instead of applying changes from few community members onto this PR without further discussion, we should leave this to the first commit and collect more opinions from the community - especially from outside the core team - and then apply them.

Copy link
Contributor

@mamhoff mamhoff left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

As it is right now, this is not a code of conduct anymore. A code of conduct must have

  • a list of unacceptable behaviours
  • a rationale for why that list is there
  • and an understandable process for a list of infractions.

The document at this point is more a community behaviour guideline ("Let's be nice"). In order to be clear about the intentions of the document, I would request the name of the file to be changed to COMMUNITY_EXPECTATIONS.md or something along those lines.

Personally, I would prefer a code of conduct with the details listed above. However, that kind of document needs to come with a somewhat institutionalized process about how to deal with infractions (who gets the email, who does not, what action will be taken, etc.). This process needs to be decided from within the core team I think.

@jacobherrington
Copy link
Contributor Author

@tvdeyen I agree, let's talk about it some more.

@mamhoff I think we started with that, but started leaning more towards this based on @kennyadsl's suggestion to look at https://www.ruby-lang.org/en/conduct/ for inspiration.

@stem
Copy link
Contributor

stem commented Oct 10, 2018

According to https://opensource.guide/code-of-conduct/, this draft lacks some points :

  • What happens if someone violates the code of conduct
  • How someone can report violations

I think the the Contributor Covenant is good and used as a base by rails

@ericsaupe ericsaupe dismissed their stale review October 11, 2018 16:39

I agree with @stem that more should be discussed about what happens if someone violates the code of conduct, where they can go for help, etc.

@jacobherrington
Copy link
Contributor Author

jacobherrington commented Nov 9, 2018

@ericsaupe @stem that's definitely valuable. Do you have any ideas on how to phrase that? I'd love to incorporate it, but those rules should come from the core team.

@tvdeyen any thoughts on how long we should leave this open? I will drop it in Slack again.

@jarednorman
Copy link
Member

I'm in favour of this change. I know we've had some minor incidents before, having personally assisted in the resolution of some, but there was no official process or rules to govern that, nor expectations laid out.

I tend to agree with @mamhoff's points about what's missing here, and with @stem that using the Contributor Covenant is a good option.

I personally think this is valuable, but I want to open it up to
discussion.

Going with the Contributor Covenant as a baseline was recommended while
discussing different approaches to this type of document.
@jacobherrington
Copy link
Contributor Author

@kennyadsl @tvdeyen @jarednorman @stem @mamhoff

Based on suggestions from all of you, I have reset this PR to a single commit that is just the Contributor Covenant. The only part left for this document is selecting an email address to put in this document.

Does anyone object to adopting this document, and making changes if the need presents itself?

@jacobherrington
Copy link
Contributor Author

@solidusio/core-team I've updated this PR. I still need someone to create an inbox for us to monitor for this kind of thing. Otherwise, I think it's ready to merge.

@mamhoff
Copy link
Contributor

mamhoff commented Apr 8, 2019

I like that the file is not named CODE_OF_CONDUCT.md because this is not one. I would appreciate if the title of the PR would be changed as well.

This is not a legal issue. It's a political issue. The question here is: Do we virtue signal that we'll go slightly out of our way to make people feel welcome who are not white men, or do we not? The document that is now being discussed signals (through omission) that we do not care. Who is in a position to sue anyone, and why would they do that? I have the impression that the framing of the CoC-discussion as "legally difficult", the core team is trying to get out of the political dimension that this has.

In my view, this is a political statement, and one that does not help this community attract more contributors (quite the oppposite, as it's making me more reluctant to contribute).

It is especially ironic that Github just shipped a feature that allows maintainers to block people in such a way that the blocking is visible. How will the Solidus maintainers use this feature? Under which circumstances? The shipping of that feature also indicates that it is wishful thinking that Github will take care of Solidus' community management.

@kennyadsl
Copy link
Member

Thanks for your insights Martin.

GitHub has a team trained to arbitrate and I thik they can do this way better than us.

They released that feature but that does not mean that we are forced to use it. They also recently updated their Acceptable Use policy to include restrictions on conduct and they provide a tool to report this kind of abuses, stating:

Code collaboration should be safe for everyone, so we take abuse and harassment seriously at GitHub. We want to hear about harmful behavior on the site that violates GitHub’s Terms of Service. Let us know the name of the user you’re concerned with. Rest assured, we’ll keep your identifying information private.

So I assume they want to take care of violations.

@peterberkenbosch
Copy link
Contributor

👍 Also there is this: https://opensource.guide/code-of-conduct/ wanted to add it as reference. It's from GitHub https://github.com/github/opensource.guide.

@tvdeyen
Copy link
Member

tvdeyen commented Apr 9, 2019

Thanks @peterberkenbosch this is a great resource!

I agree that we only can adopt a code of conduct if we are also have rules of enforcing it. Otherwise it is worthless. But I also do respect that some people of the core team are not willing to take responsibility of enforcing it. Not everybody that is a great open source maintainer is also a great mediator and trained person to deal with every situation in a correct way. And one can't expect them to be.

But I still think we should have a real code of conduct, so what should we do?

Proposal

Like other communities we form a code fo conduct committee that is not the core team (or at least not all of them).

IMO this has several advantages:

  1. Not every member of the core team is forced to handle code of conduct violations if they don't feel to be able to
  2. Our community can be sure that only people that are able to handle such situations in the correct way deal with it
  3. If someone of the core team is violating the code of conduct the committee will handle this as well, giving the community the insurance that we (the core team) do not use our power in a wrong way

Who is willing to join such team?

WDYT @solidusio/core-team ?

@peterberkenbosch
Copy link
Contributor

@tvdeyen you can write my name down for such a team. No problem.

@jacobherrington
Copy link
Contributor Author

Having re-written this like four (or more times) times I agree that we need to delegate this to a small group. I'm happy to help if I'm need, but let's try to balance community/core involvement.

Initially I used one of the documents provided by GH, but due to the opinions of this thread, it has transformed into the current state.

@mamhoff
Copy link
Contributor

mamhoff commented Oct 8, 2019

Can we link/import the "Community Guidelines" from https://solidus.io/community-guidelines/ so this can be closed?

@jacobherrington
Copy link
Contributor Author

@mamhoff Made a PR for this 👍

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

8 participants