CZ:Elections/How to: Difference between revisions

From Citizendium
Jump to navigation Jump to search
imported>Dan Nessett
m (Text replacement - "CZ:Constabulary" to "CZ:Moderator Group")
 
(36 intermediate revisions by 3 users not shown)
Line 1: Line 1:
{{TOC|right}}
Running a CZ election is fairly easy. These instructions document the steps necessary to accomplish this.
Running a CZ election is fairly easy. These instructions document the steps necessary to accomplish this.
 
{{CZElections}}
==Some basic information==
==Some basic information==
===Basic workflow===
The [[CZ:Election Committee|Election Committee]], appointed by the [[CZ:Council|Citizendium Council]], is responsible for running a CZ election. Its work is roughly divided into the following steps:
 
The election committee, appointed by the Management Council, is responsible for running a CZ election. Its work is roughly divided into the following steps:


# Create the email account that will be used to receive the election ballots.
# Create the email account that will be used to receive the election ballots.
# Create the election "user" on the wiki.
# Create the election "user" on the wiki.
# Create and place the nominations and referenda proposal wiki pages.
# Create and place the election wiki pages.
# Have a sysop change the Sitenotice to indicate nominations and referenda proposals are open.
# Have an [[CZ:Administrator|administrator]] change the [[MediaWiki:Sitenotice|Sitenotice]] to indicate nominations and referenda proposals are open.
# Once nominations close, place the election information on the election user's wiki page and have a sysop change the Sitenotice to indicate the election is in progress.
# Once nominations close, place the election information on the election user's wiki page and have a sysop change the Sitenotice to indicate the election is in progress.
# Once voting completes, count the ballots and update the Election wiki page.
# Once voting completes, count the ballots and ask an administrator to change the Sitenotice so it no longer indicates an ongoing election.
# Provide the election results to the Management Council for audit.
# Provide the election results to the Citizendium Council for audit.
# When the audit completes, update the election user's wiki page with the results.


===Keeping things organized and secure===
===Keeping things organized and secure===


Certain lessons have been learned from previous elections. This has led to some conventions that simplify organizing the election information, so it is easily navigated. In particular, there are two page names under which all election information exists.
Certain lessons have been learned from previous elections. This has led to some conventions that simplify organizing the election information, so it is easily navigated. All election information is held on a single set of pages.


The first is the election information page name. This exists in the CZ namespace and comprises the word "Election" followed by the election date. For example, for the election of June 2012, this page would be named [[CZ:Election June 2012 | CZ:Election June 2012]]. All information about the election exists on subpages of this page.
The main page for a particular election is actually a user page for a user account on this wiki, just as all project members have an account and associated user pages. This '''election-user account''' is created, administered and shared by the Election Committee rather than a single individual. All information about how to nominate candidates and propose referenda exists on subpages of this election-user account page. For example, for the election of June 2014, this page would be named [[User:ElectionJune2014]].


The second is the election user page name. This has the same form as the election information page name, but it exists in the User namespace. For example, for the election of June 2012, this page would be named [[User:Election June 2012 | User:Election June 2012]]. This page must be created by registering the user "Election June 2012" through the normal registration process. That is required because ballots will be emailed by voters to this user's email address using the normal "Email this user" feature of the wiki.
The reason a user account is deployed is that votes are cast by using the 'Email this user' feature, to ensure a secret ballot. Any information sent via e-mail is private and sent straight to the e-mail address associated with the election-user account. This '''e-mail account is created specifically for the election and its address must be kept secret'''. Instructions for this are given [[#Create the email account|below]]. Only the members of the Election Committee should know this information, with the exception that '''after the election completes''' the auditor (the [[CZ:Managing Editor|Managing Editor]] or other appointee) must be given the email account name and password (or granted access to the account; see below) in order to conduct the audit.


In addition, an external email account must be created. Instructions for this are given in the section [[#Create the email account | Create the email account]].
==Create the email account==


To ensure the integrity of the election, the email account name and password as well as the election user password must be kept private. Only the members of the election committee should know this information, with the exception that '''after the election completes''' the MC auditor must be given the email account name and password in order to conduct the audit.
Ballots in the election are emailed by each Citizen to the election-user account. Since the election user is a virtual person, the Election Committee must create an email account somewhere that will receive the emailed ballots. In the past, Election Committees have created this account on [http://www.gmail.com Gmail], but any email provider will do (e.g. [http://mail.yahoo.com Yahoo]).


==Create the email account==
One advantage of Gmail is that it permits multiple users of a single mail account. The problem with simply distributing the e-mail account password to all members of the Election Committee is that they will each have to log into it to carry out the election, which will cause Gmail's system to log several very different [[IP address]]es at possibly overlapping times. This can look like an attempt to compromise the account, meaning that Gmail could block it until someone verifies their identity. To avoid this, all members of the Election Committee need their own personal Gmail addresses, and these accounts can be linked to the election account, allowing everyone to freely log in. To do this, whoever originally creates the election account needs to log into it, go to Gmail's settings (the button on the right with the cog), then the 'Accounts' tab, and scroll down to 'Grant access to your account'. Click 'Add another account' and enter the Gmail address of the first Election Committee member. Confirm and repeat for other Committee members. Later, you can do the same for the auditor. At the end of the election, these privileges can be revoked.


Ballots in the election are emailed by each citizen to the election user. Since the election user is a virtual person, the election committee must create an email account somewhere that will receive the emailed ballots. In the past, election committees have created this account on gmail, but any email provider will do (e.g., Yahoo).
===Keeping information private===
The main issue with this account is its name and password must be known only to the Election Committee (and the Citizendium Council auditor after the election closes). Keeping the email account's name secret is important, since if it is widely known, anyone could email a ballot to it and thereby corrupt the election. (It is trivial for someone to send email so it appears to come from a particular sender. Thus, an intruder could get a list of Citizendium users; filter that list so it comprises inactive members; and send email to the election email account pretending to be those users.)


The main issue with this account is its name and password must be known only to the election committee (and the Management Council auditor after the election closes). Keeping the email account's name secret is important, since if it is widely known, anyone could email a ballot to it and thereby corrupt the election. (It is trivial for someone to send email so it appears to come from a particular sender. Thus, an intruder could get a list of citizendium users; filter that list so it comprises inactive members; and send email to the election email account pretending to be those users.)
To ensure the email account name is private, it should be composed in a way that provides little opportunity for someone to guess it. Email addresses like '''CZ.Election@gmail.com''' or '''CZ.Election.June.2012@yahoo.com''' should never be used. Instead, a simple security technique known as a '''nonce''' (which is a fancy name for something used only once) provides the necessary security. A simple nonce that will work is a random number of sufficient length appended to a short prefix. For example, the account name might be '''CZ.Election.xxxxxxxx@gmail.com''', where xxxxxxxx is replaced by a random 8 digit number.


To ensure the email account name is private, it should be composed in a way that provides little opportunity for someone to guess it. Email addresses like '''CZ.Election@gmail.com''' or '''CZ.Election.June.2012@yahoo.com''' should never be used. Instead, a simple security technique known as a '''nonce''' (which is a fancy name for something used only once) provides the necessary security. A simple nonce that will work is a random number of sufficient length appended to a short prefix. For example, the account name might be '''CZ.xxxxxxxx@gmail.com''', where xxxxxxxx is replaced by a random 8 digit number.
Of course, that raises the question, how does the Election Committee get an 8 digit random number. Fortunately, there are sites that generate random numbers. For example, the site [http://www.randomizer.org/form.htm randomizer.org] will generate a number between 10,000,000 and 99,999,999 in about a second. To use the form it provides, set the fields as follows:
 
Of course, that raises the question, how does the election committee get an 8 digit random number. Fortunately, there are sites that generate random numbers. For example, the site [http://www.randomizer.org/form.htm randomizer.org] will generate a number between 10,000,000 and 99,999,999 in about a second. To use the form it provides, set the fields as follows:


How many sets of numbers do you want to generate? 1 <br>
How many sets of numbers do you want to generate? 1 <br>
Line 47: Line 46:
How do you wish to view your random numbers? Place Markers Off <br>
How do you wish to view your random numbers? Place Markers Off <br>


This should produce a number of 8 digits. Once the random 8 digit number is available, create the external email account using the name indicated above, e.g., '''CZ.xxxxxxxx@gmail.com''', where xxxxxxxx is the 8 digit random number just constructed. The name of the account and its password should be shared '''only''' with the other members of the election committee. After the election is over, the MC auditor will also require this information to complete the election audit, but the information should not be shared before the election completes.
This should produce a number of 8 digits. Once the random 8 digit number is available, create the external email account using the name indicated above, e.g., '''CZ.Election.xxxxxxxx@gmail.com''', where xxxxxxxx is the 8 digit random number just constructed. The name of the account and its password should be shared '''only''' with the other members of the Election Committee. After the election is over, the MC auditor will also require this information to complete the election audit, but the information should not be shared before the election completes.


If you haven't created an email account before, you can read these [http://www.eurofiling.info/documents/Instructions_on_how_to_create_a_free_Gmail_account.pdf instructions] explaining how to create a gmail account. If it is desirable to use Yahoo, you can read these [http://www.ehow.com/how_2032818_set-up-yahoo.html instructions] how to create a Yahoo email account.
==Create the election user==
 
Once the election email account exists, it is possible to create the election user.
 
===If you have administrator privileges===
If you are an [[CZ:Administrator|administrator]] or higher on the main wiki, the easiest way to create the election-user account is to log-in and go to [http://en.citizendium.org/wiki?title=Special:UserLogin&type=signup Create account]. In the Username box, fill in the election user name, e.g., '''ElectionJune2014'''. Enter a strong password (random letters and numbers are best), and enter the secret e-mail address you have already created for use in this election. Then hit 'Create account'. Be sure to confirm the e-mail address by going into the secret election account and clicking the link in the automatically-generated e-mail it should have received.


==Create the election user==
Finally, copy [[../ElectionUser (template)|this template]] and paste it into the user page of the new account, then hit '''Save'''. As an example, the information about the election should be at ''<nowiki>http://en.citizendium.org/wiki/User:ElectionJune2014</nowiki>''.
 
===If you don't have administrator privileges===
If you can't create accounts automatically on the main wiki, you will need to secure the services of someone who can. In order to create the election-user account, inform a [[CZ:Moderator Group|constable]] (or anyone with [[CZ:Administrator|administrator]] privileges) that you are about to do so. The Constabulary e-mail address is ''constables@citizendium.org''
 
Next, log out of Citizendium and click on the '''[[Special:RequestAccount|Register]]''' link in the left-hand column (under the heading '''Dive In!'''). Fill in an email address to which you have access, e.g. the email address associated with your personal account ('''not the election email account name''' - you will change the account's email address later. This will ensure it is not revealed to the administrator who approves the registration). Select one "main area of interest" check box (it doesn't matter which one). In the Full Name box, fill in the election user name, e.g., '''ElectionJune2014'''.


Once the election email account exists, it is possible to create the election user. In order to create the election user, inform a constable (or someone with sysop privileges) that you are about to do so. This is necessary so the request will be granted.
The final main step is to copy [[../ElectionUser (template)|this template]] and paste it into the '''Personal biography''' section. Leave everything else on the page alone.


Then log out of Citizendium and navigate to the login page. However, instead of logging in, use the: '''To obtain a user account, you must <ins>request one</ins>''' option. Fill in the election email account name. Select one "main area of interest" check box (it doesn't matter which one). In the Full Name box, fill in the election user name, e.g., '''Election June 2012'''. Provide enough text in the biography field to satisfy the requirement (i.e., 50 words). It doesn't need to make sense, you can just repeat the word "election" over and over again. Finally, click the '''Signature''' check box and then the '''request account''' button.
Finally, click the '''Signature''' check box and then the '''request account''' button. Go to the e-mail account you used and confirm the request by clicking on the link in the automatically-generated e-mail you should have received. If it's not there and hasn't been caught by your spam folder, contact the constable or other administrator for assistance.


The constable or other sysop will grant the registration request and you will get an email in the election user email account asking you to confirm the registration. Do so. This will create the election user on the wiki.
If all has gone well, the constable or other administrator will see the registration request and the provisional e-mail address, grant it, and then you will get an e-mail in the account you specified asking you to confirm the registration. Do so. This will create the election user on the wiki.


==Create and place the election's wiki pages==
Once the election user is registered, login to the election user wiki account. Select '''My preferences''', which should automatically select the '''User Profile''' tab. In the section labeled '''Email-options''', change the email address of the election user to the election email account name. Then click the '''save''' button at the bottom of the preferences panel.


The election information has a standard format for each election. Therefore, the election committee can use the following templates, modifying them for the specific election. Modification is easy. Copy the wiki markup text after clicking the '''Edit''' button on the template page. Select all of the text on the template page, then copy and paste it into a text editor. ('''DON'T modify the templates. They will be used for future elections.''') Globally replace the string "CZ:Election< date>" with the Election name, e.g., "CZ:Election June 2012". Then make the changes indicated below.
You will find that the registration process has placed a category called 'CZ Authors' on the election page. This is because the procedure you have used to create the account was really designed to sign people up to the project. Edit the user page to remove this category. You may also find, if the administrator hasn't deleted it already, a welcome message on the election account's Talk page. This should also be deleted or blanked.


===The election's nominations page===
==The election's nominations page==


First, create the nominations page. This is a subpage of the main election page '''CZ:Election< date>'''. Specifically, the nominations page is: '''CZ:Election< date>/Nominations''' (e.g., for the June 2012 election, the nominations page is '''CZ:Election June 2012/Nominations''').
First, create the nominations page. This is a subpage of the main election page '''User:Election<date>'''. Specifically, the nominations page is: '''User::Election<date>/Nominations''' (e.g.'''User:ElectionJune2014/Nominations''').


Then copy the nominations [[CZ:How_to_run_a_CZ_election/Nominations_page_template |template]] mediawiki markup to a text editor; execute the global replace described in the [[#Create and place the election's wiki pages | Create and place the election's wiki pages]] section; and make the following changes:
Then copy the '''[[../ElectionUser (template)/Nominations|nominations template]]''' mediawiki markup to a text editor; execute the global replace described in this section; and make the following changes:


* Delete all unnecessary sections. For example, if the election is only for the Management Council, the Managing Editor and some Referenda, delete the sections corresponding to the Editorial Council and the Ombudsman.
* Delete all unnecessary sections. For example, if the election is only for the Citizendium Council, the Managing Editor and some Referenda, delete the section corresponding to the Ombudsman.
* Modify the office holder user references. Specifically, the current holder of each council seat is referenced by something like [[User:<first Council member>|<first Council member>]]. Replace <first Council member> with the name of the actual council member whose term is expiring. Make the corresponding change for the Managing Editor or Ombudsman, if their seats are up for election.
* Fill in the dates for the Timetable section. These should be available in the Citizendium Council motion that established the election.
* Fill in the dates for the Timetable section. These should be available in the Management Council motion that established the election.
* Change all links as appropriate to point to the correct election pages.
* At the end of the text change <nowiki>[[election voting page|voting page]]</nowiki> to [[CZ:Election<date>/Election|voting page]]. For example, for the June 2012 election, change it to <nowiki>[[CZ:Election June 2012/Election|voting page]]</nowiki>


Finally copy all of the text from the text processor and paste it into the nominations page (i.e., edit the nominations page, get rid of all text in the edit box; paste the modified text into the edit box and hit '''Save''').
Finally copy all of the text from the text processor and paste it into the nominations page (i.e., edit the nominations page, get rid of all text in the edit box; paste the modified text into the edit box and hit '''Save''').
Line 78: Line 86:
===The election's referenda page===
===The election's referenda page===


First, create the referenda page. This is a subpage of the main election page '''CZ:Election< date>'''. Specifically, the referenda page is: '''CZ:Election< date>/Referenda''' (e.g., for the June 2012 election, the referenda page is '''CZ:Election June 2012/Referenda''').
First, create the referenda page. This is a subpage of the main election page '''User:Election<date>'''. Specifically, the referenda page is: '''User:Election<date>/Referenda''' (e.g.'''User:ElectionJune2014/Referenda''').


Then copy the referenda [[CZ:How_to_run_a_CZ_election/Referenda_page_template |template]] mediawiki markup to a text editor; execute the global replace described in the [[#Create and place the election's wiki pages | Create and place the election's wiki pages]] section; and make the following changes:
Then copy the referenda [[../ElectionUser (template)/Referenda|template]] mediawiki markup to a text editor; execute the global replace described in the [[#Create and place the election's wiki pages|Create and place the election's wiki pages]] section; and make the following changes:


* Discover how many valid ballots were cast in the previous election. Replace the string "xxx" in the '''Proposing referenda''' section with this number. Then multiply this number by 2/10. Round up to the next highest integer and replace the string "<20% of xxx>" with this integer.
* Discover how many valid ballots were cast in the previous election and enter 20% of that figure as the minimum number of supporters required, rounding up. The previous election is the number of voting participants, so even if people chose not to cast ballots in previous referenda, if they voted for even a single candidate, they must be included in the total.
* In the Citizen-initiated referenda section, change the string "<election date> to the actual date of the election, e.g., for the June 2012 election change it to "June 2012".
* Change all links as appropriate to point to the correct election pages.


Finally copy all of the text from the text processor and paste it into the referenda page (i.e., edit the referenda page, get rid of all text in the edit box; paste the modified text into the edit box and hit '''Save''').
Finally copy all of the text from the text processor and paste it into the referenda page (i.e., edit the referenda page, get rid of all text in the edit box; paste the modified text into the edit box and hit '''Save''').
Line 89: Line 97:
===Change the wiki Site notice===
===Change the wiki Site notice===


So that members are aware that they may nominate candidates for the various open seats and work on referenda proposals, have a sysop change the Site notice to indicate this. Here is some wiki text that, suitably modified, can be used for this purpose:
So that members are aware that they may nominate candidates for the various open seats and work on referenda proposals, have a [[CZ:Administrators|administrator]] change the [[MediaWiki:SiteNotice|site notice]] to indicate this. Here is some wiki text that, suitably modified, can be used for this purpose:


<pre>
<pre>
Line 99: Line 107:
|align=center|
|align=center|
The Call for Nominations for the <date> election opens on <beginning of nominations period>, and will end on <end of nominations period>.<br />   
The Call for Nominations for the <date> election opens on <beginning of nominations period>, and will end on <end of nominations period>.<br />   
To make your nominations and proposed referenda, please visit [[CZ:Election<date>]].<br />
To make your nominations and proposed referenda, please visit [[CZ:Election<date>/Nominations]].<br />
|}
|}
</pre>
</pre>
Line 105: Line 113:
To modify this wiki text appropriately, replace <date> where ever it appears by the election date, <beginning of nominations period> with the date/time of the beginning of the nominations period and <end of nominations period> with the date/time of the end of the nominations period.
To modify this wiki text appropriately, replace <date> where ever it appears by the election date, <beginning of nominations period> with the date/time of the beginning of the nominations period and <end of nominations period> with the date/time of the end of the nominations period.


==Modify the election user's wiki page to contain the election information==
==Periodically update nominees and referenda==


When nominations close, create the election page. This follows a similar procedure for creating the nominations and referenda pages, except the election page is the main page of the election user.
As nominators add names to the nomination's page, members of the Election Committee first should evaluate whether the nomination is valid (i.e., the person is a member in good standing of Citizendium and the nomination is seconded if it is a self-nomination). Check the proposed nominee's 'User contributions' page by going to their user page and clicking the link under 'Toolbox' - make sure their account is not blocked. If all is in order, an Election Committee member should create an entry in the table for the nominee. How often the Election Committee should process nomination information given by nominators is unspecified, but once a day is preferable. Also, the Committee should determine that any proposed referenda have the required number of supporters.


==Modify the election user's wiki page to contain the election information==
Go to the election user's main page. Copy the election [[CZ:How_to_run_a_CZ_election/Election_page_template |template]] mediawiki markup to a text editor; execute the global replace described in the [[#Create and place the election's wiki pages | Create and place the election's wiki pages]] section; and make the following changes:
Go to the election user's main page. Copy the election [[CZ:How_to_run_a_CZ_election/Election_page_template |template]] mediawiki markup to a text editor; execute the global replace described in the [[#Create and place the election's wiki pages | Create and place the election's wiki pages]] section; and make the following changes:


* Delete all unnecessary sections. For example, if the election is only for the Management Council, the Managing Editor and some Referenda, delete the sections corresponding to the Editorial Council and the Ombudsman.
* Delete all unnecessary sections. For example, if the election is only for the Citizendium Council, the Managing Editor and some Referenda, delete the sections corresponding to the Ombudsman.
* Modify the office holder user references. Specifically, the current holder of each council seat is referenced by something like [[User:<first Council member>|<first Council member>]]. Replace <first Council member> with the name of the actual council member whose term is expiring. Make the corresponding change for the Managing Editor or Ombudsman, if their seats are up for election.
* Modify the office holder user references. Specifically, the current holder of each council seat is referenced by something like [[User:<first Council member>|<first Council member>]]. Replace <first Council member> with the name of the actual council member whose term is expiring. Make the corresponding change for the Managing Editor or Ombudsman, if their seats are up for election.
* Fill in the dates for the Timetable section. These should be available in the Management Council motion that established the election.
* Fill in the dates for the Timetable section. These should be available in the Citizendium Council motion that established the election.
* Modify the Candidate tables so that only those who accepted their nomination show. It should be possible to simply copy the tables from the nominations page and delete those nominated who declined.
* Modify the Candidate tables so that only those who accepted their nomination show. It should be possible to simply copy the tables from the nominations page and delete those nominated who declined.
* Copy the text of each referenda that qualified for the election to the Referenda section. Segregate Citizen initiated and Council initiated referenda into the two subsections.
* Copy the text of each referenda that qualified for the election to the Referenda section. Segregate Citizen initiated and Council initiated referenda into the two subsections.
Line 120: Line 129:
Finally copy all of the text from the text processor and paste it into the election user's main page (i.e., edit the election user's main page, get rid of all text in the edit box; paste the modified text into the edit box and hit '''Save''').
Finally copy all of the text from the text processor and paste it into the election user's main page (i.e., edit the election user's main page, get rid of all text in the edit box; paste the modified text into the edit box and hit '''Save''').


To inform the membership of the election, have a sysop change the Site notice to indicate it is open. Here is some wiki text that, suitably modified, can be used for this purpose:
To inform the membership of the election, have an administrator change the Site notice to indicate it is open. Here is some wiki text that, suitably modified, can be used for this purpose:


<pre>
<pre>
Line 136: Line 145:
To modify this wiki text appropriately, replace <date> where ever it appears by the election date, <end date of election> with the date/time of the end of the election and User:Election<date> with the Election user name.
To modify this wiki text appropriately, replace <date> where ever it appears by the election date, <end date of election> with the date/time of the end of the election and User:Election<date> with the Election user name.


==Count the ballots and provide the election results to the Management Council for audit==
==Count the ballots and provide the election results to the Council for audit==
Once voting is complete, process the ballots emailed to the election external email account. Use the voting method approved for the election (contact the Citizendium Council if you are unsure which voting method to use).
 
When the Committee has completely processed the ballots, contact the Citizendium Council auditor (the Citizendium Council chair unless he/she was running for reelection, in which case contact the Citizendium Council member who is designated to perform the audit). Give the auditor the password to the election email account (this should not be shared with the auditor until the Election Committee has processed the ballots on their own) or grant access to a Gmail account (see above) and inform him/her of the election results. The auditor will then independently process the ballots and compare the results he/she obtained with those of the Election Committee. If they agree, the auditor will inform the Citizendium Council of the results. If they do not agree, the Election Committee and the auditor should work together to figure out the discrepancy.
 
Once the Citizendium Council auditor verifies the vote, the Election Committee should fill in the vote tallies for each candidate and referenda on the election page ('''[[User:Election<date>]]''') and indicate who won seats and which referenda passed.
 
Finally, ask an administrator to change the Site notice so it no longer indicates an ongoing election.


Once voting is complete, process the ballots emailed to the election external email account. Use the voting method approved for the election (contact the Management Council if you are unsure which voting method to use).
==Retain the election information for 90 days==


When the committee has completely processed the ballots, contact the Management Council auditor (the Management Council chair unless he/she was running for reelection, in which case contact the Management Council member who is designated to perform the audit). Give the auditor the password to the election email account (this should not be shared with the auditor until the election committee has processed the ballots on their own) and inform him/her of the election results. The auditor will then independently process the ballots and compare the results he/she obtained with those of the election committee. If they agree, the auditor will inform the Management Council of the results. If they do not agree, the election committee and the auditor should work together to figure out the discrepancy.
Per a Council ruling (item 11 of the [[CZ:Management_Council_Passed_Motions#2012-001.2C_18_January_2012 | MC passed motion 2012-002]]), the ballots (and consequently, the election email account) must be retained for 90 days subsequent to the election. At the end of that time, delete all e-mails and then the account itself.


Once the Management Council auditor verifies the vote, the election committee should fill in the vote tallies for each candidate and referenda on the election page ('''[[User:Election<date>]]''') and indicate who won seats and which referenda passed.
[[Category:Elections]]


Finally, ask a sysop to change the Site notice so it no longer indicates an ongoing election.
{{Organization}}

Latest revision as of 11:03, 7 March 2024

Running a CZ election is fairly easy. These instructions document the steps necessary to accomplish this.

Quick Election Links
Templates
Election-user account
Nominations page
Referenda page
Referendum proposal page

Some basic information

The Election Committee, appointed by the Citizendium Council, is responsible for running a CZ election. Its work is roughly divided into the following steps:

  1. Create the email account that will be used to receive the election ballots.
  2. Create the election "user" on the wiki.
  3. Create and place the election wiki pages.
  4. Have an administrator change the Sitenotice to indicate nominations and referenda proposals are open.
  5. Once nominations close, place the election information on the election user's wiki page and have a sysop change the Sitenotice to indicate the election is in progress.
  6. Once voting completes, count the ballots and ask an administrator to change the Sitenotice so it no longer indicates an ongoing election.
  7. Provide the election results to the Citizendium Council for audit.
  8. When the audit completes, update the election user's wiki page with the results.

Keeping things organized and secure

Certain lessons have been learned from previous elections. This has led to some conventions that simplify organizing the election information, so it is easily navigated. All election information is held on a single set of pages.

The main page for a particular election is actually a user page for a user account on this wiki, just as all project members have an account and associated user pages. This election-user account is created, administered and shared by the Election Committee rather than a single individual. All information about how to nominate candidates and propose referenda exists on subpages of this election-user account page. For example, for the election of June 2014, this page would be named User:ElectionJune2014.

The reason a user account is deployed is that votes are cast by using the 'Email this user' feature, to ensure a secret ballot. Any information sent via e-mail is private and sent straight to the e-mail address associated with the election-user account. This e-mail account is created specifically for the election and its address must be kept secret. Instructions for this are given below. Only the members of the Election Committee should know this information, with the exception that after the election completes the auditor (the Managing Editor or other appointee) must be given the email account name and password (or granted access to the account; see below) in order to conduct the audit.

Create the email account

Ballots in the election are emailed by each Citizen to the election-user account. Since the election user is a virtual person, the Election Committee must create an email account somewhere that will receive the emailed ballots. In the past, Election Committees have created this account on Gmail, but any email provider will do (e.g. Yahoo).

One advantage of Gmail is that it permits multiple users of a single mail account. The problem with simply distributing the e-mail account password to all members of the Election Committee is that they will each have to log into it to carry out the election, which will cause Gmail's system to log several very different IP addresses at possibly overlapping times. This can look like an attempt to compromise the account, meaning that Gmail could block it until someone verifies their identity. To avoid this, all members of the Election Committee need their own personal Gmail addresses, and these accounts can be linked to the election account, allowing everyone to freely log in. To do this, whoever originally creates the election account needs to log into it, go to Gmail's settings (the button on the right with the cog), then the 'Accounts' tab, and scroll down to 'Grant access to your account'. Click 'Add another account' and enter the Gmail address of the first Election Committee member. Confirm and repeat for other Committee members. Later, you can do the same for the auditor. At the end of the election, these privileges can be revoked.

Keeping information private

The main issue with this account is its name and password must be known only to the Election Committee (and the Citizendium Council auditor after the election closes). Keeping the email account's name secret is important, since if it is widely known, anyone could email a ballot to it and thereby corrupt the election. (It is trivial for someone to send email so it appears to come from a particular sender. Thus, an intruder could get a list of Citizendium users; filter that list so it comprises inactive members; and send email to the election email account pretending to be those users.)

To ensure the email account name is private, it should be composed in a way that provides little opportunity for someone to guess it. Email addresses like CZ.Election@gmail.com or CZ.Election.June.2012@yahoo.com should never be used. Instead, a simple security technique known as a nonce (which is a fancy name for something used only once) provides the necessary security. A simple nonce that will work is a random number of sufficient length appended to a short prefix. For example, the account name might be CZ.Election.xxxxxxxx@gmail.com, where xxxxxxxx is replaced by a random 8 digit number.

Of course, that raises the question, how does the Election Committee get an 8 digit random number. Fortunately, there are sites that generate random numbers. For example, the site randomizer.org will generate a number between 10,000,000 and 99,999,999 in about a second. To use the form it provides, set the fields as follows:

How many sets of numbers do you want to generate? 1
How many numbers per set? 1
Number range (e.g., 1-50):

From: 10000000 (1 followed by 7 zeros)
To: 99999999 (eight 9s)

Do you wish each number in a set to remain unique? Yes
Do you wish to sort the numbers that are generated? No
How do you wish to view your random numbers? Place Markers Off

This should produce a number of 8 digits. Once the random 8 digit number is available, create the external email account using the name indicated above, e.g., CZ.Election.xxxxxxxx@gmail.com, where xxxxxxxx is the 8 digit random number just constructed. The name of the account and its password should be shared only with the other members of the Election Committee. After the election is over, the MC auditor will also require this information to complete the election audit, but the information should not be shared before the election completes.

Create the election user

Once the election email account exists, it is possible to create the election user.

If you have administrator privileges

If you are an administrator or higher on the main wiki, the easiest way to create the election-user account is to log-in and go to Create account. In the Username box, fill in the election user name, e.g., ElectionJune2014. Enter a strong password (random letters and numbers are best), and enter the secret e-mail address you have already created for use in this election. Then hit 'Create account'. Be sure to confirm the e-mail address by going into the secret election account and clicking the link in the automatically-generated e-mail it should have received.

Finally, copy this template and paste it into the user page of the new account, then hit Save. As an example, the information about the election should be at http://en.citizendium.org/wiki/User:ElectionJune2014.

If you don't have administrator privileges

If you can't create accounts automatically on the main wiki, you will need to secure the services of someone who can. In order to create the election-user account, inform a constable (or anyone with administrator privileges) that you are about to do so. The Constabulary e-mail address is constables@citizendium.org

Next, log out of Citizendium and click on the Register link in the left-hand column (under the heading Dive In!). Fill in an email address to which you have access, e.g. the email address associated with your personal account (not the election email account name - you will change the account's email address later. This will ensure it is not revealed to the administrator who approves the registration). Select one "main area of interest" check box (it doesn't matter which one). In the Full Name box, fill in the election user name, e.g., ElectionJune2014.

The final main step is to copy this template and paste it into the Personal biography section. Leave everything else on the page alone.

Finally, click the Signature check box and then the request account button. Go to the e-mail account you used and confirm the request by clicking on the link in the automatically-generated e-mail you should have received. If it's not there and hasn't been caught by your spam folder, contact the constable or other administrator for assistance.

If all has gone well, the constable or other administrator will see the registration request and the provisional e-mail address, grant it, and then you will get an e-mail in the account you specified asking you to confirm the registration. Do so. This will create the election user on the wiki.

Once the election user is registered, login to the election user wiki account. Select My preferences, which should automatically select the User Profile tab. In the section labeled Email-options, change the email address of the election user to the election email account name. Then click the save button at the bottom of the preferences panel.

You will find that the registration process has placed a category called 'CZ Authors' on the election page. This is because the procedure you have used to create the account was really designed to sign people up to the project. Edit the user page to remove this category. You may also find, if the administrator hasn't deleted it already, a welcome message on the election account's Talk page. This should also be deleted or blanked.

The election's nominations page

First, create the nominations page. This is a subpage of the main election page User:Election<date>. Specifically, the nominations page is: User::Election<date>/Nominations (e.g.User:ElectionJune2014/Nominations).

Then copy the nominations template mediawiki markup to a text editor; execute the global replace described in this section; and make the following changes:

  • Delete all unnecessary sections. For example, if the election is only for the Citizendium Council, the Managing Editor and some Referenda, delete the section corresponding to the Ombudsman.
  • Fill in the dates for the Timetable section. These should be available in the Citizendium Council motion that established the election.
  • Change all links as appropriate to point to the correct election pages.

Finally copy all of the text from the text processor and paste it into the nominations page (i.e., edit the nominations page, get rid of all text in the edit box; paste the modified text into the edit box and hit Save).

The election's referenda page

First, create the referenda page. This is a subpage of the main election page User:Election<date>. Specifically, the referenda page is: User:Election<date>/Referenda (e.g.User:ElectionJune2014/Referenda).

Then copy the referenda template mediawiki markup to a text editor; execute the global replace described in the Create and place the election's wiki pages section; and make the following changes:

  • Discover how many valid ballots were cast in the previous election and enter 20% of that figure as the minimum number of supporters required, rounding up. The previous election is the number of voting participants, so even if people chose not to cast ballots in previous referenda, if they voted for even a single candidate, they must be included in the total.
  • Change all links as appropriate to point to the correct election pages.

Finally copy all of the text from the text processor and paste it into the referenda page (i.e., edit the referenda page, get rid of all text in the edit box; paste the modified text into the edit box and hit Save).

Change the wiki Site notice

So that members are aware that they may nominate candidates for the various open seats and work on referenda proposals, have a administrator change the site notice to indicate this. Here is some wiki text that, suitably modified, can be used for this purpose:

<br/ >
{| align=center style="width:70%; border: solid 3px orange; padding: 3px;"   
|-
|style="background:orange;"|<center>'''<big><span></span> <date> Election</big>'''
|-
|align=center|
The Call for Nominations for the <date> election opens on <beginning of nominations period>, and will end on <end of nominations period>.<br />  
To make your nominations and proposed referenda, please visit [[CZ:Election<date>/Nominations]].<br />
|}

To modify this wiki text appropriately, replace <date> where ever it appears by the election date, <beginning of nominations period> with the date/time of the beginning of the nominations period and <end of nominations period> with the date/time of the end of the nominations period.

Periodically update nominees and referenda

As nominators add names to the nomination's page, members of the Election Committee first should evaluate whether the nomination is valid (i.e., the person is a member in good standing of Citizendium and the nomination is seconded if it is a self-nomination). Check the proposed nominee's 'User contributions' page by going to their user page and clicking the link under 'Toolbox' - make sure their account is not blocked. If all is in order, an Election Committee member should create an entry in the table for the nominee. How often the Election Committee should process nomination information given by nominators is unspecified, but once a day is preferable. Also, the Committee should determine that any proposed referenda have the required number of supporters.

Modify the election user's wiki page to contain the election information

Go to the election user's main page. Copy the election template mediawiki markup to a text editor; execute the global replace described in the Create and place the election's wiki pages section; and make the following changes:

  • Delete all unnecessary sections. For example, if the election is only for the Citizendium Council, the Managing Editor and some Referenda, delete the sections corresponding to the Ombudsman.
  • Modify the office holder user references. Specifically, the current holder of each council seat is referenced by something like [[User:<first Council member>|<first Council member>]]. Replace <first Council member> with the name of the actual council member whose term is expiring. Make the corresponding change for the Managing Editor or Ombudsman, if their seats are up for election.
  • Fill in the dates for the Timetable section. These should be available in the Citizendium Council motion that established the election.
  • Modify the Candidate tables so that only those who accepted their nomination show. It should be possible to simply copy the tables from the nominations page and delete those nominated who declined.
  • Copy the text of each referenda that qualified for the election to the Referenda section. Segregate Citizen initiated and Council initiated referenda into the two subsections.
  • Modify [[Special:EmailUser/<election user name>|E-mail this user]] so it contains the actual election user name. For example, for the June 2012 election modify it to read: [[Special:EmailUser/Election June 2012|E-mail this user]]

Finally copy all of the text from the text processor and paste it into the election user's main page (i.e., edit the election user's main page, get rid of all text in the edit box; paste the modified text into the edit box and hit Save).

To inform the membership of the election, have an administrator change the Site notice to indicate it is open. Here is some wiki text that, suitably modified, can be used for this purpose:

<br/ >
{| align=center style="width:70%; border: solid 3px orange; padding: 3px;"   
|-
|style="background:orange;"|<center>'''<big><span></span> <date> Election</big>'''
|-
|align=center|
'''Voting in the <date> election is open until <end date of election>.'''<br />  
'''To view a list of nominees and proposed referenda, please [[User:Election<date>|click here]].'''<br />
|}

To modify this wiki text appropriately, replace <date> where ever it appears by the election date, <end date of election> with the date/time of the end of the election and User:Election<date> with the Election user name.

Count the ballots and provide the election results to the Council for audit

Once voting is complete, process the ballots emailed to the election external email account. Use the voting method approved for the election (contact the Citizendium Council if you are unsure which voting method to use).

When the Committee has completely processed the ballots, contact the Citizendium Council auditor (the Citizendium Council chair unless he/she was running for reelection, in which case contact the Citizendium Council member who is designated to perform the audit). Give the auditor the password to the election email account (this should not be shared with the auditor until the Election Committee has processed the ballots on their own) or grant access to a Gmail account (see above) and inform him/her of the election results. The auditor will then independently process the ballots and compare the results he/she obtained with those of the Election Committee. If they agree, the auditor will inform the Citizendium Council of the results. If they do not agree, the Election Committee and the auditor should work together to figure out the discrepancy.

Once the Citizendium Council auditor verifies the vote, the Election Committee should fill in the vote tallies for each candidate and referenda on the election page ([[User:Election<date>]]) and indicate who won seats and which referenda passed.

Finally, ask an administrator to change the Site notice so it no longer indicates an ongoing election.

Retain the election information for 90 days

Per a Council ruling (item 11 of the MC passed motion 2012-002), the ballots (and consequently, the election email account) must be retained for 90 days subsequent to the election. At the end of that time, delete all e-mails and then the account itself.


Citizendium Organization
CZ:Home | Workgroups | Personnel | Governance | Proposals | Recruitment | Contact | Donate | FAQ | Sitemap
How to Edit
Getting Started Organization Technical Help
Policies Content Policy
Welcome Page