SourceCred

Utopia vs Dystopia

As mentioned in the latest Credsperiment Progress Report, governance is a hot topic on everyone’s mind :fire: The reason is that the SourceCred algorithm will determine who has power and who gets recognized in a community. If the process to tune and improve SourceCred is opaque or centralized there is a high probability of dystopian outcomes. If the participants of the SourceCred game can verify the data and improve the rules of the game then there is a high probability that outcomes will reflect the values of the community. I think I speak for everyone here when I say that we would prefer that SourceCred empowers people rather than repressing them. Ensuring that everyone can understand and verify the SourceCred algorithm is first an engineering problem, then a UX problem.

First we need to build the tools and protocols that make it easy for people to verify the SourceCred algorithm and the data that it’s run on. Unlike many blockchains that are “trustless,” SourceCred is designed around a “trust, but verify” model. This is because most blockchains, today, do not have the computational bandwidth to run the SourceCred algorithm. If anyone sees that Cred is being distributed in ways that are not in line with the agreed upon public parameters for the system they can reject the distribution, fork the algorithm, or potentially slash the stake of the person who submitted the incorrect data. This could be done by having some aspects of SourceCred algorithm public and immutable. This could be accomplished by creating a CreDAO that stores hashes (not the full data) of the cred history, weighting parameters, and the SourceCred algorithm. Then everyone can verify their instance of the algorithm against the hash and input the public parameters. Everyone should get the same results. If so the person who ran the alg submits it to the DAO and gets a prize. If all the verifiers don’t agree they could contest the results, potentially earning a reward for doing so if they can prove that someone cheated. An initial prototype of what this might look like was created on Aragon (code).

Once we determine a model that works, we need to make it easy to use. This means improving UI/UX around viewing Cred, verifying Cred, and participating in the process of submitting and contesting Cred to a trustless immutable database (DAO). 1Hive plans on building out an Aragon sidechain that could help improve UX considerably. Beyond that it would be great if there were more web portals like SourceCred prototype that allow people to check their Cred (like a blockchain explorer, but for SourceCred). Ultimately, the easier it is for participants in the system to have access to complete and truthful information, the easier it is for them to make informed decisions.

This brings up the next challenge, once people can understand, verify, and participate in the system how do they change it? How do users affect the weighting and distributions of Cred? How do users engage in governance of the system? This is an open design question. There are many ways you could design the SourceCred instance, and most likely 1 size will not fit all. It is important that each community is free to modify and adjust SourceCred to reflect their values and goals. This could potentially be done by simply voting in an Aragon DAO. There would be an app that holds certain values for an instance of SourceCred, and people could use their Cred to vote to change those parameters. Their voting would be weighted by the amount of Cred they have in that community.

If people who have Cred are going to change the parameters of the algorithm that gives them Cred, won’t they just choose parameters that give them more Cred than anyone else. Well… maybe. For a network to accrue value users need to want to engage with that network. More users/engagement, more value. It’s essential that any app, platform, or community is setup so that developers don’t “premine” Cred and give themselves a disproportionate share in governance that allows them to control the community indefinitely. It’s also important that everyone has enough skin in the game to align incentives for all parties involved. This is another open design question, and ultimately everyone will be free to initialize SourceCred however they want. The SourceCred community can, however, provide guidance, best practices, and research to help communities avoid snafus and choose parameters that will help them achieve their goals. Currently SourceCred does not have a “research” branch, but if it did… that would be awesome :wink:

Also, fun infographic showing what is happening with a social credit system that does not allow participants to verify or influence it in any way.

This. If we can do this and prevent gaming of the open rules, I have much hope:)

This is also critically important IMO. I hear a lot of issues in the blockchain space waved away with, “if they don’t like it they can fork it…” when someone doesn’t have a good answer to a legitimate concern. When often, the agrieved party does not have the technical skills or resources to create and maintain a fork. For now, the bar for running SC isn’t too high (and @Beanow is making progress on making it easier). But it’s something to keep in mind as we make design decisions. The main potential issue that comes to mind is needing to be an expert in the SC algorithm to tweak a customized instance. SC should work reasonably well “out of the box”, and not have too complicated an interface.

While I know the focus is more on experimenting and evolving the algorithm right now, the implementation of this in a trust-minimized context is what is driving much of my excitement. Itching to dive into CreDAO and check it out once I have some more time (working on it!).

I think that a real-time(ish) hosted instance of SC for the game (and other early beta testers) would be useful and engaging.

I think this is the general mechanism. Though obviously the devil is in the details, and there are many ways to do this. I imagine SC will plug into numerous types of governance systems.

The biggest challenge

2nd biggest challenge.

Key.

Still utopian :slight_smile:

1 Like