# How Discourse trust level works?

**URL:** <https://discourse.julialang.org/t/how-discourse-trust-level-works/7946>\
**Category:** Community\
**Tags:** question, community\
**Created:** [December 23, 2017, 6:39pm UTC](https://discourse.julialang.org/t/how-discourse-trust-level-works/7946 "2017-12-23T18:39:59Z")\
**Posts on this page:** 20\
**Page:** 2

<div class="post-metadata">

**Author:** ![juliohm](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/juliohm/32/215266_2.png) [@juliohm](https://discourse.julialang.org/u/juliohm)\
**Post date:** [December 24, 2017, 1:34am UTC](https://discourse.julialang.org/t/how-discourse-trust-level-works/7946/21 "2017-12-24T01:34:14Z")

</div>

It is clear that the current situation calls for a merit-based forum where people gain moderation power based on their trust level, not by invitation.

---

<div class="post-metadata">

**Author:** ![StefanKarpinski](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/stefankarpinski/32/24_2.png) [@StefanKarpinski](https://discourse.julialang.org/u/StefanKarpinski)\
**Post date:** [December 24, 2017, 1:39am UTC](https://discourse.julialang.org/t/how-discourse-trust-level-works/7946/22 "2017-12-24T01:39:32Z")

</div>

There are thousands of people on here, not just five. Moderators do very little on the forum – moderator actions are rare. Are you advocating for a model where everyone is a moderator? I’m not aware of any forums where that is the case. If you dislike the current moderation, there must be some reason based on actions taken or not taken. You’ve expressed that you don’t think the current set of moderators is “sufficiently diverse”. That opinion presumably reflects some action you feel the moderators should or shouldn’t have taken. I’m asking what that action (or lack of it) was.

---

<div class="post-metadata">

**Author:** ![djsegal](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/djsegal/32/13752_2.png) [@djsegal](https://discourse.julialang.org/u/djsegal)\
**Post date:** [December 24, 2017, 1:47am UTC](https://discourse.julialang.org/t/how-discourse-trust-level-works/7946/23 "2017-12-24T01:47:06Z")

</div>

Come on man. You can’t just attack Discourse.

At least provide a specific example of what you want changed to get the ball rolling.

Examples that you’ve broughten up before are:

- Moderators mixing personal opinions with their voice of authority
- Moderators being too vocal and making disparaging remarks
- Powerful ingroups using likes to sway the attitude of a post

None of this has to get changed (because it may not be happening). But at least give some specifics.

---

<div class="post-metadata">

**Author:** ![bramtayl](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/bramtayl/32/3614_2.png) [@bramtayl](https://discourse.julialang.org/u/bramtayl)\
**Post date:** [December 24, 2017, 3:44am UTC](https://discourse.julialang.org/t/how-discourse-trust-level-works/7946/24 "2017-12-24T03:44:31Z")

</div>

> [@yakir12](#):
>
> Then there are tons of cases i would just class as culture shock/ clash.

This seems right on point. My early experiences with the Julia community were very negative. I came in with far fetched ideas that got shot down quickly and in some cases harshly. In a lot of cases simpler and better implementations that accomplished the same thing eventually did make it in (dot vectorization, Query, \_ lambdas (pending), etc). So I’m glad that my dumb ideas never made it in. It certainly is disheartening to come in with an idea you’re really passionate about and get shot down so quickly. But that seems par for the course in open-source development.

---

<div class="post-metadata">

**Author:** ![Tamas\_Papp](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/tamas_papp/32/25949_2.png) [@Tamas\_Papp](https://discourse.julialang.org/u/Tamas_Papp)\
**Post date:** [December 24, 2017, 7:51am UTC](https://discourse.julialang.org/t/how-discourse-trust-level-works/7946/25 "2017-12-24T07:51:14Z")

</div>

> [@juliohm](#):
>
> the whole Discourse model is flawed

A large number of open source communities are using Discourse, having replaced mailing lists & similar. This suggests that it can’t be entirely flawed, or at least must be better than the alternatives. It seems to be one of the best solutions to a difficult problem that is currently available.

Being specific about your grievances would allow the community to address them.

---

<div class="post-metadata">

**Author:** ![yakir12](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/yakir12/32/297_2.png) [@yakir12](https://discourse.julialang.org/u/yakir12)\
**Post date:** [December 24, 2017, 8:05am UTC](https://discourse.julialang.org/t/how-discourse-trust-level-works/7946/26 "2017-12-24T08:05:49Z")

</div>

I’m trying to better understand what we’re talking about here:

1. some users with a lot of knowledge and skill are lacking in manners.
2. the way administration/moderation rights are granted is not democratic.

@juliohm, would you agree that these two points are more or less inline with what you’re saying? If so, then I’d like to hear your opinions about:

1. would you rather not hear a reply from these talented-curt people (I already asked this earlier in this thread)?
2. how would you rather have it? Should we vote for our leaders?

I don’t want this to look like I’m provoking you with rhetorical questions (I’m not, I really think that these questions follow logically from the grievances and therefore are warranted), so here are _my_ answers:

1. No, I’d much rather hear their answers. Give it to me rude, give it to me fresh. I can take the information unpacked and naked and say thank you at the end. Remove the curt answers from this forum and you’ll cut down the information value in this resource by half!
2. No. That would waste a lot of time and won’t necessarily make things better (we can talk more about this if you really feel strongly about democracy).

---

<div class="post-metadata">

**Author:** ![djsegal](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/djsegal/32/13752_2.png) [@djsegal](https://discourse.julialang.org/u/djsegal)\
**Post date:** [December 24, 2017, 8:15am UTC](https://discourse.julialang.org/t/how-discourse-trust-level-works/7946/27 "2017-12-24T08:15:06Z")

</div>

Don’t know if I completely agree with this.

If you hire a software engineer, you don’t pick the smartest person. You pick the best person for the team.

Hackernews is full of [articles](https://news.ycombinator.com/item?id=15482558) that touch on this subject. And it becomes even more important when these developers are the public liasons of the language.

Comments like yours enforce this idea that being a good programmer allows you to be an ass 🐎

---

<div class="post-metadata">

**Author:** ![yakir12](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/yakir12/32/297_2.png) [@yakir12](https://discourse.julialang.org/u/yakir12)\
**Post date:** [December 24, 2017, 8:21am UTC](https://discourse.julialang.org/t/how-discourse-trust-level-works/7946/28 "2017-12-24T08:21:47Z")

</div>

Sorry, I didn’t mean to say that at all. All I was trying to say was, if I ask for help on a forum I, personally, am totally fine with getting an informative but curt reply. I’ll take help however I can get it. Put me on a team with people I need to collaborate with etc, then yea, there are a ton of other qualities that become important. But we’re not talking about that now, I think. We’re only talking about point #1 in that list.

---

<div class="post-metadata">

**Author:** ![ScottPJones](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/scottpjones/32/146_2.png) [@ScottPJones](https://discourse.julialang.org/u/ScottPJones)\
**Post date:** [December 24, 2017, 8:48am UTC](https://discourse.julialang.org/t/how-discourse-trust-level-works/7946/29 "2017-12-24T08:48:32Z")

</div>

> [@yakir12](#):
>
> All I was trying to say was, if I ask for help on a forum I, personally, am totally fine with getting an informative but curt reply.

Informative but curt is one think, unnecessarily rude is another. Disparaging other people’s questions or ideas, as being “ridiculous” or “absurd” or “unreasonable”, for example.

Also, there’s a big problem when the rudeness comes from people with some power on the forum, who can also block or censor people they don’t agree with, viewpoints that they don’t want to be heard.  
I believe that is why @juliohm is concerned about how those admin/moderation rights are granted.

> [@yakir12](#):
>
> some users with a lot of knowledge and skill are lacking in manners.

The problem of a lack in manners doesn’t imply that the person actually does have a lot of knowledge or skill.  
Many times people who are insecure about their own knowledge and skills denigrate and disparage people who disagree with them.

---

<div class="post-metadata">

**Author:** ![yakir12](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/yakir12/32/297_2.png) [@yakir12](https://discourse.julialang.org/u/yakir12)\
**Post date:** [December 24, 2017, 9:03am UTC](https://discourse.julialang.org/t/how-discourse-trust-level-works/7946/30 "2017-12-24T09:03:11Z")

</div>

> [@ScottPJones](#):
>
> Disparaging other people’s questions or ideas, as being “ridiculous” or “absurd” or “unreasonable”, for example.

_That_ behavior is indeed below an acceptable level. And as I mentioned before, we do need to be nice to each other, especially in such large forums. But the gray zone is huge here. I’ve followed the never-ending [islower-lowercase-isupper-uppercase](https://discourse.julialang.org/t/problems-with-deprecations-of-islower-lowercase-isupper-uppercase/7797), and your own politeness was lacking at times too. Not in any major way, but you could have been slightly more polite. Just as the others could have been. My main point is that I think that no one has been overly rude without any repercussions, no matter what their role were. Or would you argue that people have been THAT impolite to warrant some retaliation and then didn’t get their due punishment because they were “above the law”?

> [@ScottPJones](#):
>
> Also, there’s a big problem when the rudeness comes from people with some power on the forum, who can also block or censor people they don’t agree with, viewpoints that they don’t want to be heard.
> 
> I believe that is why @juliohm is concerned about how those admin/moderation rights are granted.

So this here can only fall into one of these two bins:

1. The moderators are a bunch of dictators abusing their powers to rule unjustly.
2. The moderators are literally doing their job: moderate.

Which is it?

I’d like to just highlight my list from before. These are two different issues, and should be kept somewhat separate:

1. The rudeness: some users with a lot of knowledge and skill are lacking in manners.
2. The moderators: the way administration/moderation rights are granted is not democratic.

---

<div class="post-metadata">

**Author:** ![ScottPJones](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/scottpjones/32/146_2.png) [@ScottPJones](https://discourse.julialang.org/u/ScottPJones)\
**Post date:** [December 24, 2017, 9:17am UTC](https://discourse.julialang.org/t/how-discourse-trust-level-works/7946/31 "2017-12-24T09:17:43Z")

</div>

> [@yakir12](#):
>
> My main point is that I think that no one has been overly rude without any repercussions, no matter what their role were.

Two people in particular have a long history of being rude and disparaging to other people, which has driven a number of people away from Julia. They also have a tendency to try to stifle/censor technical discussion they don’t agree with, and make false claims to “win” what they view as an argument.

> [@yakir12](#):
>
> So this here can only fall into one of these two bins:
> 
> The moderators are a bunch of dictators abusing their powers to rule unjustly.

Now, here I believe you are getting offensive, by claiming that I was trying to say that.  
Almost all of the moderators are fine (although it seems that frequently they don’t want to try to moderate a few who are unnecessarily rude to others, because of their power within the community).

> [@yakir12](#):
>
> The rudeness: some users with a lot of knowledge and skill are lacking in manners.

Again, this implication that the ones who are being rude do have a lot of knowledge and skill, which doesn’t seem to be justified. The problem is when people are rude and disparaging to shut down other people’s viewpoints, instead of trying to defend their own viewpoints on technical merit.

---

<div class="post-metadata">

**Author:** ![yakir12](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/yakir12/32/297_2.png) [@yakir12](https://discourse.julialang.org/u/yakir12)\
**Post date:** [December 24, 2017, 9:24am UTC](https://discourse.julialang.org/t/how-discourse-trust-level-works/7946/32 "2017-12-24T09:24:22Z")

</div>

I see. OK, well I really don’t know enough about the specifics then. Tricky.

Sorry, I really didn’t mean to be so offensive, and agree that I was. Sorry about that. I guess what I wanted is some more clarity and resolve on what is what.

I have a strong feeling that what we all need is to spend a day or two together, talk things out, drink like 10 beers, shout and get it all out, and move on. It’ll be fine.

I know I’m looking forward to my share of beers this Xmas (Swedish style Xmas)!

---

<div class="post-metadata">

**Author:** ![Tamas\_Papp](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/tamas_papp/32/25949_2.png) [@Tamas\_Papp](https://discourse.julialang.org/u/Tamas_Papp)\
**Post date:** [December 24, 2017, 9:43am UTC](https://discourse.julialang.org/t/how-discourse-trust-level-works/7946/33 "2017-12-24T09:43:16Z")

</div>

> [@yakir12](#):
>
> OK, well I really don’t know enough about the specifics then. Tricky.

IMO these very generic and vague discussions about “some people” or “the whole Discourse model” are unlikely to achieve anything positive, and they may be actively harmful.

If people have grievances, they should provide specific details. Otherwise the members of the community are unable to judge the issue on their merits, and admins are unable to do anything about it even if they wanted to.

---

<div class="post-metadata">

**Author:** ![ScottPJones](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/scottpjones/32/146_2.png) [@ScottPJones](https://discourse.julialang.org/u/ScottPJones)\
**Post date:** [December 24, 2017, 10:23am UTC](https://discourse.julialang.org/t/how-discourse-trust-level-works/7946/34 "2017-12-24T10:23:42Z")

</div>

> [@Tamas\_Papp](#):
>
> If people have grievances, they should provide specific details

I recently did - about a statement that was a total misrepresentation of the facts (along with a lot of documentation to prove it), only to have a moderator hide the message.

That censorship means the community is unable to judge the issue on merits, and instead only hears from the person with the power to block dissenting views.

---

<div class="post-metadata">

**Author:** ![Liso](https://avatars.discourse-cdn.com/v4/letter/l/898d66/32.png) [@Liso](https://discourse.julialang.org/u/Liso)\
**Post date:** [December 24, 2017, 10:35am UTC](https://discourse.julialang.org/t/how-discourse-trust-level-works/7946/35 "2017-12-24T10:35:52Z")

</div>

If we like to speak about specific problems about lack of community respect - why to hide [this message](https://discourse.julialang.org/t/problems-with-deprecations-of-islower-lowercase-isupper-uppercase/7797/137)?

If people could flag messages and they will be hidden automatically this could potentially start some kind of battle for flag. I hope not.

If moderator keep that message hidden without any explanation then author probably could feel injustice. Some others could see (maybe falsely) mobbing techniques to wipe out opponent.

PS. About “democracy” - I probably share your opinion that it could not work better. Humans are complicated. 😕  
But I am still thinking that this is good healthy forum! 🙂

---

<div class="post-metadata">

**Author:** ![Tamas\_Papp](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/tamas_papp/32/25949_2.png) [@Tamas\_Papp](https://discourse.julialang.org/u/Tamas_Papp)\
**Post date:** [December 24, 2017, 10:38am UTC](https://discourse.julialang.org/t/how-discourse-trust-level-works/7946/36 "2017-12-24T10:38:07Z")

</div>

> [@ScottPJones](#):
>
> only to have a moderator hide the message

AFAICT “hidden” messages can be clicked, opened, and read, and you can link to them. Again, if I wanted to learn about this case, I would have to guess, whereas you could just have linked it here.

Calling this feature of the site “censorship” dilutes the meaning of the word. Also, it is my impression that even this is used very sparingly.

---

<div class="post-metadata">

**Author:** ![ScottPJones](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/scottpjones/32/146_2.png) [@ScottPJones](https://discourse.julialang.org/u/ScottPJones)\
**Post date:** [December 24, 2017, 10:42am UTC](https://discourse.julialang.org/t/how-discourse-trust-level-works/7946/37 "2017-12-24T10:42:01Z")

</div>

Hiding a message like that creates the impression that the person actually did something to warrant it, besides disagreeing with a technical issue, or pointing out some misrepresentation, as I tried to with [this message](https://discourse.julialang.org/t/problems-with-deprecations-of-islower-lowercase-isupper-uppercase/7797/137),  
so that many people will not see it, and will end up with a negative impression of the author, without checking the facts for themselves.

> [@Tamas\_Papp](#):
>
> whereas you could just have linked it here

I hadn’t ever used that feature before (just earned my Discourse “First Link” badge!), I’ll do that in the future! 🙂

---

<div class="post-metadata">

**Author:** ![juliohm](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/juliohm/32/215266_2.png) [@juliohm](https://discourse.julialang.org/u/juliohm)\
**Post date:** [December 24, 2017, 3:47pm UTC](https://discourse.julialang.org/t/how-discourse-trust-level-works/7946/38 "2017-12-24T15:47:39Z")

</div>

The issue I raised:

> The moderators of this forum were **not** elected by the community. Therefore, they cannot represent all views and different opinions.

I am fighting for democracy, but the moderators are not. Please don’t get distracted with specifics, try to see the big picture. I will call what is happening the _developer-moderator_ paradox:

> I am a developer complaining that I don’t have time to code because of people on Discourse distracting me. On the other hand, I make myself a moderator of the forum, but I don’t have much time to listen to the community. Nevertheless, I have power to hide other’s comments and govern the forum the way I like.

The core Julia team is the same team moderating this forum, and is the same team working at JuliaComputing, and is the same, etc. etc. Why is that necessary? How diversity can take place?

Today I am reducing my participation on Discourse to a minimum because I **strongly disagree** with moderators opinions and their attitude against impolite comments, public embarrassment of new members and many other things. They do **not** represent me.

---

<div class="post-metadata">

**Author:** ![rsrock](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/rsrock/32/115_2.png) [@rsrock](https://discourse.julialang.org/u/rsrock)\
**Post date:** [December 24, 2017, 4:34pm UTC](https://discourse.julialang.org/t/how-discourse-trust-level-works/7946/39 "2017-12-24T16:34:16Z")

</div>

Scott, If I had to guess, the reason that your post was hidden is that you misread a portion of Stefan’s statement, and that set you off on a tangent. Here is what Stefan said, where I’ve added a couple of words to clarify how _I_ interpret his statement.

> [@Problems with deprecations of islower, lowercase, isupper, uppercase](https://discourse.julialang.org/t/problems-with-deprecations-of-islower-lowercase-isupper-uppercase/7797/133):
>
> Like I said, we tried it @ScottPJones’s [[preferred]] way for two years and it has truly awful ergonomics for real-world data processing – this is not hypothetical or just my opinion, the data ecosystem has been struggling with it badly. Fundamentally, you need a string type that lets you choose whether to throw an error or not. You can wrap that in a stricter string type that always validates, but you can’t implement the relaxed version in terms of the strict one. So Base Julia [[now]] gives you the more general, non-strict version and leaves strict Unicode enforcement to packages.

He’s not disparaging the code that you wrote, he’s pointing out real problems with the overall Strings architecture that were there even before you came on the scene.

Let’s go on to the end of his message:

> [@Problems with deprecations of islower, lowercase, isupper, uppercase](https://discourse.julialang.org/t/problems-with-deprecations-of-islower-lowercase-isupper-uppercase/7797/133):
>
> On the contrary, while this premise and point of view **makes lots of sense in @ScottPJones’s line of work** – building textual databases, where data is loaded once and queried many times – this is actually quite atypical. Most of the time, a program scans through a text file, computes derived values and then throws the text away. In such use cases, being forced to do lots of work up front, only to never look at those strings again, is a total waste of time and effort.
> 
> As a general rule of thumb for high-performance computing, you don’t want to do work speculatively, you want to be as lazy as possible. @ScottPJones is trying to impose a very specific world view on the entire Julia language and ecosystem: **he happens to work in an area where it does make sense to do more work pre-processing your text data so that accessing it later is faster. That’s fine and it can definitely be supported with packages** , but it is not the norm. There is also an asymmetry here: if the default behavior is not to do unnecessary work, you can always opt into doing more work. But if you’ve already done the work because that’s the fundamental built-in behavior, you’re out of luck – you can’t undo work that’s already been done.

I see this as an entirely reasonable statement of the situation. I don’t see how Stefan’s message as a whole can be interpreted as a personal attack, when he also goes out of his way to validate your perspective. When he says that “it can definitely be supported with packages”, I take that to mean that the Julia community will work with you to address pain-points, to the best of its ability. Turn the conversation in that direction.

My advice to all-- read every message as if the author had good intent. Even if the comment is forceful (“That argument is ridiculous”), don’t take it as a personal attack (“You are ridiculous”-- quite different).

Best of luck in your encounters with surly Swedes 😉. Today, I have to make the Janson’s Temptation, and keep my better half from tearing into all the Christmas gifts this afternoon instead of tomorrow morning, so I know what an uphill battle it can be.

---

<div class="post-metadata">

**Author:** ![ScottPJones](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/scottpjones/32/146_2.png) [@ScottPJones](https://discourse.julialang.org/u/ScottPJones)\
**Post date:** [December 24, 2017, 5:17pm UTC](https://discourse.julialang.org/t/how-discourse-trust-level-works/7946/40 "2017-12-24T17:17:25Z")

</div>

> [@rsrock](#):
>
> Scott, If I had to guess, the reason that your post was hidden is that you misread a portion of Stefan’s statement, and that set you off on a tangent.

My point was that he was making a false statement, claiming that they had tried things “my” way (basically blaming me for any problems he saw, which I can demonstrate were present in Julia long before I showed up).  
That touches on my reputation, gained from long years being the principal architect at a company where string handling and performance where the main competitive advantages.

What I did was fix a LOT of bugs with string handling, greatly improved performance of conversions between different Unicode encodings, allowed the code to handle some of the most common variants of UTF-8 in the world (such as Java and others trick of using a long encoding for \0, i.e. \xc0\x80), and CESU-8, which has non-BMP characters encoded as 6-bytes, not 4 (i.e. a UTF-16 surrogate pair, encoded as 2 3-byte UTF-8 sequences).

Many people (including Jeff Bezanson) thanked me for that work.

He also greatly misrepresents what I am trying to do, and even the motivations for doing it.

Anyway, I’ll shortly have my Strs.jl package ready (maybe even a WIP version up as a Xmas 🎄morning present 🎁 to the Julia community 🎅, hopefully with a finished, well-tested and benchmarked version by Jan. 6th, when the Reyes Magos​:prince:t2:🤴🏻🤴🏻 (i.e. the Three Wise Kings) arrive on their 🐪🐪🐪 🕶!

(side note: I wanted to get the Reyes Magos to be colored correctly 🙂 but I couldn’t figure out how get the skin tones for them, they are supposed to be a redhead, a Moor (dark), and an Asian, according to Spanish tradition!)

[Previous page](https://discourse.julialang.org/t/how-discourse-trust-level-works/7946.md?page=1)

[Next page](https://discourse.julialang.org/t/how-discourse-trust-level-works/7946.md?page=3)
