Skip to content

Commit

Permalink
Browse files Browse the repository at this point in the history
  • Loading branch information
twitterbirdwatch committed Jul 28, 2023
2 parents 183c2fb + 17de062 commit 5fcd5ba
Show file tree
Hide file tree
Showing 40 changed files with 892 additions and 348 deletions.
2 changes: 1 addition & 1 deletion CODE_OF_CONDUCT.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,3 @@
We feel that a welcoming community is important and we ask that you follow Twitter's
We feel that a welcoming community is important and we ask that you follow our
[Open Source Code of Conduct](https://github.com/twitter/.github/blob/main/code-of-conduct.md)
in all interactions with the community.
16 changes: 8 additions & 8 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
# Twitter Community Notes
# Community Notes

![](/documentation/images/help-rate-this-note-expanded.png)

Expand All @@ -8,13 +8,13 @@ This repository is a place for us to transparently host our content, algorithms,

The folder `/sourcecode` holds the [open-source code](https://github.com/twitter/communitynotes/tree/main/sourcecode) powering Community Notes under the hood.

The folder `/documentation` holds the [Markdown content](https://github.com/twitter/communitynotes/tree/main/documentation) that is used to generate our [documentation website](https://communitynotes.twitter.com/guide).
The folder `/documentation` holds the [Markdown content](https://github.com/twitter/communitynotes/tree/main/documentation) that is used to generate our [documentation website](https://communitynotes.x.com/guide).

Here you can also find our [research paper](https://github.com/twitter/communitynotes/blob/main/birdwatch_paper_2022_10_27.pdf).

## About Community Notes

Community Notes aims to create a better informed world, by empowering people on Twitter to add helpful notes to Tweets that might be misleading.
Community Notes aims to create a better informed world, by empowering people on X to add helpful notes to posts that might be misleading.

We're building it in the open, with the public’s input, and we’re taking significant steps to make Community Notes transparent.

Expand All @@ -24,7 +24,7 @@ Our goal is to expand Community Notes globally. We want anyone to be able to par

As there are important nuances in each market, we’ll expand the contributor base country-by-country. We’ll add contributors from a first new country soon.

[Sign up here](https://twitter.com/i/flow/join-birdwatch)
[Sign up here](https://x.com/i/flow/join-birdwatch)

## How to contribute to this repo

Expand All @@ -34,23 +34,23 @@ Thank you for your interest in contributing to Community Notes! Currently, we wi
* Documentation
* Open issues

Note that we aren’t currently accepting changes that alter existing APIs, as there is other utility and production infrastructure code at Twitter that depends on these APIs remaining stable.
Note that we aren’t currently accepting changes that alter existing APIs, as there is other utility and production infrastructure code at X that depends on these APIs remaining stable.

We are also exploring ways to make it easier for people to contribute directly to the core algorithm. For example, by making available testing and evaluation frameworks that would allow open source contributors to evaluate the impact of their PRs on note quality.
We are also exploring ways to make it easier for people to contribute directly to the core algorithm. For example, by making available testing and evaluation frameworks that would allow open source contributors to evaluate the impact of their PRs on note quality.

---

### Documentation website

The markdown files in this repo are the source of truth for the content in our documentation website (aka "Community Notes Guide"). They are always updated here first, then ingested by Twitter's internal tools, translated, and published in [communitynotes.twitter.com/guide](https://communitynotes.twitter.com/guide).
The markdown files in this repo are the source of truth for the content in our documentation website (aka "Community Notes Guide"). They are always updated here first, then ingested by X's internal tools, translated, and published in [communitynotes.x.com/guide](https://communitynotes.x.com/guide).

### Community Notes open-source code

The algorithm that powers Community Notes can be found on the [sourcecode folder](https://github.com/twitter/communitynotes/tree/main/sourcecode), and instructions on how to use it can be found in the [Guide](https://twitter.github.io/communitynotes/note-ranking-code/).

### Community Notes data

All notes, ratings, and contributor data are [publicly available and published daily here](https://twitter.com/i/communitynotes/download-data). Instructions on how to use them can be found in the [Community Notes Guide](https://communitynotes.twitter.com/guide/under-the-hood/download-data/).
All notes, ratings, and contributor data are [publicly available and published daily here](https://x.com/i/communitynotes/download-data). Instructions on how to use them can be found in the [Community Notes Guide](https://communitynotes.x.com/guide/under-the-hood/download-data/).

### Community Notes paper

Expand Down
8 changes: 4 additions & 4 deletions documentation/_redirects/404.html
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=UTF-8" />
<title>Redirecting to communitynotes.twitter.com/guide</title>
<title>Redirecting to communitynotes.x.com/guide</title>
<script>
// Extract the requested path from the URL and remove the "/communitynotes/" subdirectory
var requestedPath = window.location.pathname.replace(
Expand Down Expand Up @@ -82,16 +82,16 @@
// Find alias in object, or alias minus a trailing slash
if (aliases[requestedPath]) {
window.location.replace(
"https://communitynotes.twitter.com/guide" + aliases[requestedPath]
"https://communitynotes.x.com/guide" + aliases[requestedPath]
);
} else if (aliases[requestedPath.slice(0, -1)]) {
window.location.replace(
"https://communitynotes.twitter.com/guide" +
"https://communitynotes.x.com/guide" +
aliases[requestedPath.slice(0, -1)]
);
} else {
window.location.replace(
"https://communitynotes.twitter.com/guide" + requestedPath
"https://communitynotes.x.com/guide" + requestedPath
);
}
</script>
Expand Down
20 changes: 10 additions & 10 deletions documentation/about/challenges.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ navWeight: 2

We know there are many challenges involved in building an open, participatory system like Community Notes — from making it resistant to manipulation attempts, to ensuring it isn’t dominated by a simple majority or biased because of the distribution of contributors.

We've been building Community Notes (formerly called Birdwatch) in [public since January 2021](https://blog.twitter.com/en_us/topics/product/2021/introducing-birdwatch-a-community-based-approach-to-misinformation), and have intentionally designed it to mitigate potential risks. We've seen [encouraging results](https://blog.twitter.com/en_us/topics/product/2022/birdwatch-getting-new-onboarding-process-more-visible-notes), but we're constantly designing for challenges that could arise.
We've been building Community Notes (formerly called Birdwatch) in [public since January 2021](https://blog.x.com/en_us/topics/product/2021/introducing-birdwatch-a-community-based-approach-to-misinformation), and have intentionally designed it to mitigate potential risks. We've seen [encouraging results](https://blog.x.com/en_us/topics/product/2022/birdwatch-getting-new-onboarding-process-more-visible-notes), but we're constantly designing for challenges that could arise.

Here are a handful of particular challenges we are aware of as well as steps we are taking to address them:

Expand All @@ -17,8 +17,8 @@ Attempts at coordinated manipulation represent a crucial risk for open rating sy

The program currently takes multiple steps to reduce the potential for this type of manipulation:

- First, all Twitter accounts must meet the [eligibility criteria](../contributing/signing-up.md) to become a Community Notes contributor. For example, having a unique, verified phone number. These criteria are designed to help prevent the creation of large numbers of fake or sock puppet contributor accounts that could be used for inauthentic rating.
- Second, Community Notes doesn't work like many engagement-based ranking systems, where popular content gains the most visibility and people can coordinate to mass upvote or downvote content they don't like or agree with. Instead, Community Notes uses a bridging algorithm — for a note to be shown on a Tweet, it needs to be found helpful by people who have tended to [disagree in their past ratings](../contributing/diversity-of-perspectives.md).
- First, all X accounts must meet the [eligibility criteria](../contributing/signing-up.md) to become a Community Notes contributor. For example, having a unique, verified phone number. These criteria are designed to help prevent the creation of large numbers of fake or sock puppet contributor accounts that could be used for inauthentic rating.
- Second, Community Notes doesn't work like many engagement-based ranking systems, where popular content gains the most visibility and people can coordinate to mass upvote or downvote content they don't like or agree with. Instead, Community Notes uses a bridging algorithm — for a note to be shown on a post, it needs to be found helpful by people who have tended to [disagree in their past ratings](../contributing/diversity-of-perspectives.md).

[Academic](https://www.belfercenter.org/publication/bridging-based-ranking) [research](https://www.google.com/books/edition/Breaking_the_Social_Media_Prism/ORMCEAAAQBAJ?hl=en&gbpv=0) indicates that bridging-based ranking can help to identify content that is healthier and higher quality, and reduce the risk of elevating polarizing content.

Expand All @@ -36,21 +36,21 @@ Community Notes will be most effective if the context it produces can be found t

- Second, Community Notes can proactively seek ratings from contributors who are likely to provide a different perspective based on their rating history. This is currently done in the [Needs Your Help tab](../contributing/rating-notes.md), and we are exploring new ways to quickly collect ratings on notes from a wide range of contributors.

- Third, to help ensure that people of diverse backgrounds and viewpoints feel safe and empowered to participate, Community Notes has implemented program [aliases](../contributing/aliases.md) that aren’t publicly associated with contributors’ Twitter accounts. This can help prevent one-sided-ness by providing more diverse contributors with a voice in the system.
- Third, to help ensure that people of diverse backgrounds and viewpoints feel safe and empowered to participate, Community Notes has implemented program [aliases](../contributing/aliases.md) that aren’t publicly associated with contributors’ X accounts. This can help prevent one-sided-ness by providing more diverse contributors with a voice in the system.

- Finally, we regularly survey representative samples of Twitter customers who are not Community Notes contributors to assess whether a broad range of people on Twitter are likely to find the context in Community Notes to be helpful, and whether the notes can be informative to people of different points of view.
- Finally, we regularly survey representative samples of customers who are not Community Notes contributors to assess whether a broad range of people on X are likely to find the context in Community Notes to be helpful, and whether the notes can be informative to people of different points of view.

This is one indicator of Community Notes' ability to be of value to people from a [wide range of perspectives](../contributing/diversity-of-perspectives.md) vs. to be biased towards one group or viewpoint. Twitter customers who aren’t enrolled Community Notes contributors can also provide rating feedback on notes they see on Twitter. This provides an additional indicator of note helpfulness observed over time.
This is one indicator of Community Notes' ability to be of value to people from a [wide range of perspectives](../contributing/diversity-of-perspectives.md) vs. to be biased towards one group or viewpoint. Customers who aren’t enrolled Community Notes contributors can also provide rating feedback on notes they see on X. This provides an additional indicator of note helpfulness observed over time.

### Avoiding Harassment

It’s crucial that people feel safe contributing to Community Notes and aren’t harassed for their contributions. It’s also important that Community Notes itself does not become a vector for harassment. Here are measures Community Notes takes to keep everyone safe:

- First, as described above, all contributors get a new, auto-generated [display name (or alias)](../contributing/aliases.md) when they join Community Notes. These aliases are not publicly associated with contributors’ Twitter accounts, so everyone can write and rate notes privately. This inhibits public identification and harassment of contributors.
- First, as described above, all contributors get a new, auto-generated [display name (or alias)](../contributing/aliases.md) when they join Community Notes. These aliases are not publicly associated with contributors’ X accounts, so everyone can write and rate notes privately. This inhibits public identification and harassment of contributors.

- Second, contributors have an open communication line with the Community Notes team to report any issues they experience (they can reach us by DM [@CommunityNotes](https://twitter.com/communitynotes)). Community Notes has a dedicated community manager who gathers and responds to contributors’ feedback or concerns via this handle. This provides a way for contributors to flag potential issues to the Community Notes team.
- Second, contributors have an open communication line with the Community Notes team to report any issues they experience (they can reach us by DM [@CommunityNotes](https://x.com/communitynotes)). Community Notes has a dedicated community manager who gathers and responds to contributors’ feedback or concerns via this handle. This provides a way for contributors to flag potential issues to the Community Notes team.

- Finally, all Community Notes contributions are subject to Twitter [Rules](https://help.twitter.com/rules-and-policies/twitter-rules), [Terms of Service](https://twitter.com/tos) and [Privacy Policy](https://twitter.com/privacy). If you think note might not abide by the rules, you can report it by clicking or tapping the ••• menu on a note, and then selecting "Report”, or by using the [Report a Community Note](https://help.twitter.com/en/forms/community-note) form. This provides a mechanism to address violating content in notes.
- Finally, all Community Notes contributions are subject to X's [Rules](https://help.x.com/rules-and-policies/twitter-rules), [Terms of Service](https://x.com/tos) and [Privacy Policy](https://x.com/privacy). If you think note might not abide by the rules, you can report it by clicking or tapping the ••• menu on a note, and then selecting "Report”, or by using the [Report a Community Note](https://help.x.com/en/forms/community-note) form. This provides a mechanism to address violating content in notes.

### Reducing the impacts of low quality contributions on the system

Expand All @@ -69,4 +69,4 @@ As Community Notes grows and evolves, we will continue to iterate to ensure it r

## Feedback? Ideas?

We welcome feedback on these or additional risks and challenges, as well as ideas for addressing them. Please DM us at [@CommunityNotes](http://twitter.com/communitynotes).
We welcome feedback on these or additional risks and challenges, as well as ideas for addressing them. Please DM us at [@CommunityNotes](http://x.com/communitynotes).
Loading

0 comments on commit 5fcd5ba

Please sign in to comment.