Skip to content

Commit

Permalink
New Pattern: Code of Conduct (InnerSourceCommons#661)
Browse files Browse the repository at this point in the history
Add Code of Conduct Pattern (status: Initial)
  • Loading branch information
rmarting authored Jun 13, 2024
1 parent dd556f7 commit cefbaea
Show file tree
Hide file tree
Showing 4 changed files with 106 additions and 0 deletions.
1 change: 1 addition & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -84,6 +84,7 @@ Our mission
* [Incubator Pipeline](/patterns/1-initial/incubator-pipeline.md) - *A team maintaining a widely shared code library wants to accept contributions from other teams, without lowering the overall quality of their library. Therefore the shared library team uses an incubator pipeline to set a lower bar for contributions to enter and a higher bar to exit and become a top-level unit in the library.*
* [InnerSource Customer Interview Questions](/patterns/1-initial/innersource-customer-interview-questions.md) - *An organization has decided to create an InnerSource program but are unsure which issues they should address first. Using a customer interview will help evaluate pain points across the organization, to prioritize the areas where InnerSource will have the biggest positive impact.*
* [Creating an InnerSource Strategy](/patterns/1-initial/creating_an_innersource_strategy.md) - *Sometimes, it is difficult to convince people of the relevance of InnerSource for your organization and/or to get support from management. Creating an InnerSource strategy, that connects your InnerSource approach and activities to the goals and the overall strategy of your organization, can help in this regard.*
* [Code of Conduct](/patterns/1-initial/code-of-conduct.md) - *Communications and interactions between collaborators are rude, not inclusive or offensive, harming and increasing the discussions without any value added. A Code of Conduct provides guidelines for establishing rules and expectations regarding behavior and interactions within the community to build stronger levels of collaboration.*

<!--
NOTE: The 'Initial' Patterns below don't have a Patlet yet, which is essential for readers to quickly browse our patterns.
Expand Down
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
11 changes: 11 additions & 0 deletions assets/img/code-of-conduct/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
# Credits

If you want to edit this illustration, please request access to this [source document](https://docs.google.com/presentation/d/11JOByEO9QXlRLXX5BIv9rjUzPzCKErZzknD1OLcprQQ/edit?usp=sharing).

The humans in the illustration are [bro](https://storyset.com/illustration/coding/bro) and [pana](https://storyset.com/illustration/high-five/pana) from Storyset.

See:

- [Web illustrations by Storyset](https://storyset.com/web)
- [People illustrations by Storyset](https://storyset.com/people)
- [Community illustrations by Storyset](https://storyset.com/community)
94 changes: 94 additions & 0 deletions patterns/1-initial/code-of-conduct.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,94 @@
## Title

Code of Conduct

## Patlet

Communications and interactions between collaborators are rude, not inclusive or offensive, harming and increasing the discussions without any value added.
A Code of Conduct provides guidelines for establishing rules and expectations regarding behavior and interactions within the community to build stronger levels of collaboration.

## Problem

InnerSource initiatives often involve collaboration among individuals and teams from diverse backgrounds and perspectives.
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

This pattern emerges when the communications between different team members are very far away of the goals, focused on personal references, blaming other opinions or following non-inclusive behaviors.

Some examples of this context:

* The organization has gone through a rapid growth phase, where maintaining a strong collaborative culture has suffered.
* The organization has acquired multiple smaller organizations over a short period of time, and each of these organizations bring their own slightly different culture.
* The organization is highly distributed over multiple countries, nationalities, cultures, and timezones.
* Members of different teams at the organization have not established strong inter-personal relationships.
* Previous attempts to establish ground rules for collaboration have been treated as mere lip service, and have had little to no effect.

## Forces

* Define or establish rules of communication to avoid conflicts.
* Create a welcoming, respectful and inclusive environment to foster more collaboration.
* Create trusted relationships across different teams.
* Create the environment where all community members feel safe and valued.
* Connect to corporate's compliance, and business ethics.

## 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:

- **Diversity**: InnerSource communities may consist of individuals with varying cultural backgrounds, beliefs, and communication styles.
- **Trust**: Building trust among community members is essential for effective collaboration and knowledge sharing.
- **Inclusivity**: A Code of Conduct and Social Contract can promote inclusivity by setting expectations for respectful behavior and interactions.
- **Accountability**: Clear guidelines help hold community members accountable for their actions and contributions.

## Implementation

The adoption of well-known handbooks, such as the [Contributor Covenant](https://www.contributor-covenant.org/), or the adaptation of some internal employee handbooks for members of the organization are good starting points for implementation of this pattern.
However, adopt the following life cycle can improve the implementation and adoption of the Code of Conduct in an InnerSource community:

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 portal](https://patterns.innersourcecommons.org/p/innersource-portal) or communication channels.
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`.
In order to avoid content duplication of the Code of Conduct, another good practice is include a reference to a centralized resource within the organization where the content is published to all the InnerSource projects.
This file can be part of the [Standard Base Documentation](../2-structured/base-documentation.md) of any InnerSource project repository.

![CODE_OF_CONDUCT.md](../../assets/img/code-of-conduct/CODE_OF_CONDUCT-for-the-community.png)

It is important to understand that simply adopting a Code of Conduct will not prevent conflict or toxicity in the InnerSource project.
The [Core Team](https://patterns.innersourcecommons.org/p/core-team) and [Dedicated Community Leader](https://patterns.innersourcecommons.org/p/dedicated-community-leader) are responsible for the safe, fair, and transparent enforcement of the community's code of conduct.
That responsibility will imply provide a reporting process, a gathering information process and the consequences of any unacceptable behavior.
These references must be part of the Code of Conduct to encourage the behavior expected in the InnerSource project.

## Resulting Context

With a well-defined Code of Conduct in place, the InnerSource community can cultivate a culture of respect, trust, and collaboration.
Community members feel empowered to contribute openly and engage in meaningful dialogue, leading to enhanced innovation and problem-solving.

## Known Instances

- Red Hat - Many of the internal communities
- National Australia Bank

## Authors

- Roman Martin Gil

## Acknowledgments

- Matt Cobby - Adding the National Australia Bank reference

## References

- [InnerSource Commons Pattern - Standard Base Documentation](../2-structured/base-documentation.md)
- [Open Practice Library - Social Contract](https://openpracticelibrary.com/practice/social-contract/)
- [Contributor Covenant](https://www.contributor-covenant.org/)
- [GitHub Open Source Guide: Code of Conduct](https://opensource.guide/code-of-conduct/)

## Status

- Initial

0 comments on commit cefbaea

Please sign in to comment.