1 of 18

SourceCred

a reputation protocol

for open collaboration

2 of 18

How to distribute tokens in a DAO?

  • You made a DAO, congrats
  • It has tokens
  • How can you distribute them in a way that
    • fairly rewards people for contributions
    • encourages new contributors to join
    • produces good long-term incentives

3 of 18

Attempt 1: Distribute them yourself

  • Works for startups, could probably work for you
  • One problem: It’s centralized.
  • Now you don’t have a DAO. You have a CAO.

4 of 18

Attempt 2: Distribute based on metrics

  • # lines of code committed?
  • # of commits merged?
  • # of bugs fixed?

These are all easily gamed:

  • reindent the codebase!
  • spam tiny commits!
  • sneak in easily fixed bugs!

5 of 18

Attempt 3: Bounties / Contracts

  • Define + spec the work in advance
  • Pay tokens out when the work is completed
  • Community review (when creating and when paying out)

Most promising approach discussed so far.

Colony, Decred, Gitcoin all using it.

Still plenty of issues, though.

6 of 18

Problems with Bounties

  • Lots of work can’t be neatly spec’d
  • Speccing is itself a lot of work (& hard to spec 😉)
  • Encourages competition instead of cooperation
  • Encourages short-term orientation
  • Fair upfront valuation is really hard
  • Lots of friction

7 of 18

Properties we need

  • Ability to recognize many different kinds of contributions
    • coding, design, mediation, outreach, ...
  • Retroactively value contributions
    • reassess as new info comes in
  • Start from objective data, but have room for subjectivity
  • Be low friction (automatic / background process)

8 of 18

Interlude: PageRank 101

  • Classic Google search algorithm
  • Assigns scores to nodes on a graph
  • Nodes get high score if they are linked to by nodes with high score

9 of 18

Contributions are nodes

Bug Report

Pull Request

Review

10 of 18

Contributors are nodes too

Bug Report

Pull Request

Review

@coder

@reviewer

@user

11 of 18

Can represent subjective judgement

Bug Report

Pull Request

Review

@coder

@reviewer

@user

@maintainer

👍

12 of 18

Can update in response to new info

Bug Report

Pull Request

Review

@coder

@reviewer

@user

@maintainer

👍

GitHub Release

13 of 18

14 of 18

15 of 18

16 of 18

17 of 18

Next Steps: Dogfooding

  • SourceCred produces “pretty good” scores for OS projects based on GitHub data
  • need to validate on a project with real incentives -- and real gaming
  • live experiment in cred-based pay starting end of this month

18 of 18

How to earn cred in SourceCred?

  • contribute useful code on GitHub
  • contribute interesting discussion on the Discourse

Learn more!

  • links & more at sourcecred.io
  • join our Discord at sourcecred.io/discord-invite
  • follow me: @decentralion