# 🤝 Code of Conduct

This code of conduct details the expected conduct of users using Programming.Dev ("programming.dev", "we", "us", "our") sites whether in communities local to our sites or on communities federated with us that is visible from our sites. It also applies to other spaces we exist such as our discord server and matrix server. Users visible on our sites regardless of whether they are local or federated may be actioned upon if they do not follow this code of conduct.

## 1. Expected Behaviour

The following are expected behaviour for people interacting on our sites.

- 1.1. **Remember the human:** When interacting with other people on the site they should be interacted with as if they are a human, that is with respect and in a way that you would want to be treated.
- 1.2. **Keep in mind software differences:** As this is the fediverse, not everyone is interacting from the same software or the same type of software (people in microblogs may join in to the threaded posts, etc.). Due to this not everyone has access to the same features we do so features should not be assumed to be standard (e.g. visible pronouns, markdown, votes).
- 1.3. **Vote for quality:** When downvoting content in communities the downvotes should reflect the quality of the content rather than whether you personally agree with it.

## 2. Encouraged Behaviour

The following are encouraged behaviours for people interacting on our sites (that is not following it won't get you actioned upon but it is strongly recommended to follow).

- 2.1. **Add Alt Text:** When posting an image add alt text to it in some form (if the software has it built in you can use that feature and if not you can provide it beside the image)

## 3. Unacceptable Behaviour

The following are not allowed in any of our sites and may result in you being actioned upon by moderators or admins.

- 3.1. **Doxing:** Do not reveal private information about other people without their explicit permission.
- 3.2. **Ad Hominem:** When arguing with someone do not attack the person themselves, instead target the argument they are making.
- 3.3. **Impersonation:** Do not impersonate other people regardless of whether they are in the community or not.
- 3.4. **Unmarked Sensitive Content:** Do not post sensitive content (such as NSFW) without labelling it as such. If the software does not allow you to label it for people who don't want that content to be able to not see it, do not post the content.
- 3.5. **Hate Speech:** Do not make remarks directed at sex, gender, ethnicity, orientation, disabilities, etc.
- 3.6. **Vote Manipulation:** Attempts to manipulate the voting system is not tolerated including the usage of sock puppet accounts, target voting someone for who they are rather than their content, and mass downvoting posts.
- 3.7. **Encouraging Harm:** Do not tell others to do things such as harm themselves or die.
- 3.8. **Unwelcome Sexual Advances:** Do not sexually harass other people, regardless of whether they are in the community or the post is about them.
- 3.9. **Illegal Content:** Do not post things that are illegal in the United States including: CSAM, Copyright Infringement, Lolicon.
- 3.10. **Unrelated Content:** Do not post content that does not relate to a community in the community. For example if there is a community about posting cute pictures of puppies, do not post NSFW content.
- 3.11. **Ban Evasion:** If you were banned from a community, do not attempt to evade said ban on another account.
- 3.12. **Harassment:** Harassment whether in public spaces in the communities or in private messages is not tolerated.

## Community Specific Guidelines

Some communities within one of our sites may have additional or more specific guidelines in the community description that are expected to be followed when interacting in that community. Failure to follow those guidelines may result in you being actioned upon by moderators.

## Automation Guidelines

If you use any form of automation on your accounts you must abide by our [Automation Guidelines](https://legal.programming.dev/docs/automation-guidelines).

## Community Guidelines

If you manage a community on our sites you must abide by our [Community Guidelines](https://legal.programming.dev/docs/community-guidelines).

## Moderator Guidelines

If you are a moderator for our sites or for a community on our sites you must abide by our [Moderator Guidelines](https://legal.programming.dev/docs/moderator-guidelines).

## Reporting

When you see someone not behaving according to our code of conduct, if theres a report button built into the software (which should be most software we host) you can report them for the community team in charge of that software to be able to deal with it. If theres no report button email info@programming.dev with the report information.

## Do we Make Updates to this Code of Conduct?

We may update the Code of Conduct from time to time. When we do the date at the bottom of the page will change to indicate the date of the most recent changes. In addition, clicking on that date will bring you to the commit in the code repository that shows who edited it, and what was changed. If we make changes we may notify you by posting a notice of such changes in our meta community on the programming.dev site, in the updates account on the bytes.programming.dev site, in the news community in our discord server, and in the news community in our matrix server. We encourage you to review the Code of Conduct periodically for any modifications.

## Contact Us

If you have questions or concerns about this Code of Conduct you should contact us at info@programming.dev.
