I am using Discourse for a moderately-sized political discussion board.
The software is very good, and meets all of my needs except one: there is no up/down vote-based reputation system.
What I would like to see is a very simple system, where up/down votes are 1-to-1. The poster starts out with zero rep, and each vote by the community adds or subtracts a single point (better would possibly be that a poster with more rep points’ vote would be worth more than a poster with low rep points, but that wouldn’t be necessary). The reputation level would then be visible (somewhere) on each post. It would b very similar to the system Reddit uses.
Beyond this - and I know some people won’t like this idea - I would, if I could, implement a feature where if a person receives a certain amount of down-votes within a certain time period, they are automatically suspended for a temporary period. This would serve to fully democratize the moderation process, which is the goal of my proposed feature.
I have read all of the existing threads on this board discussing the concept of up/down voting and reputation points, and understand the position of the developers. Because this discussion has been largely philosophical in nature, rather than practical, I will address the philosophical along with the practical elements which create a situation where disapproving judgements by the community are needed to discourage negative forum behavior.
In the previous threads, the development team has presented an argument very similar to the arguments for purely positive-reinforcement-based parenting. This is an interesting topic which I’ve read quite a bit about. Though I find the concept somewhat utopian, many experts genuinely believe in it.
However, while this method may or may not work with children at home, what has been proven is that in a school or daycare setting, negative-reinforcement is necessary in order to maintain order. Even universities, obviously, have systems of negative-reinforcement to deal with anti-social or otherwise problematic/disruptive behavior. And what I deal with on my forum is a similar situation to that of a school, where personalities are prone to conflicting with one another and a system is needed to dissuade people from engaging in problematic behavior.
I understand that on support forums, such as this one or the Ubuntu board, there isn’t a need for negative reinforcement, as the communities have very specific purposes, and personalities and emotions don’t really enter into the scheme of interpersonal interaction. A positive-only reputation system, based on the existing badge system, works perfect in this environment, as the quality of a poster is based on their knowledge of the subject matter, rather than something more personal/nuanced.
However, on a large board where many emotional (and even personal) issues are discussed, I have found that chaos ensues if there is not a mechanism of negative reinforcement to discourage negative forum behavior.
Presently, the only means I have of using negative-reinforcement are manual and unilateral: I can temporarily suspend accounts or ban people outright. This strikes me as primitive, and often gratuitous, as well as non-democratic/authoritarian.
Within the context of political discussion, there is significantly more room for negative posting because you are dealing with the subjective, rather than the objective (the latter being what you are dealing with on a support forum, obviously). The emotional nature of subjective discussions leads to all different types of negative behavior, including insults/name-calling, the purposeful (or not) spreading of wrong information and stating positions on subjects that one knows nothing about.
A reputation system would serve two main purposes:
- To let the poster him/herself know that people do not like their posts, which will in some (hopefully most) cases cause them to reflect on what they are posting. Without this feedback, they may post indefinitely without being aware of the fact that people dislike their posts. Positive reinforcement can't work here, because the poster who doesn't receive many likes (or a badge for all the likes they've received) will likely be unaware they haven't received this positive feedback.
- To let other posters know that the poster in question is considered by the community to be a low-quality poster, which will make them much less likely to engage in debate/discussion with someone who the community considers to not be worth the time/effort. This is certainly more of an issue the larger the board becomes, as a poster is less likely to be familiar with all of the other posters on the board.
The importance of this to a large community where emotional discussion takes place cannot be overstated.
Beyond this, the current system of no reputation makes certain that everyone in a discussion is on the same footing at all times. I can see how in a Marxist/egalitarian sense that could be considered positive, however, on a forum where emotionally-triggering issues are discussed, people will often create an account solely for the purpose of arguing with others. Presently, there is very little ability to distinguish between quality posters who are integrated members of the community and people who have showed up simply to be contrarian.
Again, the option of using banning as a means to deal with posters who disagree with others is very primitive. It also results, in my experience, in a slippery slope, where anyone can potentially be banned for anything, as there is no way to scientifically define “flaming” or “trolling.” When people see others being banned for contrarian posting, they then fear making any statement disagreeing with another poster, and many will ultimately abandon the community due to a feeling of being arbitrarily restricted.
As a totally separate point (which is not especially important to me, but is worth mentioning), a reputation system encourages posters to work hard to provide good content. With the present system of badges, that incentive is much less prominent.
I am not myself a coder, but I would think that the system I am arguing for would be relatively simple to implement. A poster’s total “likes” are already calculated, so I would imagine you could just convert that system to an up/down system, where likes could be removed, then insert that number underneath posters’ usernames.
Finally, to wrap-up my pitch here, I will say that there is an ongoing battle between Discourse and Nodebb. Overall, it appears that Discourse is much better software. The problem I see people having, and the biggest danger to Discourse in this most important time of competition, is the lack of customizations leading to a less satisfying user experience. The up/down vote and rep system goes a long way toward enhancing the user experience.
More importantly, of course, is the ability to mitigate conflict on larger boards dealing with non-objective subject matter.
Looking at the directory, I see that the main use of this software presently is for support forums and closely-knit niche discussion boards, where conflict between users is generally virtually non-existent and thus there is little need for the democratization of quality control.
Adding the option of up/down votes would open up a whole new range of usability to Discourse, both on the level of the user experience and on the practical level of managing the community in a democratic fashion.
Clearly, due to the philosophical leanings of the development team, the positive-reinforcement only model should remain the default. However, options are always a good thing, and I am certain that I am not the only board admin who understands that the natural climate of my community requires negative-reinforcement in order to mitigate conflict between users and create an environment where quality posting is encouraged.
I’m very interested to get other people’s thoughts on this.