ElectionAudits talk for OSCON - 2009-07-22
by Neal McBurnett
ElectionAudits: a Django App for Advanced Election Auditing
- Boulder County used open source code to audit its 2008 election!
Share the story, share the code, and get you all involved where you live.
Why?
- Elections to celebrate: South Africa 1994, paper ballots, hand counted
- Obvious disasters: Iran 2009 - clearly fraudulent Preliminary Analysis of the Voting Figures in Iran’s 2009 Presidential Election
- US problems with elections: black box voting systems
- Not just a problem with touch screen devices (DRE)
- Humboldt County 2008: 197 ballots deleted by Diebold/Premier without a trace.
- Certified
Discovered only by Humboldt County Election Transparency Project audit
Goal: software independence, via auditable paper records, good audits
- Open Source voting systems: Great!
- Good audits and chain of custody: Necessary
fascinating algorithms behind modern election auditing,
negexp, ssr,
Rivest’s Sum of Square Roots method
How - what is an audit anyway?
- Audit Election: Compare sample of detailed results with hand counts
- Auditing hand-counted election:
* Count piles of ballots by hand and write subtotals down
* add them up
** check arithmetic and compare to number of ballots
- Optical scanners arrived: era of trusting computers too much
- Audit DREs without voter verified paper trail? Can't do it.... Pushback.
- Audit optical scan systems, e.g.Markey vs Musgrave
- Closing loopholes and gaps; Getting more efficient, Improved confidence in election outcomes
- Map of how audits vary by state: (from ea web site)
- Fixed percentage vs Risk-limiting audits
- Selections for Markey vs Musgrave
- Principles and Best practices
- Results
Django and Python
- Rivest's varsize.py
- ElectionAudits - MIT license
- Hosted at Launchpad, Bzr
- Debug_toolbar for great debugging over the web
Help wanted with:
- Web presentation: css, layout
- Logo
- XML expertise, e.g. for reading and writing (and improving) Election Markup Language
- Database design
- Django/python insights
- Implement features
- Windows testing, installation, eggs and Django, etc
- Help getting auditing laws passed. c.v. Colorado - Election Reform Commission
Biggest challenge: getting useful data out of election systems
At 1:45: Open Source and Democracy - Creating transparent, trustworthy voting systems
- Code is Law - Write our own procedures (after randomness cluelessness)
Links:
This talk: http://bcn.boulder.co.us/~neal/electionaudits/electionaudits-oscon.html