I don't often use profanity on this blog, but this morning I am moved to call the Iowa Democratic Party's leaders a bunch of fucking morons. Last night we saw the results of the IDP picking "fast" and "cheap" for critical infrastructure in the most important election cycle in a generation. Now the national Party will go into New Hampshire with a black eye and no end of razzing from the Tweeter in Chief.
It's not just that the IDP chose "fast and cheap" instead of, you know, "good." It's also that everyone in the Democratic Party, from Puerto Rico to Nome, knows what a fucking big deal this election is. Presumably someone involved in this debacle might have done some contingency planning. Like, for example, having enough volunteers on the phones in case something happened with the app.
We've had years to prepare for last night's Iowa Caucuses. Perhaps not a full four years—they changed caucus rules a bit and added verification steps to prevent fraud—but certainly longer than two months. That's how long it took to write the mobile app the Party commissioned to make this the smoothest Caucuses ever, according to reports in NPR and the New York Times. That and $60,000, which gets you two junior developers and a journeyman team lead for two months, tops.
I've run multi-million-dollar software projects (including one in Des Moines 15 years ago), and my back-of-the-envelope estimate for an app to tabulate caucus results that needs to run perfectly on election night came to about $300,000 for a fast project (4-5 months) or $200,000 if it could take 9-10 months. A budget of $60,000 might, perhaps, cover just the coding, not UI testing, app distribution, security testing, project management, integration testing, API deployment, load testing, or testing the testing (i.e., test validation). And the $200k budget doesn't include $20,000 in infrastructure charges to ensure adequate capacity on election night.
In other words, any competent person would have chosen "fast and good" or "cheap and good."
Plus, media outlets also report that the IDP kept the app's origins and code a secret, in complete contravention of basic principles of secure software design. Had they put the code up for review on GitHub, outside reviewers could have caught any technical problems far, far earlier.
So once again, the state of Iowa, a technology hub renowned the world over as a serious rival to Palo Alto, New York, and Bangalore, demonstrated exactly why they need to conduct a primary election on the same day as a few other states a bit later on in the season.
This election is ours to lose. And with this own-goal, you, the Iowa Democratic Party, are fucking making it happen.