Update the README (#124)

- Give a more detailed and up-to-date vision for SourceCred
- Update the discuss link to point to Spectrum rather than Slack
- Wrap text
This commit is contained in:
Dandelion Mané 2018-04-09 08:49:54 +03:00 committed by GitHub
parent 9d1200275e
commit 8992f2a9f5
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -2,8 +2,78 @@
[![Build Status](https://travis-ci.org/sourcecred/sourcecred.svg?branch=master)](https://travis-ci.org/sourcecred/sourcecred) [![Build Status](https://travis-ci.org/sourcecred/sourcecred.svg?branch=master)](https://travis-ci.org/sourcecred/sourcecred)
The open-source community provides an enormous amount of value to the world. However, open-source contributors go largely unrewarded and unrecognized. SourceCred aims to help that situation, by building tools that enable quantitatively measuring the value that open-source contributors provide to individual projects, and to the community as a whole. ## Vision
SourceCred will create a "Cred Graph", which is a graph that shows how the contributions that compose open-source projects are related to and derive value from each other. From this, we'll be able to assign "cred" to users based on how valuable their contributions are. Cred will be assigned based on a mixture of objective data (e.g. references between GitHub pull requests) and subjective feedback (e.g. projects' own judgments on how important different contributions were). Open source software is amazing, and so are the creators and contributors who
share it. How amazing? It's difficult to tell, since we don't have good tools
for recognizing those people. Many amazing open-source contributors labor in
the shadows, going unappreciated for the work they do.
If you'd like to contribute, please follow along with [our issues](https://github.com/sourcecred/sourcecred/issues), as we are using issues to coordinate development and design decisions. We also have [a slack](https://join.slack.com/t/sourcecred/shared_invite/enQtMzA4NzI5ODIwODMyLWFiNDlhNWNiODc4MTk4MjNmZTAzMDNjNDAwYzEyZTBiNjAxZTFhMjU1MDg2YzNlN2FlNzgwYmU0NGM1NGEzM2M). As the open economy develops, we need to go beyond [commit streaks] and
follower counts. We need transparent, accurate, and fair tools for recognizing
and rewarding open collaboration. SourceCred aims to do that.
[commit streaks]: https://www.mxsasha.eu/blog/2016/04/01/how-github-contribution-graph-is-harmful/
SourceCred will enable projects to create and track "cred", which is a
quantitative measure of how much value different contributors added to a
project. We'll do this by providing a basic data structure—a [cred graph]—into
which projects can add all kinds of information about the contributions that
compose it. For example, a software project might include information about
GitHub pull requests, function declarations and implementations, design
documents, community support, documentation, and so forth. We'll also provide
an algorithm ([PageRank]) which will ingest all of this information and produce
a "cred attribution", which assigns a cred value to each contribution, and thus
to the people who authored the contributions.
[cred graph]: https://en.wikipedia.org/wiki/Directed_graph
[PageRank]: https://en.wikipedia.org/wiki/PageRank
## Principles
SourceCred aims to be:
1. **Transparent**
If it's to be a legitimate and accepted way of tracking credit in projects,
cred attribution can't be a black-box. SourceCred will provide tools that
make it easy to dive into the cred attribution, and see exactly why
contributions were valued the way they were.
2. **Community-controlled**
At the end of the day, the community of collaborators in a project will know
best which contributions were important and deserve the most cred. No
algorithm will do that perfectly on its own. To that end, we'll empower the
community to modify the cred attribution, by adding human knowledge into the
cred graph.
3. **Forkable**
Disputes about cred attribution are inevitable. Maybe a project you care
about has a selfish maintainer who wants all the cred for themself :(. Not
to worry—all of the cred data will be stored with the project, so you are
empowered to solve cred disputes by forking the project.
## Roadmap
SourceCred is currently in a very early stage. We are working full-time to
develop a MVP, which will have the following basic features:
- **Create**: The *GitHub Plugin* populates a project's GitHub data into a
Contribution Graph. SourceCred uses this seed data to produce an initial,
approximate cred attribution.
- **Read**: The *SourceCred Explorer* enables users to examine the cred
attribution, and all of the contributions in the graph. This reveals why the
algorithm behaved the way that it did.
- **Update**: The *Artifact Plugin* allows users to put their own knowledge into
the system by adding new "Artifact Nodes" to the graph. An artifact node
allows users to draw attention to contributions (or groups of contributions)
that are particularly valuable. They can then merge this new information
into the project repository, making it canonical.
## Community
Please consider joining [our community].
[our community]: https://spectrum.chat/sourcecred