We are currently working on the idea of a voting system for Issuepedia. This would be an essential piece of infrastructure for electronically mediated self-governance, which is part of Issuepedia's larger mission.
Tentative Working Description
- Users put tags on their pages to indicate how they vote on issues. Users can optionally put additional explanatory text after the tag, with some kind of closing tag to show where the text-related-to-this-vote ends.
- The extension parses the users' tags and shows (a) at the tag: a link to the issue in question, along with a clear indication of how the user voted (possibly something attractive/colorful... similar to the tags used by many Wikipedians to indicate their support of or interest in various topics); and (b) on the issue page: a count of votes, with an option to also see all the explanations.
- User can change their vote at any time; changes will be shown in the page history for the user's page, but attention need not otherwise be drawn to such changes.
These features would be nice (and perhaps necessary for certain types of issues) but don't have to be part of the first working version.
- It should be made easy to take a "snapshot" of the vote at any particular time; e.g. if a decision has to be made at a certain point, we will want a record of what the final vote was (and possibly a complete record of all votes comprising the total). Preferably this could even be automated, so that I could set up a vote to be recorded at exactly 2:00 in the morning, then go to bed and know that it would be done.
- Recording of votes by user attribute, e.g. location (if the vote has to do with a local issue -- votes from voters actually in the affected area should probably carry more weight than those from outside and be recorded separately, although it could be informative to allow/record votes and comments from outside as well)
Advantages of this design over most other designs:
- Prevents duplicate votes
- Encourages registration
- Makes it easy to see any one person's voting record
- Invites discussion rather than popularity-contestism
- Allows opinion to be dynamic as much as possible
Disadvantages over most other designs:
- Prevents voting by "guest" (anonymous) users, reducing overall vote count (but this may be a blessing in disguise, as anonymous voters have less incentive to invest effort in working out rational solutions) (perhaps an anonymous vote count could be kept separately; anonymous users do get "user" pages based on IP address...)
- Does not support secret ballots (I'm skeptical of the value of secret ballots in this sort of context anyway, but the issue should probably be raised and discussed...)
We will almost certainly abandon the single choice binary voting system used in most official elections (especially in the United States), which appears to be at the heart of the highly non-competitive "two-party system" – in which a vote for the candidate you really want is generally "wasted" – in favor of a system which more accurately captures the actual preferences of the voters.
By far the best system appears, at present, to be range voting, which is essentially rating every choice on a -10 to +10 scale and then adding all the ratings together for each choice. You "vote for" or against as many options as you like, and you can add your weight in support of (or against!) alternative choices to whatever degree you wish. So if you really like Candidate X, would accept Candidate Y, and hate Candidate Z, you could vote +10 for X, +5 for Y, and -10 for Z. If X doesn't receive enough votes to win, you've still given Y a 15 point boost over Z.
There are, however, several other systems to examine; it may be that we would want to have more than one possible system available for different circumstances.