views:

154

answers:

2

I'm building a website where users may register and create shopping guides. I want to award them points for creating shopping guides, adding stores and adding brands.

It will also be possible for other users to rate the shopping guide. I'm considering to award the owner of the shopping guide more points, if the guide is rated high.

But it should also be possible to give thumbs down for bad shopping guides, or adding bogus / bad stores / brands.

In a way, it's kind of similar to StackOverflow's rating system and maybe also ebays.

I could simply just add / deduct 1 point for each vote. But I don't think that is a very good way of doing it.

So I'm unsure on how I should implement the rating logic.

Any guidance appreciated.

(PS. I'm developing in PHP / MySQL)

+2  A: 

There's no right or wrong answer here, so I'd advise having a think about: a) what behaviour you'd like to encourage, and b) what users might be reticient to do. Think of the voting as a way of rewarding good behaviour, discouraging bad behaviour, and as a carrot to the harder things.

Figure out what takes longest and what people won't often do and weight your point system accordingly.

GaryF
Yes, I want this system to encourage good behavior and make surethat I get qualitative data. And maybe even give those who achieve certain scores gits.
Steven
I was just thinking that there might be a good algorithm for point awarding :op
Steven
+4  A: 

I think that this article is very useful with respect to your question:

How not to sort by average rating

It shows several popular flawed approaches, and advocates using the "Lower bound of Wilson score confidence interval for a Bernoulli parameter". This sounds scary, but you really only have to implement a little formula. The formula and an example implementation are given.

Svante
Now we're talking :)I found this: http://www.derivante.com/2009/09/01/php-content-rating-confidence/. Very usefull.
Steven