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
New Pattern: Code of Conduct #661
base: main
Are you sure you want to change the base?
New Pattern: Code of Conduct #661
Conversation
…wing inline suggestions on GitHub.
…he published online book automatically.
@rmarting thanks for this new PR! For now I just sent some formatting fixes, making it easier for other reviews (and me) to provide inline suggestions on GitHub. Hope you don't mind that I pushed this straight to your branch. Hope to review the content of the pattern some time this weekend as well. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Hi @rmarting.
Once again, thanks so much for sharing your thoughts with us here.
The sections that new pattern contributors often find the hardest are the Context and Forces sections. So don't be disheartened if it can take a while to wrap your head around those concepts. This video contains helpful explanation about those concepts.
I left most of my comments inline.
However I had two general thoughts that I want to share:
- Is there a general description of the goals of a CoC that we can link to? (typically these references come from the open source world)
- What happens when the CoC is broken? Is that something that could be added to the solution or implementation section? Here is an a conference talk related to this that I once heard, and also the Mozilla Community Participation Guidelines contain something about the reporting process in case of a CoC violation. Again this point might be different in InnerSource than in open source, and therefore even more valuable to describe as part of this pattern.
Hope you find this review helpful, and I am happy to answer any questions and help you through the rest of the process of getting this contribution added to our repo.
You rock 🤘
|
||
## Patlet | ||
|
||
A healthy and inclusive InnerSource community requires strong levels of communications and interactions. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
If you were to rewrite the Patlet as 2 sentences (1 problem + 1 solution), how might that look like?
The absence of clear rules of communication and interaction leaves room for ambiguity and potential conflicts within the InnerSource community. | ||
Without established guidelines, members may engage in behavior that is harmful, discriminatory, or counterproductive, leading to a breakdown in collaboration and trust. | ||
|
||
## Context |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The Context section should describe the following:
Where does the problem exist? What are the pre-conditions? Unchangeable before the solution goes into place. The content here is often tied to the applicability of the pattern for other readers: "Do I have this same particular situation?"
The current text rather describes the state that should be achieved after the pattern has been implemented, I think?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Does this new content fit better the Context section?
Different individuals and teams within the organization collaborate in a healthy and inclusive community without conflicts. | ||
This welcoming, respectful and inclusive environment fosters more collaboration and creates trusted relationships across the organization where all community members feel safe and valued. | ||
|
||
## Forces |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The Forces section should describe the following:
What makes the problem difficult? What are the trade-offs? These are constraints that can be changed at a cost. The solution might change one or more of these forces in order to solve the problem, while also in-turn changing the context.
Example of forces that might apply to this pattern could be:
- unclarity by contributors about ....
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
A listed different actions to clarify better the Forces section. Does it fit better?
## Solution | ||
|
||
Develop a Code of Conduct that outlines expected behavior, including guidelines for communication, collaboration, and conflict resolution. | ||
The Code of Conduct will articulate the shared values and principles of the InnerSource community, fostering a sense of belonging and common purpose, such as: |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Are the "shared values and principles of the InnerSource community" defined in the CoC somehow tied to the values/principles that the org may have defined in other places already?
If yes, then a note about this could be added to the Implementation section.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I added some references about the integration with the organization rules and employee handbooks. It is the normal way to define these values and principles along the InnerSource project.
Hope that helps to clarify the solution.
@@ -0,0 +1,77 @@ | |||
## Title |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
collection of general feedback here:
- Is there a general description of the goals of a CoC that we can link to?
- What happens when the CoC is broken? Is that something that could be added to the solution or implementation section? Here is an a conference talk related to this that I heard once, and also the Mozilla Community Participation Guidelines contain something about the reporting process in case of a CoC violation. Again this point might be different in InnerSource than in open source, and therefore even more valuable to describe as part of this pattern.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Answering the Is there a general description of the goals of a CoC that we can link to?
question, this reference is a good one from the Open Source space, but I don't see how to link here. Maybe adding this reference in the Related patterns...
Regarding to broken the CoC, the implementation section is extended including the reporting process and the consequences when the CoC is not followed. It is a general description, just because, each CoC can differ in the final implementation of these processes, however, all of them must be part of the CoC.
|
||
## Implementation | ||
|
||
The adoption of well-known covenants, such as the [Contributor Covenant](https://www.contributor-covenant.org/), or the adaptation of some internal covenant for members of the organization are good starting points for implementation of this pattern. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Just noting that I, as a non-native English speaker, don't know the word covenant.
Is there a word that means the same but is a bit simpler?
e.g. does "convention" mean the same?
|
||
1. Collaboratively draft the Code of Conduct, involving input from community members representing diverse perspectives. | ||
2. Seek feedback and consensus from the community to ensure buy-in and ownership of the guidelines. | ||
3. Publish the finalized documents in a prominent location accessible to all community members, such as the InnerSource platform or collaboration tools. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Can you elaborate on what you mean by these two things:
- InnerSource platform
- collaboration tool
3. Publish the finalized documents in a prominent location accessible to all community members, such as the InnerSource platform or collaboration tools. | ||
4. Regularly review and update the Code of Conduct as needed to reflect evolving community norms and values. | ||
|
||
A good practice for the third point is to share the Code of Conduct in each InnerSource community repository as a file named `CODE_OF_CONDUCT.md`. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Is this possibly an area where a CoC in InnerSource could differ from a CoC in open source?
What I mean is, do you expect that different InnerSource projects within an org would end up having different CoCs? If not, could one just link to a central document, to prevent duplication?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I usually see two approaches:
- A shared template repository with the original content to use when a new project starts
- A shared resource linked from each CoC file
To make it easy, just explained the second option. What do you think?
Hi @discombobulateme, I was wondering if you have heard about a Code of Conduct in the context of an InnerSource project before? Curious to hear your thoughts on the applicability of the concept outside of the open source or open community domain. Feel free to leave a comment here or add in line thoughts to this PR, whatever works for you. Any time you can spare, we would appreciate so much! :) |
Also I found the slides from the amazing The code of conduct has been broken talk I had already mentioned before. Possibly we could borrow the idea from slide 11 for an illustration for your pattern here? |
Hi Sebastian :)
Ohhh how sweet of you :)
Please remix it! And let me know your takes, this is an ongoing
conversation :)
I like to see our internal as our first community, and I understand the
code of conduct, in the case of a company, needs to be verified with HR, as
it implies a bit more strict laws, especially in a global context.
In case you would like to exchange some experiences I would love to :)
A warm regard,
Paloma
…On Mon, Mar 11, 2024 at 10:19 PM Sebastian Spier ***@***.***> wrote:
Also I found the slides
<https://docs.google.com/presentation/d/1cNxHbvtxooB3PTUI1xwb7PA_BYVsj_ZvOenbXWaOiH8/edit#slide=id.g17a2e204e59_0_90>
from the amazing The code of conduct has been broken
<https://www.youtube.com/watch?v=RBZrYMEJFXA&list=PLq-odUc2x7i9Zrs4oyM1I3V5xlYICEL2g&index=8>
talk I had already mentioned before.
Possibly we could borrow the idea from slide 11 for an illustration for
your pattern here?
—
Reply to this email directly, view it on GitHub
<#661 (comment)>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/AB44MUFOK6IKF3BAPO3SQD3YXYNUXAVCNFSM6AAAAABEGR2BNCVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTSOBZGQ3DENZSHA>
.
You are receiving this because you were mentioned.Message ID:
***@***.***>
--
Paloma Oliveira
Growth Engineer
***@***.***
www.saucelabs.com
Sauce Labs Europe GmbH
Warschauer Platz 11-13 I 10245 Berlin I Germany
|
Co-authored-by: Sebastian Spier <github@spier.hu>
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@spier Just followed your suggestions and I updated the content with new material that hopefully fits all your ideas.
The absence of clear rules of communication and interaction leaves room for ambiguity and potential conflicts within the InnerSource community. | ||
Without established guidelines, members may engage in behavior that is harmful, discriminatory, or counterproductive, leading to a breakdown in collaboration and trust. | ||
|
||
## Context |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Does this new content fit better the Context section?
Different individuals and teams within the organization collaborate in a healthy and inclusive community without conflicts. | ||
This welcoming, respectful and inclusive environment fosters more collaboration and creates trusted relationships across the organization where all community members feel safe and valued. | ||
|
||
## Forces |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
A listed different actions to clarify better the Forces section. Does it fit better?
## Solution | ||
|
||
Develop a Code of Conduct that outlines expected behavior, including guidelines for communication, collaboration, and conflict resolution. | ||
The Code of Conduct will articulate the shared values and principles of the InnerSource community, fostering a sense of belonging and common purpose, such as: |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I added some references about the integration with the organization rules and employee handbooks. It is the normal way to define these values and principles along the InnerSource project.
Hope that helps to clarify the solution.
3. Publish the finalized documents in a prominent location accessible to all community members, such as the InnerSource platform or collaboration tools. | ||
4. Regularly review and update the Code of Conduct as needed to reflect evolving community norms and values. | ||
|
||
A good practice for the third point is to share the Code of Conduct in each InnerSource community repository as a file named `CODE_OF_CONDUCT.md`. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I usually see two approaches:
- A shared template repository with the original content to use when a new project starts
- A shared resource linked from each CoC file
To make it easy, just explained the second option. What do you think?
@@ -0,0 +1,77 @@ | |||
## Title |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Answering the Is there a general description of the goals of a CoC that we can link to?
question, this reference is a good one from the Open Source space, but I don't see how to link here. Maybe adding this reference in the Related patterns...
Regarding to broken the CoC, the implementation section is extended including the reporting process and the consequences when the CoC is not followed. It is a general description, just because, each CoC can differ in the final implementation of these processes, however, all of them must be part of the CoC.
As part of the discussions about adding a new Code of Conduct template in the Standard Base Documentation (#555 and #556) and some research, this PR includes the proposal of a new Pattern in the collection: Code of Conduct.
This pattern wants to cover the space of an InnerSource community/product for healthy and inclusive discussions across different individuals and teams inside of the organization.
It is open for discussion, extending the previous ones and open for more people.