backdrop/backdrop-issues

Add a 'Code of Conduct' section to README.md

jenlampton opened this issue ยท 38 comments

We should put a copy of our code of conduct into the core repository. The text is located here: https://github.com/backdrop-ops/conduct/blob/master/code_of_conduct.md

Instructions on how to add a code of conduct can be found here:
https://help.github.com/en/articles/adding-a-code-of-conduct-to-your-project


COC PR: backdrop-ops/conduct#4 merged
Core PR: backdrop/backdrop#2840
PR: backdrop/backdrop#3114

@jenlampton I have formatted the file to 80 chars line limit. Please review and merge: backdrop-ops/conduct#4 ...we can then add the document to core.

...since this is not actually touching any code, I believe it can be added anytime. So proposing version 1.12.6 as a milestone.

Copied the file into core. PR here: backdrop/backdrop#2840

Thanks @BWPanda ๐Ÿ‘

I'd like to hold on this until we can remove files from the packaged (download) version of Backdrop. Files that are meant for GitHub integration shouldn't end up in the packaged version.

Is there a benefit of moving the CoC to core if we're just going to remove it from downloads then? Seems to me in that case that we're just making the CoC available online somewhere to link to from other documentation, in which case a separate 'docs' (or similar) repo sounds like a better option...

Files that are meant for GitHub integration shouldn't end up in the packaged version.

Adding a code of conduct is not a GitHub-only integration, it's a general good practice for Open Source projects. GitHub just happens to have standardized the way to do it.

Here's a matching drupal issue for adding a code of conduct, even though Drupal is not hosted on GitHub.

a separate 'docs' (or similar) repo sounds like a better option...

@BWPanda we already have a separate repo for working on coc language, but adding a copy to core will be good for the community: https://help.github.com/en/github/building-a-strong-community/adding-a-code-of-conduct-to-your-project

I'm bumping this issue to 1.15.1 for now.

@quicksketch
I am confused. It's not clear to me why the Code of Conduct would need to be removed from the packaged (download) version of Backdrop?

@jenlampton
It's unclear to me if you think that the Code of Conduct should or should not be included in the packaged version of Backdrop?

I think you are saying that it should be included, but it's not 100% clear.

I've never thought about it before but, I think giving the community's Code of Conduct the same level of importance/prominence as we do the GPL would be a powerful statement.
Just seeing it discussed makes me more excited that I've started to participate in this community recently.

I know I created the PR above, but now I'm wondering about the benefit of having this in core itself... It makes sense to have it somewhere, but not in a download someone makes of the Backdrop code to install on their web host. And if not in the download, then not in the core repo (I think this is what @quicksketch was saying above, and which I'm starting to agree with).

I don't see any reason to remove it?

The more files there are in core, the larger downloads will become, and the more maintenance is required.

The code of conduct states how people should act when participating in the Backdrop community. The Backdrop community isn't on a web host where packaged copies of Backdrop end up, but in the forum, Zulip and issue queues. That's where the CoC should be.

The more files there are in core, the larger downloads will become

If we really care about the size of these text files (and I don't think we do) we should probably throw out the license and readme files too. The size of these text files is negligible compared to the good they do.

and the more maintenance is required.

It's true that managing text in Git can be a pain, but the amount of maintenance it takes for COC is far less than say, a dashboard module. Both have value :)

The code of conduct states how people should act when participating in the Backdrop community. The Backdrop community isn't on a web host where packaged copies of Backdrop end up, but in the forum, Zulip and issue queues.

I would argue that the Backdrop community involves everyone. The people who only use backdrop as well as people who contribute in the forum, chat, and in issues.

Generally speaking, the number of people who actively contribute to an open source project is a small fraction of the number of people in the community. I believe that everybody in the community should know that we have a coc.

... in the forum, Zulip and issue queues. That's where the CoC should be.

A CoC should definitely be in those places too, but I think people should know about the code of conduct long before they land in these places. The fact that we have a coc even may be a compelling factor for people choosing a CMS -- most especially for our target audience.

When people first evaluate software they don't usually do a git checkout (especially our audience). They'll grab a package and pop it open. Having a readme, a license, and a code of conduct in the root of the project makes a statement.

IMHO, If we're going to be serious about having and enforcing a COC it needs to be included in the packaged download.

If we really care about the size of these text files ... we should probably throw out the license and readme files too.

As far as I'm aware, we're required to bundle the license with the software, so that has to stay. And the readme I think is helpful to people who download and use packaged copies of Backdrop (it lists requirements for running it, installation instructions, etc.).

I would argue that the Backdrop community involves everyone.

I believe that everybody in the community should know that we have a coc.

I think people should know about the code of conduct long before they land in [the forum, Zulip and issue queues]. The fact that we have a coc even may be a compelling factor for people choosing a CMS -- most especially for our target audience.

Agreed on all points. And I think a link to the CoC in the readme is the perfect place for that ๐Ÿ™‚

When people first evaluate software they don't usually do a git checkout ...

I'm not saying they should. My point is that the CoC is fine where it is (https://github.com/backdrop-ops/conduct) and that we can simply put a link to it in the readme that comes bundles with Backdrop core so that everyone knows about it.

And I think a link to the CoC in the readme is the perfect place for that ๐Ÿ™‚

I would be willing to compromise on a link.

But I'd still prefer we make the statement. We should care more about our people than our code.

We should care more about our people than our code.

Maybe we should care more about quality of our code, because people can/should care himself about themselves?

Made a new PR that adds a link to the CoC to Backdrop's main README.

I support @jenlampton original proposal of including the entire code of conduct as per GitHub standard. Let's make it easy for people to find.

@jenlampton maybe the PMC should make the final decision?

I'm asking the PMC to come to a decision on where we want to manage our Code of Conduct. Should it be included in core or should it be maintained elsewhere and we simply include a link in core.

I do not feel strongly about either option, but I would be supportive of including the entire Code of Conduct in core (as originally proposed in this issue).

I think it is most important that we come to some decision in this regard (rather than leaving this issue open indefinitely) and that the PMC might be the right venue to make this decision.

Does anyone have any additional thoughts on this, before a decision is made?

I do not feel strongly about either option...

Same here ๐Ÿ‘๐Ÿผ ...just wanna get things done ๐Ÿ™‚

The only drawback I see with keeping the entire CoC in code is that if we need to tweak/amend it, then we'd need to get a new release out. Having the CoC live on a wiki or on b.org and linking to it from the README means that we can update it there, independently of the Backdrop core repo.

I'm for having it sit outside of the core repo.

Core is for code that is under the umbrella of the organization/foundation.

Code of conduct is directly tied to the organization/foundation, just like the legal entity, copyright declaration etc.

I strongly like the idea of the CoC being within its own github repo because of the change-record and publicly available tracking of changes. I'm fine with a copy living in a wiki or docs somewhere, but there should be an "official" document that can show what has changed, when and why.

It's a big reason I am advocating for https://github.com/backdrop-talk as a place to officially hold these exact types of documents and discussions around their creation and amendments.

At the bare minimum the Code of Conduct should be published on the main website (like the Django project https://www.djangoproject.com/conduct/), AND have a link to it in the README.md of the main project.

Then at a later point when it's possible to remove files in the packager, it could also be put in the project itself. But there's nothing stopping us from taking the first step.

This is helpful too https://opensource.guide/code-of-conduct/

I haven't commented here in a long time, I just wanted to express that my comment from above is no longer valid:

I'd like to hold on this until we can remove files from the packaged (download) version of Backdrop. Files that are meant for GitHub integration shouldn't end up in the packaged version.

We can now remove files from the packaged versions of Backdrop, as we are doing for things that are internal to the Backdrop project, such as Tugboat and GitHub integration.

@BWPanda would you be willing to rebase the PR at backdrop/backdrop#3114?

@jenlampton Sure. PR updated.

PR looks great to me. RTBC :)

Looks good. To be clear, the current PR includes a short statement in the README file about the code of conduct with a link to https://github.com/backdrop-ops/conduct/blob/master/code_of_conduct.md

This looks good to me. I am glad to see this moving forward.

Yep:

image

Current PR looks good to me too.

Oops, sorry there is an issue with the link referencing the old name of the branch (master instead of main): https://github.com/backdrop/backdrop/pull/3114/files#r603015680

PR updated.

Nice catch! Sorry, I changed that earlier today :/

As this is escalated to the PMC as of yesterday (#3632 (comment)), I want to hold off on merging this until a decision is made there.

IMO the PR at backdrop/backdrop#3114 looks good and no downsides. We could take it further by putting directly in the core repo. However, benefit there is only minimal since right now all of our issues are here, in the backdrop-issues queue, so we won't get GitHub's automatic integration by putting it in the backdrop repository. As a core committer, I would prefer that policy documents are manageable by the PMC separately from the rest of core. I agree with @herbdool's comment that we should make it easy to find. I think the README.md is a good start.

The PMC yesterday voted unanimously in favor of adding this CoC link to the README.md. Thank you for this work y'all!

Can we merge the PR then, or are we waiting on anything else...?

Yep, we're set! @BWPanda if you get the chance before I do, please merge into 1.x and 1.18.x.

Thanks everyone for your feedback, especially to @quicksketch, @jenlampton, @klonos & @stpaultim for your help with reviewing the PR. I've merged backdrop/backdrop#3114 into 1.x and 1.18.x.