Dealing with flamebait

Occasionally this forum experiences discussions which

  1. contribute little to the development or understanding of Julia (or any other programming language or meaningful human endavor for that matter),
  2. yet at the same time engage a lot of frequent contributors to this site.

Of course people are free to allocate their own time, and one can always stay away or disengage from these discussions. On the other hand, this is difficult, especially if the discussion is about the merits of Julia, a project many of us hold on high regard and contribute to.

I am proposing that we come up with a systematic way of dealing with this phenomenon. Below is a sketch of a proposal, suggestions are most welcome.

Identifying flamebait

Like all things under the sun, Julia is not perfect. Talking about its imperfections and remedying them is fine, as long as the discussion is concrete and technical. Flamebait frequently involves broad statements (“Julia stinks”), often made indirectly (“let’s discuss someone’s blog post about how Julia stinks”), or in the form of a question (“should I learn Julia, or does it just stink?”).

IMO key is the ratio of concrete content and claims (code, benchmarks, examples) to the generality of the claims, the tone, and the likelihood it will generate a heated and eventually meaningless discussion.

Marking flamebait

Flamebait should be reported to the moderators immediately, who can mark it accordingly with a polite message explaining why this happened. The original poster should have the opportunity to remedy their post if they want to (we all make mistakes), at which point it should be unmarked.

At the same time, moderators

  1. should turn on slow mode for the topic and leave it on as long as it is marked.

  2. add a highlighted post explaining that it is identified as flamebait, and urge users not to post. Users agreeing with this assessment can just add a :heart: to this post.

Posting should still be possible though.

Closing flamebait

If, despite the above measures, the discussion degenerates, moderators should just close it. Preferably much sooner than the current practice.


A few quick notes:

  • I really don’t want there to be public discussion/accusations of trolling/flame-baitery. I think members here should assume good intent; it’s upon us moderators to decide if something is being done in bad faith.
  • We do have a few tools in our toolbox we don’t use much, like staff notices (see above) and slowdown mode, although I do feel that the slowdown mode works counter to our goals — it actually suppresses a minority view more and can indeed adversely impact the original poster far more than the community at large. (edit) Another potentially helpful tool is temporary closures, with a set time to re-open.
  • Please do use flags more! They don’t immediately hide posts, but they bring them to our attention. It’s not just for bad stuff, either.
  • I’ve tried to give gentle nudges about threads like this, and it’s seemed to help at least initially.

I fear that something as strong as what you suggested would just make it look like we are trying to ban negative viewpoints.

Ultimately, I think the regular community members need to do a better job of not providing fuel to the fire. People come here and make stupid claims. Julia’s merits are strong enough on their own. At the same time, we also understand it has disadvantages relative to other popular languages. So, some Python user comes here trying to poke us with a big stick and not have useful discussion – just avoid it. There is nothing to be gained. It is usually quite obvious very early on in the thread if the OP is putting in good faith efforts for discussion or just trying to pick a fight.


We’ve also been wondering about “unbundling” feedback threads like this. Say a user comes in with a large grab bag of legitimate complaints, compliments, along with some aspersions — they’re legitimately frustrated! We could potentially have a rule that we simply say “thank you for your feedback” and immediately split it up into multiple concrete posts and GitHub issues. It may feel a little hostile and heavy-handed, though.


I don’t think it is clear to most participants here that one can/should use flags for this purpose (it wasn’t to me — perhaps communicate this more broadly?)

Staff notices would be helpful.

I am not suggesting that, but at the same time I don’t think there is anything wrong with removing posts that are just broadly negative without making a concrete point.

Eg imagine that I go to a rock climbing forum, and tell them that rock climbing stinks. It would be reasonable to ask what I am doing there then — presumably they disagree, and know more about it than me, so I am just making noise which is not useful to anyone.

That would be ideal, but I don’t think that works in practice, which is why I was proposing that we deal with this systematically.

Even if we do not do anything (other than staff notices, which I think are a great idea), clear guidelines could go a long way.


Having spent a fair amount of years on all kinds of public forums relating to open-source development (Blender, Python, VTK, etc), both lurking on threads and engaging in them, I really agree with this point. I’ve never seen a post like Stefan’s calling out one or more users (wether real or not) and calling them “sock puppets” in such strong terms. Not only was I shocked to read it, but I’d be very careful with posting such things as they are publicly visible and will be for a long time. Such posts really give a weird and negative impression of the forum, its community and leadership, whether deserved or not.


Here is a clear test of who is “at fault” for a lot of these discussions. Of all threads longer than 50 or 100 posts, how many devolved into useless bickering and name calling? And how many posts were by the “outsiders”? I just think we need to do a better job of recognizing bad discussions.

I do like the idea of having a canned response that hits early that says something to the effect of “We value your feedback. To help us help you, here’s what you can do…” which then gives them instructions on what we’d what to see. Sort of like an issue template on github.


I respectfully disagree, at least partially. Certainly we shouldn’t have unfounded accusations being flung around. However, I am a bit of an optimist. I come here to learn and hopefully give back to others. I want to believe, and it is my default assumption, that the other folks in a discussion are acting in good faith.

I appreciate being informed when it is not the case.


I agree about being open about things going on that are deceptive. But I would propose that any dealings with users/accounts that seem to only be present for flamebaiting/trolling/etc should be done privately by the mods, including any consequences. In the thread of today causing this fallout there was a lengthy post by Stefan, in effect describing a lot of evidence for why he was calling out certain “users” as sock puppets, etc. I’m not sure that that long post actually helped the case and its perception. It might have been better to suspend the relevant user accounts, make a post in the thread that this had been done, summarize the reasons and engage with the users in private for any followup.

I can see arguing it publicly as Stefan did is a form of transparency, but it also shows (in my opinion) a bit too much of personal engagement going on. In short, I like my mods to be definitely fair and transparent, but also somewhat above the normal discussions :slight_smile:

Just my 2 cents


This 100%:

1 Like

Yeah, I get that. My hope is that moderator actions would help everyone feel more secure in assuming good faith; that post would be inappropriate if we weren’t absolutely certain or if it came from a non-moderator/admin/steward. Maybe we should have simultaneously closed the thread, but the attempt there was to separate out the critiques from the fraud.

My experience differs from yours; I’ve definitely seen and experienced much more heavy-handed moderator actions elsewhere in open source and generally… but they’re often subsequently deleted and hidden… and definitely not openly reflected upon afterwards :slight_smile:


I noticed that this type of discussion is rehashed over and over. Until the language and ecosystem advances more, I think we have reached a point of diminishing marginal returns. This makes me wonder whether some of these issues could be mitigated by referring posters to a blog post that summarizes the informative parts of these discussions, including common misconceptions, the strengths of Julia, the weaknesses of Julia, and future directions. The purpose of this would not be to stifle discussion but rather to redirect the conversation to more informative and productive means, such as making concrete plans for improving Julia or the supporting ecosystem.


I think this is a great idea. It’s also nice to be able to say “yes, we really have thought about this” in a more convincing way.


How about a Julia wiki where we could also post answers to other common topics?

We can kind of do this by sending pull requests to update the documentation, but a moderated wiki might provide a a venue for topics that do not quite fit into the documentation.


I think a Wiki would work well too. I agree that a Wiki has the advantage of being a living document that can be updated as new information becomes available. It would also allow multiple people to contribute. I do not have the expertise to take lead on such a project, but I would be willing to provide feedback as a scientist who uses Julia.


I would really love to have a JuliaWiki.


What are some other projects whose wikis are good? Arch Linux is the main one I can think of.


Wikipedia (I’ll see myself out…)


Tamas didn’t say anything about intent. On my reading, his proposal is about anticipated consequences. There are some people whose time is very valuable to the Julia community, and a certain kind of thread on Discourse has a history of wasting their time. Steps will be taken to make that happen less often.

Provided that was done openly, would it be such a terrible thing? People would be free to flame Julia in other forums, and Julia developers who enjoy being trolled would be free to participate in other forums. In the message board for using and developing Julia, criticism of Julia would be required to be constructive, or at least potentially constructive. But criticism of charlatans and university research administrators would be limited only by the law of defamation.


Exactly — thanks for the clarification.

Maybe I should have worded it differently — “flamebait” is a loaded term, what I really mean is “a kind of discussion that almost surely degenerates into a heated debate, rehashing the same ideas, without anything new added”, but if there is a word for this, it does not occur to me at the moment.

A lot of forums deal with these almost mechanically — eg on StackOverflow moderators would flag and close questions like this pretty quickly. Intent in this context is of secondary importance, in theory well-meaning people can also ask these kind of questions. The proposal is about dealing with these in a practical manner.