Beatniak,
Thank you, for your comprehensive response to my post. Based on that response, it becomes clear that the problem is not karma, but is the formula that is being used to count the contribution of the anonymous users vote. If properly calculated, karma is a very good feature and a great marketing tool. Maybe, I could influence you to help with the following revision to the star voting calculation.
Pligg Community,
Essentially, the five star vote is a review, appraisal or valuation (I have a company that performs these services). The use of karma in the calculation, of the five star voting method, is to create a weighted average (
Weighted mean - Wikipedia, the free encyclopedia). This MUST be accomplished by giving different weights for the user vote, NOT by changing their vote (the current way the star rating is calculated with karma active).
Some of the principals desired by the Pligg community are:
1. The anonymous user vote is less reliable, and should be assigned less weight, than a logged in registered user.
2. Anonymous votes can artificially skew the vote total. Especially, when given equal weight or using the current karma method.
3. The logged in register user, should have more clout than an anonymous user, and must be given greater weight.
4. There should be a reward for being a registered user. That reward being a greater affect on a story success or failure.
The formula used is not correct. Quote:
Anonymous has lowest karma of all. So when anonymous (let's say karma =2) votes 4 stars (link_rating = 8):
star_rating = (8/2) * (2/10) = 4 * 0.2 = 0.8
|
This example clearly demonstrates how an anonymous vote can significantly and adversely affect the vote total. If the intention is to give the anonymous voter 20% of the weight of the register user with karma=10, this formula fails miserably.
Simple average is not equitable. Quote:
So why the 3 stars after an anonymous vote?
5 stars from the 1st vote + 1 star from anon vote = 6 stars / 2 votes = 3 stars
|
This simple averaging of the votes, still provides too much power to the anonymous voter. And, there is no incentive to be a register user. This formula is correct, but I am sure that it is not the way a knowledgeable developer would want the star votes to work when they allow anonymous users to vote.
How to FIX the weighted average voting and use karma.
Here is a quick way to accomplish this:
Quote:
First you have to know this:
1 star = link_rating 2
5 stars = link_rating 10
|
Delete this calculation function. It is not needed to perform a weighted average. I can see the attempt is to work from a percentage. However, this is not the way to create a weight average.
To demonstrate; lets use the following data of users, votes and karma:
Anonymous 1 = 1 stars, karma = 2
Anonymous 2 = 4 stars, karma = 2
Anonymous 3 = 4 stars, karma = 2
Anonymous 4 = 1 stars, karma = 2
Beatniak = 5 stars, karma = 10
Not2Serious = 4 stars, karma = 8.75
The karma for the anonymous user has been coded as 2 and is consistent for all anonymous users on the site. In this case the karma for the registered users is tracked and maintained by the site. The karma acts as the weighting factor base on the user’s activity.
The higher the karma, the greater the influence, of the vote average. Let’s see how the calculation should be made. User Stars * karma = weighted vote
Anonymous 1 = 1 * 2 = 2
Anonymous 2 = 4 * 2 = 8
Anonymous 3 = 4 * 2 = 8
Anonymous 4 = 1 * 2 = 2
Beatniak = 5 * 10 = 50
Not2Serious = 4 * 8.75 = 35
Sum
26.75 113 Weighted average calculation: weighted vote / karma (SUM) = weighted average
113 / 26.75 = 4.22 stars
Advantages of using a Weighted Average with karma.
1. The karma will function properly with the star ratings.
2. The votes are given fair weight which is based on the user participations (the intended use of karma).
3. The weight on the anonymous user vote could be adjusted by the admin.
4. The weighted average method does not penalize the post by the activities of the malicious anonymous user.
5. At the same time, it does increase the vote count by the anonymous user voted and encourages site activity.
OK, I want to use the weighted average method.
Nothing would please me more that to offer the Pligg Community the code to accomplish this proposed calculation revision. However, I have a big problem, I am not a coder. I have been studying various sources of material appropriate to learning more to accomplish the task. It will be some time before I am ready to attempt this task. But, I know there is some great talent on this forum, so maybe someone here would be willing to get this calculation method into proper operation. I would be more than willing to help with formulas and test. It would be great not to have to comment out the karma calculation (besides, I don’t know where to find it in the code).
Karma, is good, lets use it.
If someone would explain (like the way beatniak did the vote calculations) the karma calculations, I would be happy to see if a revision in the weighting method may be appropriate.