Should Discord be a "cred-free space"?

In our discussion of the Discord plugin initiative, @wchargin makes a case for having a “cred free zone” in the Discord plugin.

In the replies, I make a case for why having cred in Discord does make sense: both because it feels more fair:

That said, I agree that running SourceCred on Discord will change the vibe on our forum. But I think we have a responsibility as a community to lean into that complexity.

Since this affects the community, I would love to get feedback, thoughts, and feels from others. (And – thank you to @wchargin for clearly surfacing this valuable concern.)

2 Likes

Also, here’s my proposal for how Discord cred will work:

  • By default, messages are not tracked by SourceCred
  • Any message which receives a :sourcecred: reaction will be tracked:
    • Its author will receive cred from the message
    • Any references in the message will receive cred from the message
    • The message will receive cred from the :sourcecred: reaction
    • (at least initially) we will mint cred for these reactions
    • The reacting user will flow cred to the :sourcecred: reaction

My expectation is that people will use this to give some positive reinforcement and cred to anyone who posts a particularly valuable, helpful, or insightful message to the Discord, or to people who describe valuable contributions e.g. the #didathing channel.

The amount of cred flowing from the :sourcecred: reaction will be smaller than for a Discourse :heart:, which reflects that Discourse posts are more durable and often more valuable than Discord messages.

I think I can offer a little bit of a different perspective. I’ve felt most comfortable in spaces when I’m aware of not being evaluated. It’s definitely important to give credit where credit is due, but when I’m casually interacting and reacting with emojis or a comment that is in good spirit, it feels like a relief when I’m sure that my little contribution can just be appreciated without me / others having the tiniest thought that I made it for any other reason other than to be a friend. An inverse example might be akin to how I imagine being a person with a ton of money feels - he or she can’t really be sure if people hang around because of the moneys, or because they value the friendship. For sourcecred, in these creddy spaces, it’s of course not the case that people are only contributing for cred, but you know that it’s always looming there. If there is a “cred free space” you can be 100% sure people are doing things just to be people, and because they truly value to comment / give feedback / react with an emoji to something you said.

Perhaps there could be an intermediate, where if someone posts something special, there is an anonymous way to report it, and give the other person cred, but without it being so publicly known. This likely goes against the transparency goal of sourcecred, but there must be some way to do it… maybe another idea is if there is a channel like #didathing where others nominate? For example, you can only get cred in a discussion space not on your own activity (because I could post in #didathing many times a day), but based on how others evaluate it (someone else sees something I did and gives me a shout out).

2 Likes

I’m pretty excited about the Discord plugin. I get concerns around it changing the vibe, behavior. But Discord is such a rich source of information, and a lot of work does go on there. For some contributors, this may be the only place they get cred, as @decentralion mentions. And it will also be a valuable signal for governance mechanisms.

I think creating cred-free spaces is great. This thread outlines many ways you can do that even with a Discord plugin, and I’m sure many projects will utilize them. There are other ways to do it too, such as creating private rooms, or using other platforms (both of which will happen anyway). In fact, I can see many projects not using the Discord plugin at all, and sticking to GitHub and Discourse. But there will also be many projects that really want this. Especially if they’re looking at flowing rewards/money.

For instance, in the DAO I’ve worked in the last year and a half, I would absolutely want SourceCred running on chats. In part because when you have people working for money (crypto in this case), those conversations do already carry weight. I can work on OSS, and work on what I want (which is awesome), but there’s a catch. The DAO has to agree it’s worth paying for. That means governance. For big budgets, there’s a proposal system that works well. But for smaller tasks (most of the paid work), it’s all subjective. Much of the consensus building happens in chats, public and private. Those responses and :heart:s and :+1: actually do carry real economic value. You can feel it. I can already feel that weight when I :heart: in most contexts. And unfortunately, lacking formal systems, humans tend to fall into the Tyrant of the Structurelessness. Another expression of this is the article @decentralion posted about how subjective valuations lead to abusive cults. I don’t want to be over dramatic here. But when you take a bunch of ideologically-driven people, and start flowing real money and shifting power relations, it’s not a question of if you’re being judged, it’s how, and how transparently and accountably. Informal, subjective valuations in lieu of objective (or intersubjective in SourceCred’s case), lead to problems I think SourceCred is well-postitioned to address. Another side effect is that a lot of work simply never gets paid for. In my project, a lot of valuable work happens in chats, but I find myself not participating. Not because I don’t want to. But because I can only bill for approved work, and every minute in chats is a minute I can’t bill for. And I’m not crypto rich like some. Moderation of chats is another big unpaid type of contribution that happens mostly in chats.

For projects that want to keep it light, or carve out cred-free spaces, I think we should definitely support that. It seems the proposed design enables that. But if we’re looking to solve the OSS funding problem (what I’m most excited about), that is going to mean a shift in the contributor experience. Likes and :sourcecred:'s will become weightier. But that’s the necessary work required to reach consensus and build a graph that is rich enough to flow value across. If we punt on doing it in chats, it has to go somewhere (hidden power structures formed in private chats, expensive voting mechanisms, etc.).

I think restricting flows to the :sourcecred: emoji is a good way to “sandbox” this. I also think that minting less cred in chats makes sense. I don’t want each emoji response to be some super weighty decision either. But actually, now that I think about it, one issue I’ve been wanting to raise is the possibility that :heart:s on Discourse have become too weighty, too sparse. Many of my posts are getting 0 :heart:s now. That’s probably fine, but I think another less weighty, higher volume signal could even that out, and increase the nuance and expressiveness of the graph. Allow me not to trip so much when nobody (nobody!) likes my post.

I’m also open to changing my mind should this not work out. But I think we will get a lot of value from dogfooding this and figuring it out.

My 2 satoshis.

2 Likes

@decentralion: Thanks for creating this follow-up thread. I’ve posted my earlier draft reply to the original thread; due to context, it applies more cleanly there, but parties interested in this thread may want to read it: https://discourse.sourcecred.io/t/sourcecred-discord-plugin/283/15

Broadly, I think that I agree most closely with @vsoch’s comment in this thread (especially the first paragraph; anonymous or hidden-information elements of the cred graph is a hard problem that clouds my perspective on the second paragraph).

I would be interested to learn more about this.

It’s a saying in politics that all the real work gets done not over the aisle but over the dinner table. Such in-person conversations are inherently harder to feed into SourceCred than public electronic communications, as are private messages (huge privacy/security considerations) and Discord audio calls (just technically difficult). But they’re still valuable! Could the mechanisms that we use for them also apply to communication that happened to occur on Discord?

This suggestion is not meant to just punt the problem to another layer. Mechanisms that work for a conversation over dinner will necessarily be holistic, rather than turning each individual comment into (for lack of a better word) a microtransaction.

Interesting distinction. I think that you’re right that posting in chats is generally different from moderating chats, and correspondingly I would expect these to be treated differently. If chat moderation is important to the project, then it should have an associated initiative, championed by or otherwise linked to the moderators, and the moderators should receive cred for these contributions via the normal mechanisms.

The following is more a technical point than a philosophical one, but: in terms of richness of information, Discord is about the least structure that you can get. Individual Discord messages are not really addressable; archives are not meant to be read; the whole thing is login-walled; there are no threads, and there is no first-class quoting or reply mechanism as in Discourse; there is not even any delineation of “posts”. This is relevant because it affects how intrinsically valuable the Discord data is, which in turn influences how we should weigh the trade-offs.

I’m sorry that this is causing stress for you—that’s a totally reasonable response, and I get where you’re coming from. I hope that you don’t mind me saying: it’s exactly this kind of stress that I’m hoping that we can keep from propagating to Discord, too.

2 Likes

Disclaimer: There’s a lot here, I admit I’ve only skimmed through!

Perfect summary of why a healthy society must have privacy as a human right! It’s incredibly important. -insert Orwellian examples here-


My feeling is that as the developers of SourceCred we should be in dogfooding mode. If we’re worried using a Discord plugin will “gamify” the spaces we need for our sanity and well-being, I’d want to know! But more than that, I think would be symptomatic of a deeper problem with SourceCred we’d need to address.

In my mind SourceCred is meant to help complex social systems coordinate effectively and at scale. If it turned into feeling like it pushes metrics, like a daily :sourcecred: quota being more important than something like building trust with each other, we did something terribly wrong.

In fact I’d love to see SourceCred promote/incentivize/optimize for the things we need as social creatures, like emotional labor and safe spaces, to create some of the most wholesome places on the internet :smile:.


Based on dogfooding experience we might find that:

Is not selective enough and we’d want to set up “only #didathing” type filters on top?

Perhaps emoji based cred flow is just not the way to go and we should have a fixed amount of cred flowing to #didathing, simply to promote the activity of sharing, and not attempt to value the contribution being referred to?


TL;DR

I very much appreciate how much attention everyone is paying to the need for privacy, safe spaces and good vibes :heart:. And suggest not avoiding, but dogfooding proposals that may be at odds with that, so we can see the problems and fix them :smile:.

2 Likes

@Beanow I think we’re going to need to add “dogfooding” as one of the terms to the glossary! I’ve already forgotten what it means.

…goes off to search Google.

Ahh, yeah, that makes sense. But who really makes dog food? I’m going to (for fun) list a few terms that I think better get at this idea:

  • toasting: people tend to make their own toast, but it’s definitely also done professionally and sold. So “toasting” could mean eating your own toast. There is a nice double entendre because toasting also implies giving kudos to something, and a company is hopefully doing that for their product.
  • babyfooding: I’m pretty sure lots of parents roll their own baby food. This one is closer to dogfooding. But in opposition to it, likely homemade babyfood is a lot better than that jar stuff.
  • casseroling: yuck yuck yuck, this maybe is on par with the appealing (or lack of) aspect of dogfooding. I kind of like it because it ends in rolling!

Okay back to other things, thanks for the brief fun! :slight_smile:

Appreciating all the pushback and discussion. Below I try and address some points and elaborate my thoughts.

There are some good quotes in this thread, so replying to a few in-line here.

I’m glad to hear you agree it’s a gap, even if you’re pushing back on adding now.

So if I had my way, we would use all the emojis :wink: I think filtering out only a single emoji (:sourcecred:) is smart, just because I think it addresses some concerns raised here about every reaction being weighty, and buys us some “cred-free” space while we experiment. But actually, so far, in my observations, the :sourcecred: emoji has already taken on a useful meaning in the communituy: defining “what is SourceCred?”, in a light, playful way. It’s a means to collectively define our identity and culture. Or “scale our values”, to use a term we’ve used in the past. It can also be used to enforce those values in a light, positive way (there’s no negative :sourcecred: symbol). If the only way we have to express what is (or is not) SourceCred explicitly is some heavy process such as reporting undesirable behavior anonymously (which is absolutely vital), I think we’ll just do less of it.

The problem of parsing the meaning of hundreds of emojis is out of scope for now, but fertile territory as SourceCred grows and is adopted by other communities.

So in the DAO I work in (which flows ~$250k/mo to contributors), there actually are a lot of people that contribute only in chat (e.g. Discored or Telegram). They’re not on GitHub or forums. Often, they’re just hanging out discussing the project, or crypto in general. But they’re also answering questions from newcomers, pointing them to resources, doing low-level support; some things only the devs can help them with, but I’d say %80 are just common Qs. Additionally, they provide value just by being the community. Their economic value in fact is often explicitly recognized by investors and traders. Algorithms literally monitor chat and social media, tracking engagement, sentiment, etc. and using those as trading signals. And these people often get paid zero for the value they create. I’m not saying they should be paid a lot. Just that they should be recognized, and see themselves in the graph. Yes, you can have some sort of process where people controlling money decide to start paying mods. But typically that takes the form of just hiring one or more full-time mods. Which excludes most of the people in the chats creating the value being moderated, and concentrates power into the hands of those mods, often leading to power imbalances, censorship and drama. And even if we decide to reward these people another way, by what mechanism? I would argue having SourceCred valuing chat contributions would be superior to other methods.

To give an example of work that falls through the cracks in the graph, during our last community call, we were joking about the brick of life literally slamming into you. @LB actually drew a cartoon depicting that and posted it in the #random channel. Everyone appreciated it. @vsoch said “@LBS you need a ton of cred for your creations…”. There were two :heart_eyes: reactions. But no cred is flowing…we could have put it in the graph as a Discousre post, but we didn’t… Why? Because many contributions are simply too small… And we don’t want to create too much noise on Discourse. This is one reason the #didathing channel is brilliant too IMO, and a rich source of cred.

Another thing to keep in mind is that chat is increasingly becoming a place where work is done. Slack is eating the world, for better or worse. Many VCs are investing heavily in enterprise chat programs. @burrrata was just posting in Discord a link to a Discord-based project, MetaGame, that wants to use SourceCred on their Discord.

I think that, while it is a considerable amount of work, it could pay large dividends down the line.

I think it’s important to remember not everyone in the project has the same amount of privilege. Right now, everything that happens on GitHub have their contributions automatically minting cred, whereas contributors on Discord will see their contributions quickly evaporate sans cred. Yes, people can do extra work to get in the graph, but we don’t want to put extra burdens on the people with the least privilege.

I totally agree we don’t want a culture where everything feels transactional. My hope is that SourceCred does a good enough job automating value transfer in the background that people feel free to just contribute for the joy of it, without worrying if this particular transaction gets me X$. But that means that the stream of cred from contributions needs to be robust and capture as much value as possible. Essentially, if all contributions are valued, you don’t have to think as much about is this particular contribution rewarded. More thoughts on how to create this later in this post…If we can’t achieve that, I’ll happily retreat on this one.

So, the stress is mainly just due to expected volatility. When the big weight change happened (which I was totally in support of), I went from like $4-5k a month to like $400-500/mo for the last couple months. Which is fine. I signed up for volatility and am financially prepared for it. Also, this is partially just due to not having the Initiatives plugin working yet. I expect my cred scores to be volatile as we experiment, but to eventually catch up and roughly reflect the value I’m bringing. I also expect that, even when we get something great working, it’s going to take some personal experimentation and emotional labor to adjust to it. Change is stressful :grimacing:, even when good :slight_smile:

The thing is though, I feel like, in addition to work going unpaid in chats (and that labor being more social and emotional in nature, which is already undervalued), there’s something inherently stressful about having only one level of signaling. Especially as we move to like-minted cred, and that signaling starts being more weighty. It means that communication around value is low frequency and scarce. In the gap, lacking other communication (this is virutal after all), there’s no way to just say ‘hey, that’s cool’, without it being this big shift in cred/power/money.

For instance, on Twitter (arguably a reputation system), there are multiple levels of interaction. Much of the interactions are just :heart:s on Tweets. Which is a much lower weight signal than Retweeting. If the only thing I could ever do was retweet, I would interact far less, and my interactions and my social graph would certainly be poorer for it. In fact, it was a :heart: on a Tweet about SourceCred that led me to discover the project. If there was nothing lower than a Retweet on Twitter, it’s likely the person that saw the SourceCred tweet wouldn’t have interacted with it at all, and I never would have found this project.

I want SourceCred to be like a vast, living organism, with branches reaching as far down as they can go. It is this property that I believe will make it antifragile, responsive and stable.

Phew! Ok sorry for the novel. Getting into some deeper issues here I suppose. Still open to debate. Just realizing though it would be so much more fun (and time efficient) to have this debate in person at CredCon, since we’re meeting in just a few days!

2 Likes

Thanks everyone for sharing your perspectives! I appreciate the quality of discussion here.

As TBD, I’m going to make the following call:

  • Let’s try a Discord plugin, with the semantics I initially proposed.
  • Let’s consider it an experiment (dogfooding!) and keep our eyes wide open for potential problems that come from using it.
  • At 1 and 3 months after the plugin was turned on, we’ll have discussions about it: how we’re feeling about it, how/whether it changed the vibe, how it changed our behavior, etc.
  • Based on those discussions, we might change the plugin, write new social guidelines, or discontinue it.

Remainder of this post has my takes on specific points in the discussion.

This feels really important to me. Right now, the “population” of Discord and Discourse have a lot of overlap, but there are already contributors who are notably more present on the Discord than on the forum. This divergence will only grow with time. I don’t like the idea that some populations of contributors, who we all agree are doing valuable work, don’t have any first-class way to earn cred.

By the same logic, why not use these other mechanisms to reward forum posts, or GitHub issues, thus avoiding turning each individual post or issue into a microtransaction? The answer is that friction matters. It’s hard for me to see a principled reason why a valuable GitHub issue comment should get “intrinsic” cred, but a valuable Discord comment shouldn’t.

(I agree that, on average, GitHub issue comments have a longer “valuable lifespan” than Discord comments, and it might make sense to give them more cred. But this is a continuum, not a dichotomy.)

I’m pretty reluctant to sacrifice the transparency and fork-ability of Cred instances, and so getting anonymous signals without sacrificing those values requires a ton of zero-knowledge-cryptographic style engineering that we’re not prepared for.

I do like the idea of having a channel (let’s call it #props) where people can nominate each other for receiving cred flows, though.

Now that :hearts: are so meaningful, we might want to have a discussion about “what a heart means”. See here: When to ❤ something?

I think cred minting should always have an element of review. :hearts: represent an informal review, minting to merged PRs makes sense because they were also reviewed. If we mint directly to any post in #didathing, we’ll encourage a race-to-the-bottom where people are incentivized to post increasingly trivial things there.

In the future, I think we’ll mostly do forward-looking weight changes rather than retroactive (needs technical work), so we shouldn’t have quite so much volatility. That said, I’ve been thinking for a while that we should implement a “grain vesting” type mechanism that damps the volatility. This will also make cred-and-compensation less tightly coupled, which will reduce the “I need 5 :hearts: to get paid this week” type vibe.


Also, I’m happy to have some truly cred-free spaces on the Discord, I just don’t think the whole server should be a cred-free space. We could disable cred on the #random channel, for example.

I think it makes sense to lean into SourceCred as a tool to encourage positive contributions, and we’re only going to get better at that by iterating on SourceCred in more and different contexts. The worst case here is that the Discord experiment would fail; but we often learn a lot from failure, right?

It feels like the Discourse went through a positive metamorphosis after y’all pointed SourceCred at it. It was shocking to see how much it changed after a few months. Another outcome of the Discord experiment could be that the same sort of unpredictable, creative value-creation could blossom on Discord.

A different take on the tension of being evaluated is that SourceCred should ideally lower that tension. I and others find it quite uncomfortable to expose our brains via a pull request to the scrutiny of elite programmers, but I’ve found it assuaging to know that the project is committed to recognizing my work even if it’s small or trivial in comparison to other work.

But I’m approaching that from the fear of being negatively evaluated; I think others are more concerned about their intentions being misconstrued. A space to socialize cred-free would definitely be a good thing.

2 Likes

Thank you all for your constructive comments! I know that I’ve learned things from this the discussion in this thread and the other. Personally, this perspective resonated with me a lot:

…particularly because it type-checks against the “undue burden” phenomenon, wherein the people who are expected to do the most work to counteract marginalization are the very same people who are being marginalized. This is clearly something that we want to bias away from, so I’m on board. Let’s try it out!

2 Likes

At Foursquare we had a “karma bot” which supported the giving of "++"es, letting people emit generalized karmic bumps for contributions with fuzzy boundaries. It seemed to work very well (i.e. krono++ for doing X). Could be a good text-based interface for sending cred around.

Also, concerning “cred-free” spaces – it seems like the underlying issue is the boundary between “public” and “private” space. IMO “public” spaces should generate cred, while “private” spaces should not. What that means to you is not mine to determine, but I would suggest that any environment in which people are collaborating to do work is a “public” space in this sense.

3 Likes

My thoughts:

I think it’s important to distinguish the “capabilities of an instance of sourcecred” from the choices a particular community makes (and possibly later changes) about how cred is generated and diffused.

In the general case, i think it makes sense for a community to give cred for message activity, but in doing so to determine whether those cred allotments are limited to messages in specific channels or which are marked by specific responses, eg :sourcecred: as suggested discussed by @s_ben and @decentralion above.

In the specific case of the SourceCred community, it seems to me that @wchargin suggestion of discord as a cred-free space is a good one. However, given our collective role as ‘dog-fooders’ i agree that it would be appropriate to experiment with discord based cred, and to use our learnings to inform best practice recommendations, even if we eventually opt for a cred-free discord in our particular community.

As @burrrata noted, entities such as Metagame, would make entirely different choices, and i think the design challenge here is having enough structure to avoid the tyranny of structurelessness (as @s_ben noted) and yet enough flexibility to contextualize to a wide range of cases. I imagine that communities will always have at least some unmonitored spaces (private space per @kronosapiens) , then individuals within those communities will gravitate to spaces that meet their individual trade-offs between watched and credit (see @vsoch comments re: their particular preferences).

3 Likes