在设计像SO这样的在线社区代表系统时要考虑什么?

时间:2010-05-28 13:48:51

标签: language-agnostic

我正在设计一个网站,并希望建立一个像StackOverflow内置的良好信誉系统。

当我开始设计我的声誉系统时,我意识到SO Q / A模型并不适合我的应用程序(因为我的不是Q / A),也许我应该先做一些研究。

所以我的问题是;在设计社区代表系统时我应该考虑什么?

3 个答案:

答案 0 :(得分:5)

首先需要确定你的系统是否应该更加民主(ala SO - one voce one vote)或更专家驱动(一些猪......错误的选民比其他人更平等)。

后者的一个例子是根据以下两种方式给选民更多的权重:

  • 他们的声誉,或

  • 他们的“准确性” - 例如他们与其他选民的投票方式类似。这个是非常棘手的,并且可能要求在有人投票之前不要显示完整的投票结果。

确定哪些功能对您最重要。防止滥用?避免某些类型的偏见?

区分事物的重要功能是:

  • “盲目投票”投票(在投票或陈述“我不会投票”之前,你不会看到帖子的排名。)这避免了与牧群投票的压力。

  • 匿名投票。在投票或拒绝投票之前,您无法看到该项目的作者。由于缺乏一个更好的术语(或者对Joe的Turtle问题赞成无数次),预防了“Jon Skeet”的偏见。

  • 匿名与唱名表决投票。显而易见的是前者 - 它可以防止报复。 OTOH,唱名(例如,确定谁投票)促进更负责任的投票,并在一定程度上限制某些滥用。

  • 投票限制(每位选民投票数,每位投票人数,每位选民投票数等等)

  • 收回/更改投票的能力

  • 能够对属性进行投票而不是整体投票(考虑技术得分与花样滑冰或体操的艺术得分)

  • 能够根据用户的决定或上下文提供可配置的投票金额。

    作为后者的一个例子,最近在StackOverflow上为CW的A / + 0考虑+ / Q / + 10。

  • 排名的粒度。例如。 SO的确切点系统与“/。” 1-5 Karma与其他东西相比。

  • 投票分享。例如。如果你编辑帖子足够重要,它会产生额外的代表,你就永远不会得到代表。并且你不能与那些通过评论为答案提供好主意的人分享获得的回答。

答案 1 :(得分:4)

雅虎设计模式的Reputation Patterns类别中有很多想法,概述:

  • 竞争频谱
  • 收藏成就
  • 识别标签
  • 命名级别
  • 编号级别
  • 积分

答案 2 :(得分:1)

以下是我的想法:

  • 阈值和分值,您不希望每个人都在3天内成为管理员
  • 定义你的门槛,meaining,在你得到A的x分之后,在得到B之后的y分等等。
  • 如何处理垃圾邮件,垃圾邮件和其他垃圾进入系统(负面代表,帐户暂停等)
  • 如何获得积分?丢点?
  • 我也会考虑徽章/成绩。人们喜欢成就感,并做一些事情,比如发帖询问人们不要观看,这样他们就可以在这里获得“Tumbleweed”徽章。