Scala Code of Conduct
We are committed to providing a friendly, safe and welcoming environment for
all, regardless of age, body size, disability, ethnicity, sex characteristics,
gender identity and expression, level of experience, education, socio-economic
status, nationality, personal appearance, race, religion, sexual identity
and orientation, or other such characteristics.
Whether you’re a regular contributor or a newcomer, we care about making this community a welcoming and safe place for you and we’ve got your back.
As a member of the community, you agree to the following:
- Be kind and courteous. We treat our fellow community members with the empathy, respect and dignity all humans deserve. Keep in mind that public communication is received by many people you don’t know, so before sending a message please ask yourself whether someone from a different context would misunderstand it.
- Respect differences of opinion and remember that every design or implementation choice carries a trade-off and numerous costs. There is seldom a single right answer; we will find the best solutions by engaging in constructive discussion, with everybody bringing their unique viewpoint and experience to the table.
- Remember that everyone was new to Scala at some point. We want to encourage newcomers to join our community and learn the Scala language and ecosystem. Always assume good intentions and a willingness to learn, just as you are willing to evolve your own opinion as you gain new insights.
- Keep unstructured critique to a minimum. We encourage sharing ideas and perspectives, so please ensure that your feedback is constructive and relevant. If you have solid ideas you want to experiment with, make a fork and see how it works.
- Avoid aggressive and micro-aggressive behavior, such as unconstructive criticism, providing corrections that do not improve the conversation, repeatedly interrupting or talking over someone else, feigning surprise at someone’s lack of knowledge or awareness about a topic, or subtle prejudice (for example, comments like “That’s so easy my grandmother could do it.”). For more examples of this kind of behavior, see the Recurse Center’s user manual.
- We will exclude you from interaction if you insult, demean or harass anyone. See examples of unacceptable behavior below. In particular, we don’t tolerate behavior that excludes people in socially marginalized groups.
- Private harassment is also unacceptable. No matter who you are, if you feel you have been or are being harassed or made uncomfortable by a community member’s behavior, please contact the moderation team immediately.
- Likewise any spamming, trolling, flaming, baiting or other attention-stealing behavior is not welcome.
These are the policies for upholding our community’s standards of conduct. If
you feel that a thread needs moderation, please
contact the moderation team.
- Remarks that violate the above code of conduct, including hateful, hurtful, oppressive, or exclusionary remarks, are not allowed. (Cursing is allowed, but never targeting another user, and never in a hateful or aggressive manner.)
- Moderators will warn users who make remarks inconsistent with the above code of conduct.
- If the warning is unheeded, the user will be “kicked,” i.e., kicked out of the communication channel to cool off.
- If the user comes back and continues to make trouble, they will be banned, i.e., indefinitely excluded.
- Moderators may choose at their discretion to un-ban the user if it was a first offense and they if they make suitable amends with the offended party.
- If you think a moderator action is unjustified, please take it up with that moderator, or with a different moderator, in private. Complaints about moderation in-channel are not allowed.
- Moderators are held to a higher standard than other community members. If a moderator acts inappropriately, they should expect less leeway than others.
In the Scala community we strive to go the extra step to look out for each
other. Don’t just aim to be technically unimpeachable; try to be your best self.
In particular, avoid exacerbating offensive or sensitive issues, particularly if
they’re off-topic; this all too often leads to unnecessary fights, hurt
feelings, and damaged trust; worse, it can drive people away from the community
If someone takes issue with something you said or did, resist the urge to be
defensive. Rather, stop the offending behavior, apologize, and be sensitive
thereafter. Even if you feel you were misinterpreted or unfairly accused,
chances are good there was something you could’ve communicated better — remember
that it’s your responsibility to make your fellow Scala developers comfortable.
We are all here first and foremost because we want to talk about cool
technology, and everyone wants to get along in doing so. People are generally
eager to assume good intent and forgive.
The enforcement policies listed above apply to all official Typelevel channels:
mailing lists, GitHub repositories and Gitter channels under the
organization, Discourse, and Typelevel venues and hackathons. For other
projects adopting the Scala Code of Conduct, please contact the maintainers of
those projects for enforcement. If you wish to use this code of conduct for your
own project, consider explicitly mentioning your moderation policy or making a
copy with your own moderation policy so as to avoid confusion.
For CoC-related questions or to report possible violations on the channels
- contact one of the moderators active on that channel if you can identify
- send an e-mail to one of the following general moderators if you want to
choose who you are talking to:
Examples of unacceptable behavior
Behavior that will lead to exclusion includes the following points, inspired by the definition of
“Unacceptable Behavior” in the Citizen Code of Conduct:
- Violence, threats of violence or violent language directed against another person.
- Sexist, racist, homophobic, transphobic, ableist or otherwise discriminatory jokes and language.
- Posting or displaying sexually explicit or violent material.
- Posting or threatening to post other people’s personally identifying information (“doxing”).
- Personal insults, particularly those related to gender, sexual orientation, race, religion, or disability.
- Inappropriate photography or recording.
- Inappropriate physical contact. You should have someone’s consent before touching them.
- Unwelcome sexual attention. This includes, sexualized comments or jokes; inappropriate touching, groping, and unwelcomed sexual advances.
- Deliberate intimidation, stalking or following (online or in person).
- Advocating for, or encouraging, any of the above behavior.
- Sustained disruption of community events, including talks and presentations.
Identical to the Scala Code of Conduct as published on
scala-lang.org, with Domain and
Contact sections replaced by Typelevel channels and admins.
Adapted from and/or inspired by multiple successful Codes of Conduct, including:
This Code of Conduct is distributed under a Creative Commons Attribution-ShareAlike license.