How do we make decisions?

As was mentioned in the Discourse Director thread, sometimes we need to make decisions. Currently TBD not only has the final decision making authority on things, but also the first. This doesn’t scale.

Cred weighted voting was explored, but we don’t want to have to bother the entire SourceCred community for every decision all the time. Without voting, however, a discussion is required ever time a decision needs to be made. This will skew engagement towards people who want to talk about the decisions vs people who want to do the work. Having participated in communities that have tried both of these approaches this I can resolutely say both do not work. Community stakeholders need to have a say in the high level decision making process, but then day to day operations need to be left to a team or DRI. Otherwise you get community/voter fatigue as people spend more time arguing about what the goal is vs actually working towards a goal together.

A few examples of things that require decision making:

  • updating the weighting or parameters of the SourceCred protocol
  • updating the UI/UX of Discourse
  • determining who has read, write, and admin access to things

These are just a few examples, but there will be many more. In the future, esp if SourceCred raises capital, these things are going to become more and more important. Would be great to get ahead of this. We need to find a balance between allowing anyone to participate, but also being able to get things done.

So the question is: how do we move beyond TBD driven decision making?


Governance is hard… Appreciate your thoughts on this @burrrata, here and in your latest response on the Discourse Director topic. It’s good to be able to learn from your hard-won experience in these other governance experiments. After digesting, dreaming about this last night (my life these days), and thinking about this some more, have come up with a possible path.

First, in my mind there’s now a distinction between the SourceCred Foundation (or whatever legal entity we set up), and the SourceCred community. While I think it’s good we’re grappling with all these governance issues now, I worry about scope. We’re already building a new reputation protocol (a massive undertaking in its own right). Are we also going to solve large unsolved issues in decentralized governance at the same time? While I think SourceCred presents a unique opportunity to address some of these issues (main reason I’m here), and other projects will look to us for best practices from our dogfooding, as you point out, we need to efficiently make decisions and direct resources. Also, SourceCred the protocol/application will get used in lots of ways we can’t imagine, and plug into many different types of governance experiments. Then again, as inspirational as GitLab and DRIs are, I don’t want to work at GitLab…i.e. a corporate hierarchy with innovative collaboration mechanisms. I just got off the phone with a friend who went to work for GitLab, who I called to ask about their structure. She was thinking about quitting. They just doubled in size from 500 to 1,000 people in a year, are firing people left and right as they continually reorganize and push everyone hard towards an exit (they’re shooting for next year). Lots of great things to learn from there, and DRIs make sense as a concept. But I think we have the room to do better. Perhaps that takes the form of a somewhat more “traditional” (only traditional by bleeding edge OSS/crypto standards) centralized entity like a foundation with typical corporate/non-profit governance (board of directors/trustees, employees with titles, etc.) that drives development of the core product, and a wider community the foundation supports with its resources. Perhaps this will also help attract talent and investors that aren’t comfortable with investing in technology experiments that are also governance experiments. I think however that the crypto space has done a lot of work exploring new models, some of which are working and applicable. Below is a thought experiment that outlines a path to decentralization that I think is compatible with all of the possibilities discussed so far. tldr; we can have hierarchies if they’re permissionless and “leaky”, with investments routed through the graph.

Possible Path

We get away from the problem of @decentralion being TBD by making the creation of initiatives and boosting of those initiatives permissionless. You can assign yourself “champion” of an initiative you create yourself. You can also create an initiative and assign someone else to it. This person is the DRI. At our current stage, the TBD still currently controls cred flow to initiatives, via manual mode. “Unfunded” initiatives and their champions are free to work on what they want. Even if it’s just a fun, frivolous endeavor, or long-shot experiment that “SC core” doesn’t care to fund, preferring to direct resources to more important initiatives. Work around these “unfunded” initiatives should show up as normal activity, similar to any other work in an OSS project, flowing a nominal amount of cred/Grain to contributors. If work from unfunded initiatives becomes valuable later on, cred and grain will flow retrospectively, as it should. And having initiatives created along the way will help organize that cred flow (retrospective curation). At this stage, it doesn’t make much sense for people to create initiatives they know won’t get funded. However, once boosting is implemented (the main mechanism that generates utility for the Grain token), further decentralization is enabled. Other contributors within the project now have the ability to vote with their Grain (skin-in-the-game) in a non-binary, engaging way. Kind of like having mini Patreon feeds that also function as prediction markets/investments. This should actually be fun and engaging, not dreary form filling (I love using patreon/brave). This breaks the monopoly on funding the TBD currently has, harnessing the collective intelligence of the community. Directors and other “old guard” at this point have also built up large positions in cred/grain through their work funded by the TBD. This allows them more freedom to independently of the TBD direct funds through boosting, further diversifying funding of initiatives and flowing power to the edges. This also opens the possibility for outside parties (e.g. investors) to buy Grain and invest in initiatives they find valuable, decentralizing power outside the project. In addition, as individual community members interact with different initiatives and contributions, building other people’s visions, they build a “position” in the graph. This begins to create a robust, coercion-resistant flow of cred->Grain->$, should they need it to pay bills. In this way, there is a clear hierarchy based on the usual mechanisms (direction of funds/resources by those at the top). But this hierarchy is “leaky”, flowing cred around to all contributors over time, spreading investment and decision-making power to the edges. Once individual contributors’ income becomes “antifragile”, they can afford to speak truth to power, creating more equality and better communication between labor and capital.

Potential for binary (hired/fired) coercion still exists in hierarchical permissions (e.g. GitHub and Discourse). This is unavoidable for now. SourceCred core can’t allow anyone merge access. Likewise, if it grows it will eventually need to ban toxic/abusive actors if other methods fail (this is a truth even “free speech maximalist” crypto projects have learned the hard way). This can be mitigated in ways we’re exploring in Discourse Admin trust model. Namely by making the project more easily fork-able with shared permissions, backups, and other methods to decentralize control over infrastructure. Discourse actually has a really interesting solution in its trust levels, which could be useful.

Forking under this scheme can also possibly solve the issue of forking an asset that has acrused financial value. By building up a cred “position” in a community, a contributor also has the ability to liquidate into Grain->$ should they want to exit (e.g. if a corporation they are morally against buys into the project). They just sell all their cred for grain, or keep their cred position and just cash “grain dividends” while they work on a new project (perhaps a fork of SourceCred created with other dissident contributors). In this way, the original project pays indirect dividends to forked projects.

Curious to hear thoughts!

1 Like

Riffing off @s_ben, I like the idea of using boosting and general “market mechanisms” as a base approach for decision making. Voting has issues where:

  • most votes will have low turnout, which makes them seem illegitimate
  • the marginal voter doesn’t get much “skin in the game” in the particular outcome they vote on

In the near term, once we have boosting, a lot of “what to prioritize” type decisions can be made through the market-based mechanism of letting people boost nodes they want prioritized, rather than top-down decision making.

As an (early, hand-wavey) idea on how we could handle more traditional “A-or-B” type decisions that we might use voting for:

  • We have two cred nodes, one for decision A, one for decision B.
  • People boost A or B according to their belief about the right outcome
  • At the end, whichever decision was boosted more is canonical. Everyone who boosted the losing decision has their grain refunded, everyone who boosted the winning decision has their grain boosted (so they have skin in the game in the outcome)

Although I also think we’ll benefit a lot from having DRIs who do have decision making rights. Maybe something like:

  • Community decision making (cred voting? boosting?) sets policies, priorities, and goals
  • Community decision making (cred weighted elections? boosting again) appoints DRIs who will implement the policies
  • DRIs are then empowered to make implementation decisions towards those goals
1 Like

For right now: let’s say that Champions have the right to make decisions within their sphere of championship.

For example, @burrrata as champion of organizing the Discourse, has the right to make unilateral decisions about how it should be organized, producing and pinning onboarding materials, etc.

Whoever takes on the marketing / onboarding initiative that @burrrata soft-specced will be given login access to our social media handles and can set up accounts, make decisions in that domain, etc.

This will work well for our community size. Obviously power comes with responsibility, if it gets abused we’ll come up with refined policies, etc. If you’re the champion of something but are considering making a decision that is likely to be controversial or irreversible, please check in before committing.

For championships that require a lot of trust (e.g. needing Discourse admin) they’ll need to be vetted/approved by the TBD. For lower-trust championships, the champion can just get things done.

As they should be. The legal wrapper around the foundation protects the users, developers, and founders. It’s very important that this is a distinct and separate entity.

Yes. It’s important to be clear about what our focus is. Doing lots of things ok is not as good as doing one thing really really well.

Yes. This is why I would really like to see an MVP of SourceCred that “just works” out of the box. All the CredSperiment stuff is awesome, but most people aren’t going to want that level of complexity. They’re going to want something that just works. As someone who wants to explore integrating SourceCred into the Aragon Discourse, I can count myself as one of these people lol

Investors don’t invest in non-profit foundations. If SourceCred is a startup then it’s for-profit and needs a business model and growth plan (otherwise investors will find one for us). If SourceCred is a protocol with a foundation that stewards it, then there needs to be a viable token model (and legal framework) for investors. Assuming the later, then we would probably want defined roles and responsibilities, which brings us back to the SourceCred Directors conversation.

Note: having a foundation and a community can easily create conflicts of interest. It’s very important to design this before moving forward. Otherwise the complications snowball until it’s too late.

I thought this was how it already works, minus that the Initiatives Plugin is still a WIP?

This makes no sense - or I don’t understand what you’re saying (probably the later lol). DRI’s need to be responsible for something, with incentives and authority over that thing. You can’t just project that onto someone. Also, if one person has the ability to make a decision about something, that means that someone else does not. This is not permission-less unless you start a completely new thing. For resources/things that are already in play, how do we transfer authority from one contributor to the next as the project evolves?

Yeah this would be awesome.

Hate to be the party pooper here, but if there’s a foundation raising outside capital and Cred is redeemable for cash, the legal side of things get exponentially more complex. Not qualified to weigh in on this definitively, but this is going to require a whole bunch of research to A) protect the community, and B) make it attractive for investors.

  • note: there’s a high likelihood that if Cred was kept on the SourceCred side and not converted into Grain then we might be all good, but we should really look into it!

This isn’t “clicking” in my head. Can you please explain more?

So are you saying that we need Director level positions, or not so much?

Yeah we should explore this more, but as we expand to other channels this will not be enough. The more we use Web2 tools and the more we interact with the large game of the world outside of the small game of SourceCred, the more we need a meta-structure that helps us organize and collaborate.

Are you describing the “rage quit” mechanism that MolochDAO pioneered (you can exit an organization by redeeming your tokens for a proportional amount of the organizations underlying assets)?

Always down for market mechanisms!

Like Cred weighted roadmap prioritization

So boosting as a futarchy style prediction market, but also used for SourceCred Director elections?

Works for me, however I’d still like to see artifacts created for higher level initiatives (Discourse engagement, Twitter engagement, newsletter engagement, etc…) so that champions/directors/whatever of initiatives are incentivized to optimize the initiative itself vs just their participation within it - at least with things that can easily be measured.