Click here to Skip to main content
13,794,050 members
Click here to Skip to main content
Add your own
alternative version

Tagged as


42 bookmarked
Posted 16 Mar 2010
Licenced CPOL

Code Project Rating and Reputation FAQ

, 30 Jan 2015
Rate this:
Please Sign up or sign in to vote.
This is an FAQ for the ratings and reputation sytems on Code Project. It can be modified by any Silver member.

Table of Contents

Code Project Mechanics

  1. How does voting on articles this work?

    The voting system for articles is meant to guide readers to the best articles and advise authors on where they need improvement.

    Votes are tied to messages. If a voter votes low and leaves a spurious comment (eg. 'asdf') then other members can report that comment as inappropriate and the comment and the vote will be removed.

  2. How are ratings calculated?

    Articles, messages and many other items on The Code Project have associated with them a Vote Total (Vt), a Weight Total (Wt), and a number of votes (N). When a member votes, the system adds the weight of their vote (dependent on membership level) to Wt, and the rating itself multiplied by their weight to Vt. The rating of an item is then (R = Vt / Wt).

    If everyone has a weight of 1 then (W_t = N), and (R = Vt / N). Having differing weights, though, means that when a gold member (weight = 4) and bronze member (weight = 1) vote, the vote is weighted towards the gold:

    Assume Gold votes 5 and Bronze votes 1:

    $\begin{aligned} W_t & = 4 + 1 = 5 \\ V_t & = 4 \times 5 + 1 \times 1 = 21 \\ R & = 4.2 \end{aligned} $

    For a ridiculously indepth analysis please read Is CodeProject's Voting system really smart?

  3. What happens when some user votes 1?

    If someone votes you down in an article and leaves a voting comment, then you can mark that comment for removal and if enough people vote for the voting comment to be removed, the comment and the down-vote are removed.

  4. Why do I sometimes see a message in the ratings histogram saying some votes were removed?

    If an awesome article gets 50 "5" votes and then a single "1" vote our thinking is "something's wrong". Not all members play nice so we filter out spurious or malicious votes that are further than a certain deviations from the weighted raw score. The final score displayed is the weighted score using only unfiltered votes.

    The actual acceptable deviation from the mean that is used to filter votes is calculated as 1.75 x the standard deviation, and then increased to ensure that voting values on either side of the mean can still be voted.

    A second round analysis then kicks in which looks at the votes in each column to see if a rating value should be re-included. Suppose an article has 50 votes of 5 and 10 votes of 1. Clearly something's going on. The system will look at the types of votes in each column and re-include each column that has at least 5 votes from a silver (or greater) member.

    Filtering only kicks in once there are 10 votes to an article, and due to historical reasons not all ratings can be treated accurately due to our systems only having full rating data since 2003.  

    Note that filtering of votes only affects the score. All reputation points awarded (and lost!) through votes still apply, regardless of whether a vote is filtered from the score or not. Also remember that each time you vote the mean and deviation are recalculated and will change. A set of false 1 votes on an article that deserves a 5 will initially have the first few (correcting) 5 votes filtered out, but soon enough when sufficient 5 votes are posted, or members with high enough reputation post a 5 vote, the mean will be corrected and the initial spurious 1 votes will be filtered out in turn.

    The calculated mean and accepted deviation are displayed in the rating histogram as μ and σa.

Code Project Reputation

Reputation is something you gain - or lose - as you contribute to our communal knowledge base. Posting an article increases your reputation, but posting a bad article that other members down- vote decreases your reputation. If your goal is to increase your reputation then write good articles, vote for other good articles, hope that others in turn vote for your articles, and help out by organising and cleaning up the questions and answers. Vote them up, answer questions, or edit questions and answers that need a little help.

While this system is now mostly finalised, we welcome feedback and may tweak the points from time to time. For a uses live data report on the Reputation scales, go here: Member Reputation System

It's controlled by the weights assigned. If member who has higher level votes for, say, an article then more points are awarded to the article author rather than if lower level member voted for the same article.

  1. What is it?
  2. How many points are given or lost for particular actions?
  3. How does a member's level affect how many points are awarded for a reputation event?


This article, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)


About the Author

Software Developer The Code Project
United States United States
No Biography provided
Group type: Organisation

5 members

You may also be interested in...


Comments and Discussions

QuestionSome bored people are downvoting solutions without reason. Pin
El_Codero15-Mar-12 4:15
memberEl_Codero15-Mar-12 4:15 
AnswerRe: Some negative people are downvoting solutions without reason. Pin
Chris Maunder15-Mar-12 6:15
adminChris Maunder15-Mar-12 6:15 

General General    News News    Suggestion Suggestion    Question Question    Bug Bug    Answer Answer    Joke Joke    Praise Praise    Rant Rant    Admin Admin   

Use Ctrl+Left/Right to switch messages, Ctrl+Up/Down to switch threads, Ctrl+Shift+Left/Right to switch pages.

Permalink | Advertise | Privacy | Cookies | Terms of Use | Mobile
Web05 | 2.8.181207.3 | Last Updated 30 Jan 2015
Article Copyright 2010 by CodeProject
Everything else Copyright © CodeProject, 1999-2018
Layout: fixed | fluid