Selectricity: Difference between revisions

From WikiDotMako
No edit summary
 
(23 intermediate revisions by 8 users not shown)
Line 1: Line 1:
Mako is working on:
== What is Selectricity? ==


* Embeddable elections for mtvU
:''What is this Selectricity? What might communities use it for?''
* Selectricity


Justin is currently working on:
Selectricity is "voting machinery for the masses." It consists of a suite of tools to allow groups of people to make decisions using cutting edge voting technologies.  While most voting technology projects are geared to government based decision-making, ''Selectricity'' aims to apply decades of voting research created for governments toward every day decisions. The system emphasizes preferential decision-making, cryptographic means of voter verifiability, and algorithmically complex election methods.


* Fix ordering on tables
Small group decisions are pervasive and persistent. Often, the simplest methods lead to less than ideal outcomes. Imagine the following scenario:
  Right now, the views are filled with complicated loops and array references. If possible, create backend methods that order the arrays before hand, specifically by degree or victory in each case (not just that of the winner) and then present those to the views.
* Images for the embeddable widgets
  Need to make the images for embeddable widgets into seperate objects so they can be generated depending on how many candidates there are.
* Support for custom styled widgets
  There are several ways to make this possible. One way is allowing people creating elections to upload their own background images, with specified constraints for pixel size. Another is to give merely choices of color schemes pre made.
* Creating your own Selectricity skins
* Improved visualization over time
  This problem may be at the conceptual level as well. What is it that people need to know about elections occurring over time?


Alyssa is thinking about:
:A group of friends needs to select a restaurant for a meeting. The group has strong, divergent feelings: half the group loves Chinese food but hates Mexican; half loves Mexican food but hates Chinese; everyone thinks Italian would be a good option. A simple voting will never select the Italian restaurant because it has the least votes.  Forgoing a voting system altogether will usually result in a decision by the loudest in the group or the first person to speak up.


* Animated graphs
Using preferential election methods, Selectricity groups in these types of situations makes better decisions quickly and easily by selecting the most preferred method or the choice that maximizes preference within the group Of course, Selectricity is not limited to mundane decisions like the one in the example --- it has already been used both to schedule meeting times, poll friends on the name of a child, and elect non-profit boards of directors.
* Outputting data directly for use in Many Eyes and Swivel.


Other things that need to happen:
The current "live" Selectricity currently includes the following different major modules:


* Improved testing functionality
* [http://selectricity.org/quickvote/create Selectricity QuickVotes]: Simple, quick web-based elections. A QuickVote can be created in under 1 minute by a user with no experience with Selectricity. Voters usually vote in under 30 seconds.
* Work on the SMS gateway
* [http://rubyvote.rubyforge.org/ RubyVote]: A library that incorporates the algorithmically complex parts of election method. This makes it possible for software developers with their own applications to simple add advanced voting machinery and better election technology into their application.
* [http://selectricity.org/about/anywhere Selectricity Anywhere]: A simple SMS/mobile phone-based interface to Selectricity that allows users to create, vote, and view results entirely from a normal "non-smart" mobile phone.
 
== Current status ==
 
:''Is it ready for communities to use? At what stage of development is it?''
 
Selectricity is under active development and new features are added each month. That said, currently released features have already seen thousands of users of a variety of types and are well tested. We understand that we're  building election software and, as a result, we're very conservative about releasing new features. Everything on the "live" site is tested in a large number of real world environments over weeks or months.
 
Code is available, under a free software and open source license, in our [http://projects.mako.cc/source/selectricity/README source code repository].
 
Currently released features on [[http://selectricity.org selectricity.org] are listed in the previous section.
 
Features that are completed and that are currently under testing include:
 
* ''Selectricity Full Elections'': A more sophisticated and feature-rich interface to to the voting machinery more suitable to more organized Election.  These election can have voter rolls, anonymous and voter verifiable ballots, and more detailed feedback.
* ''Selectricity Embeddable Elections'': A version of Selectricity that allows users to simply embed elections onto their own websites or blogs and avoids having to send users to the Selectricity website. Additionally, Embeddable elections allow users to upload custom themes so that the look and feel of an embedded election more closely matches a website administrators' look and feel.
 
Up-to-date information on the precise state of current Selectricity development can be found on at [[Selectricity/Status]].
 
:''Has it been tested in a community?  Where, exactly, and what was learned?''
 
QuickVotes have been used by thousands of individuals and groups for a vast variety of different decisions. For example, many users have used the system to select meeting times.
 
Full elections, currently unreleased but being tested, have been used by several communities including the non-profit's Students for Free Culture and Sugar Labs to elect their boards of directors. We are currently in conversations with several universities about running student government elections.
 
== Get and adapt Selectricity ==
 
:''How can people get started adapting this tool to their own communities?''
 
Information on downloading, modifying, and adapting Selectricity is available  here:
 
:http://projects.mako.cc/source/selectricity/README
 
Many users have already contributed patches and functionality. For example, several new election methods (i.e., different ways of counting votes) have been contributed to RubyVote by volunteers and users who loved Selectricity but had a "pet" method that was, at the time, unsupported.
 
== More information ==
 
Additional information is on the [http://blog.selectricity.org Selectricity Blog]. Additionally, users can email [mailto:team@selectricity.org team@selectricity.org] with bug reports, feedback, patches, or any questions.
 
== Other Pages ==
 
* [[Selectricity/Todo|TODO list for the next Selectricity release]]
* [[Selectricity/Status|Current development status]]
 
[[Category:Selectricity]]

Latest revision as of 02:13, 24 March 2009

What is Selectricity?[edit]

What is this Selectricity? What might communities use it for?

Selectricity is "voting machinery for the masses." It consists of a suite of tools to allow groups of people to make decisions using cutting edge voting technologies. While most voting technology projects are geared to government based decision-making, Selectricity aims to apply decades of voting research created for governments toward every day decisions. The system emphasizes preferential decision-making, cryptographic means of voter verifiability, and algorithmically complex election methods.

Small group decisions are pervasive and persistent. Often, the simplest methods lead to less than ideal outcomes. Imagine the following scenario:

A group of friends needs to select a restaurant for a meeting. The group has strong, divergent feelings: half the group loves Chinese food but hates Mexican; half loves Mexican food but hates Chinese; everyone thinks Italian would be a good option. A simple voting will never select the Italian restaurant because it has the least votes. Forgoing a voting system altogether will usually result in a decision by the loudest in the group or the first person to speak up.

Using preferential election methods, Selectricity groups in these types of situations makes better decisions quickly and easily by selecting the most preferred method or the choice that maximizes preference within the group Of course, Selectricity is not limited to mundane decisions like the one in the example --- it has already been used both to schedule meeting times, poll friends on the name of a child, and elect non-profit boards of directors.

The current "live" Selectricity currently includes the following different major modules:

  • Selectricity QuickVotes: Simple, quick web-based elections. A QuickVote can be created in under 1 minute by a user with no experience with Selectricity. Voters usually vote in under 30 seconds.
  • RubyVote: A library that incorporates the algorithmically complex parts of election method. This makes it possible for software developers with their own applications to simple add advanced voting machinery and better election technology into their application.
  • Selectricity Anywhere: A simple SMS/mobile phone-based interface to Selectricity that allows users to create, vote, and view results entirely from a normal "non-smart" mobile phone.

Current status[edit]

Is it ready for communities to use? At what stage of development is it?

Selectricity is under active development and new features are added each month. That said, currently released features have already seen thousands of users of a variety of types and are well tested. We understand that we're building election software and, as a result, we're very conservative about releasing new features. Everything on the "live" site is tested in a large number of real world environments over weeks or months.

Code is available, under a free software and open source license, in our source code repository.

Currently released features on [selectricity.org are listed in the previous section.

Features that are completed and that are currently under testing include:

  • Selectricity Full Elections: A more sophisticated and feature-rich interface to to the voting machinery more suitable to more organized Election. These election can have voter rolls, anonymous and voter verifiable ballots, and more detailed feedback.
  • Selectricity Embeddable Elections: A version of Selectricity that allows users to simply embed elections onto their own websites or blogs and avoids having to send users to the Selectricity website. Additionally, Embeddable elections allow users to upload custom themes so that the look and feel of an embedded election more closely matches a website administrators' look and feel.

Up-to-date information on the precise state of current Selectricity development can be found on at Selectricity/Status.

Has it been tested in a community? Where, exactly, and what was learned?

QuickVotes have been used by thousands of individuals and groups for a vast variety of different decisions. For example, many users have used the system to select meeting times.

Full elections, currently unreleased but being tested, have been used by several communities including the non-profit's Students for Free Culture and Sugar Labs to elect their boards of directors. We are currently in conversations with several universities about running student government elections.

Get and adapt Selectricity[edit]

How can people get started adapting this tool to their own communities?

Information on downloading, modifying, and adapting Selectricity is available here:

http://projects.mako.cc/source/selectricity/README

Many users have already contributed patches and functionality. For example, several new election methods (i.e., different ways of counting votes) have been contributed to RubyVote by volunteers and users who loved Selectricity but had a "pet" method that was, at the time, unsupported.

More information[edit]

Additional information is on the Selectricity Blog. Additionally, users can email team@selectricity.org with bug reports, feedback, patches, or any questions.

Other Pages[edit]