I have recently been appointed as the Discourse Community Manager. Here I want to share my plans, thoughts and visions with the position and the community. I am looking forward to feedback from users, developers, educators and everyone else engaged in the Stan community.
It turns out brevity is not my strength, so this post is divided into four parts for clarity:
- Process - what this text means and what happens next
- What I think the ideal community is.
- What I think is the state of the community.
- What I think we can do to improve.
The structure is here to make it clear where any disagreements lie - it makes little sense to discuss low-level interventions if we don’t agree about the overall goals.
In its current form, this is my personal statement and does not reflect the view of the full community - everything should be prefixed with a big “I think…”. However, provided there are no strong disagreements and after incorporating feedback from the community, an updated version could become an official medium-term roadmap for the Community Manager position.
There also seems to be disagreement about whether the Community Manager position should exist in its current (paid) form and whether the provisional SGB that appointed me has full legitimacy to make this kind of decisions. I hope the community will find the ideas below and the ensuing discussion fruitful regardless of whether the position will continue to exist and I believe little of this post’s content depends on my formal status.
What I think the ideal community is
Discourse is a nice place to be in. People contributing to the Discourse feel good about their contributions and their role in the community. People feel welcome and the barrier for constructive engagement in the community is low. Reading the forums is pleasant and motivates readers to consider becoming active in the community.
Discourse is a place to seek help. Everybody asking for help in good faith gets support. “Support” might not necessarily mean “answer” or “solution” as some problems are just hard and some questions do provide either too much or too little information to allow us to give a good answer. However, the asker should always learn why the community thinks the problem is hard or how the question could be improved. Nobody in good faith should avoid asking questions because they feel afraid or intimidated by the community. Here good faith is a problematic quality that is hard to judge so we should err on the side of assuming good faith. I believe losing a potentially great member of the community is a higher price to pay than reacting constructively to some lazy questions. Also assuming good faith is IMHO the morally right thing to do.
Discourse is a place to discuss development and future directions for Stan. Discussion even about contentious topics should be civil and constructive. Everybody who is connected to Stan in any way should feel OK about expressing their opinions about topics they find important. The discussions are transparent and it is reasonably easy to stay updated on what is being discussed and what the proposals/conclusions/… are.
Discourse is a place to share news/accomplishments/job offers/… related to Stan. It should be easy to determine what people can (and should) post and what is off-topic.
There are clear boundaries of what Stan Discourse is not. This one I am less sure about, but I fear that if Stan succeeds, we may face the fate of Cross Validated: very broad community having way too many questions and too few people who can answer them competently. I think statistics communities face greater risks in this regard than software or other communities as the amount of people that need to use statistics is huge while the state of statistical education is sad across the world. We can partially mitigate the risks by high-quality community that helps people quickly become competent answerers, but I fear this approach might not scale. I therefore believe discussion about boundaries will have to be held at some point.
Where are we now
Discourse is a nice place to be in.
Mixed feelings. On one hand, Stan Discourse is IMHO way better than Cross Validated and many other online communities. My personal experience has been mostly very pleasant. On the other hand, there is a tendency for very compressed style of responses which (regardless of intent) may be interpreted as either “no BS, straight to the point” or “stern, discouraging, almost aggressive”. I believe notable fraction of readers might read the posts with the latter interpretation and be turned away from involvement in the community. There is also a big difference between responses to user questions (which tend to be nice) and discussion on development topics (which tend to be way too harsh for my taste).
Discourse is a place to seek help.
I believe we are doing very well in this regard. Our response rate is very good. This does not necessarily mean people get the answers they need but it is likely they don’t feel neglected. Some more nuanced data could be probably gathered at low cost (e. g., a short survey sent out to all first-time askers from past few months). It is not clear to what extent people fear posting their questions and it would be hard to get good data on this (but a survey of first time askers could still shed some light). Also a few good questions still fall through the cracks each month and receive no attention.
Discourse is a place to discuss development and future directions for Stan.
While most of the relevant discussions do happen at the forums, the style of the discussion is IMHO far from ideal. There seems to be quite a bit of history between the more vocal members of the community which I cannot parse but which obviously influences the present discussions. Some posts can be read as openly hostile and it seems some contributors feel like they are not treated fairly.
It also looks like that being stern in technical discussions is sometimes equated with being rigorous and being nice with being lax or lowering standards. This is IMHO unfortunate as I believe one can easily be both nice and rigorous and keep high technical standards.
Keeping track of what is being discussed also feels challenging since topics frequently meander quite a bit from the first post.
Discourse is a place to share news/accomplishments/job offers/… related to Stan. This seems to be happening to an extent. I don’t believe this is a high-priority role of the Discourse forum and so will not discuss it further.
What can be done
Small changes to etiquette for a kinder community:
I believe there are a few small changes that we could encourage across the community which are both “cheap” to do while possibly having noticeable impact.
- Let readers avoid the “stern” interpretation of posts by adding small pleasantries (“Hope that helps”, “Good luck with your modelling”, “Sorry to hear you are having trouble”, …). This is some extra effort, but this is exactly what common courtesy is: giving away extra effort signals you care.
- If a question (especially by a first-time poster) looks reasonable, like it. This is a clear signal to the asker that the question is welcome here.
- Communicate emotions. If a topic frustrates you, say it and explain why.
It doesn’t really make sense to enforce this, but maybe just agreeing that this is what we as a community want might help?
Code of conduct & Discourse Guidelines
The SGB is planning to have a discussion on adopting CoC for all Stan-related spaces. I plan to help with that. Further, some Discourse specific guidelines might need to be developed, possibly derived from the parts of current guidelines (https://discourse.mc-stan.org/faq) that are too specific to be included in a Stan-wide CoC. The guidelines might involve some of the suggestions from the previous section. Once CoC is settled I plan to draft the guidelines and post them here for further discussion.
Inspiration from other communities
I’ve heard very good recommendations about the way RLadies and The Carpentries handle their communities and plan to investigate what we can learn. If anyone has other positive examples or links to comprehensive resources I could use, it would be welcome.
Making sure people get support
I generally think we should reply something to basically all questions, but I am not sure about the response time we should “guarantee”. I feel that too short “guaranteed response time” might be problematic as we lose the opportunity to signal that a question is not really well written or has other issues (and hence takes longer to receive support). This might be important if we start to get more bad-faith askers (most notably the “do my homework, please” kind, which we fortunately almost never get). Longer period also gives more opportunity for people that are not usually active to spot a question they can answer, increasing their engagement in the community. Several workdays “guaranteed response time” might be a reasonable goal.
- I am monitoring single user topics and try to provide support where I can or @ someone who can answer.
- Set up a list of people and their expertises to @ in topics that don’t get replies quickly. This list probably should be public, so that all active users can use it to help others get support, but I would not go as far as advertising it directly on the forums.
- Invest in connections with active participants, especially those outside the Stan dev team - both informally (direct communication) and formally (e.g. a special badge on forums, reduced/no fees for attending StanCon, …). Make sure they feel part of the community and support beginner answerers.
- Be generous with likes to answers.
A special category for questions of novice users. The goal is threefold:
- Lower barrier for entry for people having problems with Stan, who are intimidated by the high technical level of the general discussion
- People not interested in helping beginners can mute the category
- People who don’t consider themselves proficient but want to help can focus on those questions
Not sure how this should interact with the interfaces subcategories (especially “brms”), which get a notable share of novice questions these days.
Nicer discussions among developers
This seems very hard to influence from my position. Maybe I can at least sometimes express when a discussions seems to have become too aggressive.