App Used to Tabulate Votes Is Said to Have Been Inadequately Tested
nytimes.com
nytimes.com
Automation and digitalization of the voting process bring little advantage (speed) to a process where publicity, transparency, accountability need to happen slowly and to consolidate slowly, for the partial & full results to be trusted.
The ballots are also kept and can be verified by the voters after the fact.
No state in America has any excuse for running an election less effectively than Sunderland.
Each of these is a different piece of paper, but on any given Election Day it’s rare (but not unheard of) to see three at once.
That's true at the level of national government, but there are separate elections for different levels of government.
It's as if in the US you voted just for the House of Representatives, the Senate was unelected (which, get, historically it was) and the House elected the President.
Instead, the US started out with the same thing, except we elect an entire separate body (because we still didn't trust the people to do that, plus we wanted to make sure that citizens of slave states were overrepresented in executive elections as well as in the Senate) just to elect the President, and then later we decided to make the Senate accountable directly to the state electorate, too.
Putting numbers 1-5 in boxes isn't intuitive?
And yes, I am aware this system is already used in many places.
Humans cannot trust what they cannot understand and cannot verify.
A paper-based voting procedure, and counting procedure provide these guarantees: understanding and verification, through real-time, peer-based counting & review.
Any other automatic system cannot bring, at this point, the same guarantees, where you have to trust: 1) the people/system that built the system, 2) the process they used that ensures against any wrong-doing.
It is low-tech. And that's a good thing. No high-tech alternative provides the same value & the same guarantees at the same time.
It works well, is hard to cheat, and there's no money in it?
What's that old Ben Franklin quote, three people can keep a secret but only if two of them are dead?
The only real argument against it is that you have to pay people to pay by hand, but I sincerely doubt that amount of manual labor costs more than an app.
You could keep the computers but you also have the papers sealed in boxes. Then you can manually check 1-5% of the votes and make sure the machines are correct. Or if someone contests the count and a judge decides the reasons are fair you can count again all the votes in that polling station.
UNIVAC famously analyzed the 1952 presidential election. Today we've got about twice as many voters, so maybe get a computer twice as powerful as a UNIVAC.
While it's enough for cars, for example, to get approval from some trusted authority, we can see in this thread how that's not enough for elections: recent US elections are somewhat trustworthy, from what I can tell[0]. Yet a significant number of people don't trust them. While scepticism can be useful to keep the process honest, it comes with a price: lack of trust gives license, for example, for people to ignore election results by questioning their legitimacy. People drop out of the democratic process, feel less bound by law, and start skirting civil responsibilities, from paying taxes to jury duty. Lacking trust in the potential for "peaceful revolution" at the next election, they seek other means of representation, up to and including extremism and violence.
To add another European example: Germany has a polling place just about every block, at least in cities. In 10+ elections, I have never waited in line more than five minutes. After polling closes at 6pm, you can stick around/come back and observe the counting. The times where I did so, there were maybe ten other people also observing, and we were free to walk around and get as close as we wanted. With a polling place serving just a few hundred people, you can watch and independently count the votes of at least one party. Later that night, you can compare your count with the number on the published spreadsheet.
That's only one party's votes, in one of tens of thousands of polling places. But get a few trusted friends, or do it repeatedly over the years, and you rather rapidly get statistically significant evidence.
The only difficulty for the US would be the insane amount of individual votes, from ballot initiatives to dog catcher (not any longer, I know; but similar).
[0]: Apart from the well-known and completely legal top-down methods of election tampering, such as holding it on a workday, cutting down on polling places in specific locations to increase commute and waiting times etc.
In Europe, as I understand it, you vote for a single person and that person does the rest of the voting for your area. I'm sorry if I am wrong about that or oversimplified it; that's the current state of my knowledge on the subject.
Just so you know: America started out that way too, which is why we have the 'house of representatives'. The framers of the constitution intended that congressional districts never exceed 50K to 60K thousand. Unfortunately the average congressional district in America is currently about 700K.
Voting for someone to represent me and my closest 699,999 friends is barely a vote at all. With congressional districts that large (not to mention fcking gerrymandering) you are not really voting along with your peers. People are grouped together in strange ways.
Also, Germany is 1/4th the size of the US and the UK is 1/5th the size of the US.
The net result is; Americans are not accurately represented at a national level.
When you combine that with the fact that we pride ourselves on our independence and individuality; taking away our ability* to cast votes on local issues is probably not going to fly. If anything I'm guessing we'd want more power to vote individually. Two of the last five presidents who were elected were not chosen by the majority of the population.
I think a simpler solution like paper ballots and many polling places might help, but, the sheer manpower to make sure that goes well would be a massive undertaking. As I said, many multiples larger than in some European countries.
Having an explainable (to your point) system that is open and exhaustively tested is one path to avoid the current mess we find ourselves in.
EDIT: And if someone wants to fill out a paper ballot manually, let them. Just have a few spares around, most people won't.
Big friendly, easy to use touch screen, it then prints your ballot on paper, in big friendly easy to read lettering. You then feed that into another machine. There's the e-voting, as well as paper ballot paper trail.
Because Iowa chose to have a caucus, not a primary.
If you’re not an Iowa voter, there are a million political bikesheds that would have more relevance to your life. You’re basically just complaining about the pace of a television program.
That being said, it is an excellent way to exclude people who have other responsibilities or difficulty making it out for several hours on a week night.
Make a nice formatted layout specific to that year. People feel pretty comfortable in excel-like spreadsheets/forms.
Then at the state level, since you have permission to all the sheets, its simple to aggregates all the sheet data
It's not some wiz-bang branded app with fancy animations, but its piggybacking on a very robust spreadsheet system that many people have some experience/intuition with.
Early reports on the radio mentioned that people trying to call in and relay the results were waiting ages on hold, but they also said that the reason phones were so heavily used was that the app was giving inconsistent results. I never heard any more about what that could mean exactly.
Many of the caucus sites don't have good enough cell reception to download an app at the last minute. Imagine yourself arriving at a location with poor cell reception, told to download someone else's unknown code onto your personal phone using a weak or nonexistent cellular data signal. Problematic to say the least. Finally, the next day the Internet calls you "old people" as a final slap in the face.
I guess that’s the part I don’t understand very well. Does that mean the number of delegates didn’t match what the math said they should based on the final voting counts? Or does it mean some of the folks who used the app to report the counts also called in with different numbers? Or something else?
As of last night, that was unclear. I’m hoping that they do a whole post-mortem on what went wrong and how they resolved it.
I'd don't know whether it's hard inconsistencies (e.g., delegate counts not right given second alignment totals) or just improbable combinations that call for manual review out of caution (e.g., second alignment numbers that are technically possible but improbable given the first alignment) or a mix.
It was.
> My guess is that the round-to-round numbers didn't match expectations, and my guess-the-second is that more people leave between rounds than we realized.
They diagnosed the problem to the reporting functionality in the app not including all data in all reports, not unexpected results in the actual logged data.
Election results are too important to risk compromising them by trying to save money or rush results.
The money saved is always marginal anyway and the extra time is usually only a few hours.
This is a solved problem. In my precinct in Virginia, any mark inside the bubble counts as valid. If you accidentally put a stray mark in one selection and intentionally fill in another for a single-choice contest, the scanner machine will reject your ballot and notify the poll worker about your overvote. If you marked outside the bubble, the machine will reject your ballot as an undervote.
“Tabulate” here isn't a synonym for “count”, its recording/aggregating/communicating counts made outside the system.
And, of course, graph paper doesn't address the need to rapidly aggregate the numbers, either physically (in space) or analytically (to get totals). Or to reconcile them for inconsistencies between the three dimensions. (Which is the whole point of the new reporting requirements imposed on the IDP, and, according to the IDP, the actual source of delays.)
And, of course, using #2 pencil for the records has its own problems as far as security goes.
That's how the president, the parlament, and the local governments are elected in Lithuania, a country of the size of Iowa. It takes 10 minutes to set up a new private limited company online, but all votes in the elections are still counted by hand.
This app was simply to aggregate the results more quickly than hundreds of phone calls. It was just a cheap app that was inadequately tested.
It's a bummer but hardly a crisis for democracy, and not really relevant to discussions of technology for vote counting in primaries or general elections.
It is interesting to observe how little distinction non-technical users are aware of between high quality and comically buggy software because of the ease of producing flashy UIs these days. They have no idea how the sausage gets made. No idea.
I have never seen a stronger case for the need to have third-party certification and testing of software and the people involved in building it.
Not there yet, but it's one possibility as long as the company running this server has appropriate levels of security
- A license which allows the source code to be redistributed under the same terms as it was received? The problem with these boxes isn't that people can't redistribute it.
- A collaborative model for creating software? Possibly -- though there have been some high-profile cases of security issues sneaking into these, too. Modern voting machines also seem to have a huge stack of dependencies, which mean the surface area for exploit is much larger than the voting software itself. Would you require a fully open-source stack, and how far down?
OSS is great for transparency for the person receiving the software (in this case, the jurisdictions operating the machines), but if those people don't care to audit it (or redistribute it to others who wish to), that doesn't buy them anything.
I'd much rather see a rule requiring voting software to be publicly viewable by any voter in the jurisdiction, regardless of the software license it's sold under.
Transparency, an open license, collaboration, distribution, best practices and more.
Clearly I do not expect districts to independently inspect and verify source code any more that we are inspecting and verifying the web server running this website.
Computers (or at a minimum binaries) could be distributed and have self checking as the boot. They could simply be used to tally paper ballots (as others have mentioned) or to transmit votes.
The overarching point is if we can do 5 trillion dollars of electronic money transfers worldwide per DAY certainly we can use open source to accurately, securely and transparently count and tally votes.
Do we need even more governmental oversight? I would like to see a bulletproof technological solution that I personally can verify if I choose to.
https://www.nakedcapitalism.com/2019/08/reminder-dnc-lawyers...
Are you proposing that every GitHub repository be certified by a third-party and tested before use? Besides, "high quality" software like Google Maps or iOS don't have anything close to "third-party certification".
Which is why it may be wrong to assume naivety. We don't know yet if this was incompetence/naivety or intentional.
Any commercial software company with thousands of data entry users would regard it as a massive mistake to suddenly, overnight, begin rejecting all data that wasn't in compliance with a complex set of rules that most people can't explain. You'd bring a smoothly running business to a grinding, embarrassing halt.
Of course all the individual precinct officials whose result were rejected are going to blame the app. Why not? The makers of the app didn't have a mandate to fix the caucus process. And of course when people's accuracy and competence are called into question they will do everything they can to discredit the source.
I don't know if that's what happened, but it's consistent with what we're observing: the state office is saying they're trying to resolve inconsistencies in the returns, and the precincts are blaming the app.
The right thing to do would have been to use software to measure the prevailing level of data quality and compliance with the state official's interpretation of the rules, and decide later whether to do anything about it in 2024, if ever.
The Democratic 1860 Conventions were so bad they decided to put up two candidates, had to do it over a few times, had many walkouts, and effectively seceded Lincoln the Presidency and engulfed the nation in war as a result. It was so bad it literally was a cause of the Civil War.
The 1912 Republican Convention literally split the party, with the fisticuffs and black eyes to prove it. Edumnd Morris has a good bit on that one and the hijinks, corruption, vote-selling, and smoke filled rooms in his Theodore Rex series. To us today, it's ghastly.
I think it was the 1952 National Conventions that really exposed to the public what a mess it all is, as they were the first ones to be televised. During the process people intentionally lit newspapers on fire in order to cause chaos (my memory is a bit fuzzy here though).
The 1964 Republican convention at SF's Cow Palace, dubbed Conservative Woodstock, was more of a Nazi rally than anything else. Reporters had racial and sexist slurs screamed at them until they ran for their lives.
The state caucuses are a reflection of these conventions and America itself; drunken, insane, corrupt, spectacle.
The public can and should put pressure on the parties to adopt more legible and transparent processes.
Ridiculous.
Apple moved a reply button on the iPhone email app -- and I know someone that for weeks just thought it was broken and would text responses to emails entirely out of context.
This person had a Ph.D.
So sad but funny
https://daringfireball.net/2019/10/mails_message_action_tool...
Brilliant plan.
[1] https://www.theguardian.com/us-news/2020/feb/03/smartphone-a...
They might already be hacked as well.
I know nothing about the app itself, but clearly the process around deploying it was a fiasco. We really need competent people running elections.
The primary sin here by the party and app developers seems to be far too much belief in the power of obscurity. A well-coded app with a good authentication scheme could have been distributed through app stores weeks in advance and it would not have made any difference to the security--but would have made a huge difference in testing and user on-boarding.
- State campaign finance records indicate the Iowa Democratic Party paid Shadow, a tech company that joined with ACRONYM last year, more than $60,000 for “website development” over two installments in November and December of last year.
- The Iowa Democratic Party had refused to reveal details about the app, including the company behind it and what security measures were being taken to safeguard the results, arguing that it made the technology more vulnerable to hackers.
- In 2018, the group funded an onslaught of ads on platforms like Facebook and Google.
https://www.huffpost.com/entry/iowa-caucus-app-shadow_n_5e39...
- Nobody knows how to use the CMS, so no new content in months.
- Their site lists a dated version of their team, with _personal_ emails on the public web, since nobody knows how how to set up new mail accounts under their domain. They get destroyed with spam.
- I overhead a volunteer clicking really rapid fire, like 100 times in a minute. I probed a bit and found that is how they send out messages. Its something straight out of the excellent "How to Automate the Boring Stuff"
- All data has to be manually entered into 2 systems, and they want to add a 3rd.
All of those things and 100 others could be fixed expediently, but there is literally nobody to do it, and no committee that handles that role. My day job in a journalistic organization means I really cannot engage in partisan political work, but I'm just itching to help.
If you are progressively-minded and want to make a difference in 2020 elections, please show up and help. There is plenty of work to be done, and shockingly few volunteers or staff with the skills you have, HN reader.
I have worked on a few campaigns and my skill sets were invaluable to getting candidate voices heightened.
TLDR: volunteer and you can make a difference.
You can even use your goddamn smartphone to make the call, if you need that in order to feel "modern" enough. But don't make a shitty app for every one-time event that doesn't need a hundred additional failure modes for essentially no benefit whatsoever.
The backup plan was to call in. However, they only had 12 callers ready to take calls, for ~1800 precincts. At 3 minutes per call, that is 7+ hours to call in the results.
Combine that with renting a solid and battle-tested VoIP solution for a few days to supply the short-term workers with (soft-)phones and the precincts with numbers to call, the story gets even better from a marketing perspective - now they could add the punchline "See, we're using INTERNET TELEPHONY hosted in THE CLOUD!".
If there was ever a use for the phrase “You had one job!”
In the past, the parties have essentially prevented those states' election date moves. That stance could change.
[0] 90.7% white to be precise where the rest of the US is 76.5% https://www.census.gov/quickfacts/IA https://www.census.gov/quickfacts/US
Iowa cannot enforce that law outside of Iowa.
As I understand, it's up to each state to select the date.
Within certain bounds they have historically not gotten into the weeds too much on timing, but they certainly could.
It seems that Iowa chose both, the time and the manner, itself[1]:
> Because Iowa had a complex process of precinct caucuses, county conventions, district conventions, and a state convention, they chose to start early. In 1972, Iowa was the first state to hold its Democratic caucus, and it had the first Republican caucus four years later.
> Under Iowa law, political parties are required to hold caucuses every two years to select delegates to county conventions and party committees.
And each party must respect the laws of the state.
Well, no, not entirely. Yes, the parties gave them lots of room initially, but that has evolved. The entire reason they were using the app at issue this year is because after complaints about apparent inconsistencies in the results based on internal reports (there was previously no official tally of the intermediate steps), the DNC directed that to the Iowa Democratic Party must adapt the method so that there were official, reported tallies of the first and second alignments as well as the state delegate equivalent count that is the final result. That is, the national party chose (in a very limited way, for now) to exercise it's fairly absolute power to direct the manner by which delegates to it's nominating conventions are selected. (Aside from this specific intervention, the DNC also has extensive general rules adopted for the delegate selection process, see, for 2020, generally Regulation 4 of the Regulations of the Rules and Bylaws Committee for the 2020 Democratic National Convention.
There is nothing stopping the DNC from making much more exacting requirements, including setting a required schedule or prohibiting the use of caucuses entirely.
> And each party must respect the laws of the state.
Each party has an incentive to do so to avoid conflict with interest groups in the state, but state governments have basically no compulsory power to direct how party national committees allow delegates to nominating conventions to be selected from their state.
In practice it’s ultimately up to the DNC (this is a party process after all). In the past if a state threatened to disobey the party the party would just say the state’s delegates wouldn’t count or would count for less. Iowa’s constitution has no governance over DNC policies and practices which at the end of the day are a private matter.
You can change by having either of the national parties set rules about primary/caucus timing and declaring that they won't seat delegates chosen out of line with those rules.
Heck, the whole reason Iowa has to report more dimensions of data this year is a DNC rule (not on timing, obviously) adopted in response to complaints about the results last cycle. So we know the party committees rules do direct the administration of state nominating contests.
More likely that they'll be forced to abandon caucuses.
However, If I had $63,000 to build a solution (a price mentioned in a wsj article), I think there are better ways to do this without an app. The problem with relying on an app for a one-time, time-sensitive event is that you'll ultimately run into people that don't know how to download the app, have a phone that can't run the app, don't remember how to authenticate, or are simply confused as to how to use it. No matter how many emails you send out before hand reminding people to install the app and how to use it, some amount of people simply ignore it.
For pictures, instead of a Polaroid style camera (which I had bought originally for the purpose but we decided against it later) we thought it would be great if people could use their own phones to take their own reception pictures and then print them off a Bluetooth photo printer we brought, and then put those pictures into a photo guestbook.
Instead, no one could get the app downloaded or working (well almost no one) the night of, and one person in the wedding party had to act as a technology liaison and get pictures from other people, then print them from his phone.
We ended up with around 14 pictures in the photo guestbook.
If we had just gone with the polaroid camera we probably would have had 3 or 4 times that many pictures.
All because we assumed the technology would work as easily as we were able to get it working at home, for everyone else.
In this case stripping out css and javascript is to make the website functional in low bandwidth conditions.
Either way, this is a pretty good indictment of this entire idea. Stick with what worked for hundreds of years, don’t try “solutions” to non-problems.
In Iowa specifically, I’d disagree - primaries are a more robust and inclusive system than caucuses.
This doesn’t really seem like something to pin on the app exclusively - it’s a change management failure on the part of the party, underlined by the fact that even their normal phone lines were overloaded due to new data reporting requirements.
I wasn’t on the ground or anything (I’m a complete outsider who read the news) but this seems like a lot to pin on some app developers when the issues were spread pretty far. It’s damnably hard to train 1800 users spread across a state with varying levels of experience.
I suspect their phone lines were overloaded because they optimistically assumed the app would handle the majority of the reporting. When Plan A failed, there was a knock-on effect on Plan B, causing it to subsequently fail.
https://www.nytimes.com/2020/02/04/us/politics/iowa-caucus-s...
Granted, I have seen elephants drowning in a teacup in corporate IT, but not to that extent.
That doesn't matter, 1700 users posting updates to numbers isn't something that would be difficult to write and test properly.
Who knows why they felt that secrecy was so important - but this seems to be a touchstone of the governing class. Even in an election - what should be the most open event in our entire society - they're trying to be gatekeepers of information.
- each precinct got a PIN to report their results
- the PINs were printed on the paper result worksheets sent to precinct captains
- multiple precincts and participants posted pictures of their worksheets to Twitter, with the PINS clearly visible
- hence multiple PINs were compromised
https://mobile.twitter.com/adelcambre/status/122455902387103...
My precinct had these on the table where the staff was coordinating the caucus.
Though according to the spokeswoman for the Iowa Democrats in the NYTimes article, they don't believe any of the 3 reporting discrepancies are the result of an intrusion.
There's more discussion about this over on the other HN thread: https://news.ycombinator.com/item?id=22232737
My intuition is that the bigger problem is with the caucus format itself, and especially the new rule changes. The app, with its strict data entry requirements, likely didn't cover a lot of corner cases and so people had to call in to ask what to do. There was one caucus on TV last night that had problems because a bunch of people left after first alignment and organizers didn't know how to tally their votes.
When some confusion -- any confusion -- happens, that doesn't fit into the app's forms, people are not going to trust it and will revert to calling the IDP/DNC offices to see how to proceed.
Then if the Iowa DNC (or whoever) didn't staff up the phones to the usual levels as expecting most results to come through the app, you can kind of get to how something this ridiculous happened...
Either way it's a complete lack of pretty basic testing/training, whether it's with real life users or the scale of the app, or whatever it was, they seem like pretty preventable problems from the outside looking in.
And yes, paper documents were created this year to facilitate counting/recounting.
https://mobile.twitter.com/lhfang/status/1224561674679488513
https://mobile.twitter.com/ryangrim/status/12246004685523271...
Nor does Buttigeig declaring victory before any results have been reported and his comms director tweeting out internal election tallying forms with some kind of PIN data that I imagine should’ve been kept concealed:
https://mobile.twitter.com/bhalle87/status/12245589259467939...
None of that seems abnormal, Buttigieg's claim to victory is based on him winning by the equivalent of an exit poll.
Not exactly a trait I desire in a president.
https://twitter.com/pinkacreisnuts/status/122460306661335859...
They seem pretty slimy all around.
Scale, especially efficient scale, is hard.
I had thought this was the standard. I guess I was wrong?
I am truly baffled sometimes.
Of course there’s always the possibility it’s a simple matter of (4) someone lobbying politicians into giving money to his brother to slap together an app, because government money.
(That said, I don't understand why the cost of primaries and, presumably, these caucus events, fall on local taxpayers.)
No surprise, it shows Bernie Sanders winning solidly. This whole situation reeks of the DNC trying to stunt his momentum.
That's a lot less than the 30 million or 10% of population [1] who voted in the last Democratic primaries in 2016, but not "nothing like" it. And we could pick other years the turnout was much lower, e.g. 7 million [2] in 2012 where Obama did not have meaningful opposition).
[0] https://en.wikipedia.org/wiki/2016_Labour_Party_leadership_e...
[1] https://en.wikipedia.org/wiki/2016_Democratic_Party_presiden...
[2] https://en.wikipedia.org/wiki/2012_Democratic_Party_presiden...
With a different voting system there would be a wider range of smaller parties, so you don't need to wrest control of a major party to be represented.
Here's an Op-Ed piece that makes that argument: https://www.commondreams.org/views/2020/01/15/it-clear-estab...
And I would even argue that it's not always best to go with the person who gets the most votes amongst the Democrats. Most Democrats and Republicans will vote for their party in the election, no matter who the nominee is.
So I would think the best person to win the election would be a candidate that is able to get the most support from across the aisle, from Independents and Republicans.
This election, it seems like the top candidates for that are Yang, Biden, or Tulsi, based on what few articles I can find on the matter.
https://www.businessinsider.com/right-leaning-voters-support...
https://thehill.com/hilltv/rising/476265-poll-gop-voters-dra...
https://nymag.com/intelligencer/2019/11/tulsi-gabbards-suppo...
But it doesn't seem like the DNC cares about that as much as long as one of the establishment candidates wins the nomination (Biden, Buttigieg, Warren, Kloubuchar).
The weirdest thing about it is that Trump seems very much result of this trend.
edit: changed verb is to seems
>> So I would think the best person to win the election would be a candidate that is able to get the most support from across the aisle, from Independents and Republicans.
Well that means picking a candidate specifically for the swing votes, which may be very different than what party members want. In other words someone that almost nobody likes. But hey, they can win. Because people will vote their party regardless.