+ Your AuthorsArchive @rabble anarchist, hacker, troublemaker (he/him) working on the decentralized web. Feb. 04, 2020 8 min read

If you want to understand what happened with Shadow and the failure of the Iowa Caucus app you have to understand how electoral campaign tech work is done and funded. Let me tell you a story to make sense of it.

The caucus app is firebase / react app built by one senior engineer who’s not done mobile apps and a bunch of folks who were very recent code academy graduates who as of a couple months ago worked as a prep cook for Starbucks and receptionist at Regus.

They messed up, but here’s the thing, shadow is a company which came out of of the collapse of another electoral tech company, Groundbase ( http://getgroundgame.com ) which has some well known folks in the campaign tech space.

I know about this space because I tried to do my own project,  http://affinity.works , in a similar space, and through that work got involved  http://opensupporter.org  standards process to make data sync between various systems.

What shadow, groundbase before it, and many of the rest of us like affinity and groundwork (similar name I know) all want to do is solve the problems which come up in progressive campaigns. We’re trying to create tools for the organizers.

Shadow made some tools which look useful, their messaging app is similar to hustle and  http://getthru.io . Their lightrail app  http://shadowinc.io/lightrail  is something people really need.

Think of it as a Yahoo Pipes/Zapier but for the specific api’s that we use in progressive campaigning from NGP/VAN, ActionKit, and ActionNetwork.

Lightrail is solving the problem that most people on campaign tech teams have. Mostly the job is wiring up various services, moving the data in to the right spot so the digital and filed teams can be effective.

To understand why shadow exists and how they failed to provide the tools the Iowa Democratic Party needed we need to know how this space works.

The fundamental problem is we’ve got a very broken way we fund campaign tech on the democratic side of the isle in the US. There is tons of money in politics but it doesn’t get used in the way which builds anything sustainable. Here are some reasons why.

Campaigns have a few primary motivators. First is getting votes, you want to win elections, if you’d don’t win, you don’t get to keep playing. To win, you need money, and you need to stay compliant with FEC rules. Break the rules, people don’t vote for you, unless you’re Trump.,

Run out of money and your campaign is done. Just look at the reason given for most democratic presidential candidates dropping out this cycle. They quit when they can’t raise more money.

So, we have tons of money, and money for campaign tech, but it’s very focused on raisin money, keeping track of money, and legal compliance. NGP/Van is very very good at meeting these needs, they’re the centralized company which most democratic politicians use for their campaigns

It’s tech around money / accounting is great, it’s tech around walk lists and mobilizations is ok, it’s tech around movement building is terrible.

Some org’s like ActBlue focus on the one very lucrative part of the stack, collecting small dollar payments with compliance.

ActBlue does that one thing really really well, it’s transformed political campaigns, but doesn’t provide a funding channel for all the other tools we need.

Non-candidate groups often use ActionKit if they’re bigger or ActionNetwork if they’re smaller, or even NationBuilder. The latter became persona-non-grata after working to get Trump elected. MoveOn funded the creation of ActionKit, and the AFL-CIO did it for ActionNetwork.

Thousands of groups use ActionNetwork, but it’s barely viable as a sustainable entity despite providing a very important service. ActionKit was recently rolled in to NGP/VAN because it wasn’t sustainable as an independent entity.

The space is dominated by decision makers who are stuck on a very short term decision making cycle. Structurally there is no space for long term investment, despite everybody stating that this would be good.

In normal tech circles we’d have a bunch of free software libraries and tools we build on together, but the campaign tech space doesn’t have this because decision makers fear our tools will be taken and used by the other side.

This is despite the fact that ‘they’ use totally different standards, tech, and structure of work. Ours works better than theirs, but it’s not saying much.

In the wake of the 2016 election there was a lot of energy around funding better tools. We had folks like @raffi go over to work at the DNC. We had Higher Ground Labs promise money in to the space, they funded Shadow, and many other projects.

Unfortunately they funded it using a startup / incubator model. Giving startup funds to many projects in a cohort and helping them get to an MVP and pitch founders for more money.

After the initial infusion, there was no more money to be had. These projects all failed when they ran out of money. There was no budget to fund development between cycles. The decision makers know nothing about how technology, or its development works.

Most of us gave up on building campaign tech. Thousands of other dedicated technologists who are organized through  http://progcode.org  and  http://ragtag.org  are struggling but unsustainable.

Campaign networks like indivisible, sister district, swing left, all use extensive tech but don’t have budgets to fund its development.

I myself am now building @planetaryinc, @slaby is at @harmonylabs, @harper is bouncing around the world being his fabulous self having left the Obama campaign to do a payments startup. @elipariser is doing @civic_signals to fix social media platforms.

The decision makers refuse to use free software, alienating the progcoders/ragtag communities. They also refuse to fund projects between cycles to build reusable platforms.

So what do projects like  http://affinity.works  and shadow do when they want to keep the lights on? They take one off campaign jobs. Affinity built tools for the Yes on 1631 carbon tax campaign in Washington, and Shadow built a caucus tool for state democrats.

This was a quick tool which was put together without sufficient funding. See, building tech is expensive. We can see from the budgets that the Iowa Democratic Party only paid $60k to shadow, and the Nevada party paid $58k.

It might feel like a lot, but it really isn’t given how much this stuff costs to build. It’s why the app wasn’t well tested or scaled well. The team was a few enthusiastic recent code school grads and one experienced engineer. This was their side project they built to get funding

There is no way they could succeed. The problem is structural, the way we’re funding campaign tech is wrong. We need it to be based on open source technology, we need a community of companies, parties, and third party groups funding it. It needs to have funding between cycles.

There needs to be much more money in order to sustain things. The Obama and Clinton campaigns spent tens (maybe hundreds) of millions of dollars on tech but it was building tech which was mostly thrown away.

We’ve got a few vendors that last between cycles, but all the techies who work on campaigns go back to normal startups.

A couple days after Obama was re-elected the political staffers walked in to the tech floor of the Obama campaign HQ and wondered where everyone was. They’d all be laid off, @harper had found them jobs in industry & everybody faded back in to tech companies.

From a staff of hundreds, a handful went to work at the White House or OFA, but for the most part that knowledge was all lost.

We’re treating our campaign tech teams like we treat the field organizers, and it’s not working. It doesn't work for the field teams either, that's why they unionized.

If we want to prevent disasters like the Iowa caucus app or the failure to do effective social media campaigning in 2016, we need to change the way we fund, build, and employ the campaign workers, techies included.

What should have been done? The app shouldn’t have been built. This didn’t require an app. There are lots of ways to submit and verify vote counts without needing a custom app. At least they kept the paper backup.

The sexy desire to have an app is something we should avoid.

Focus on the problem, not the solution of an app which sounds cool. The Iowa Democratic Party shouldn’t have asked for an app. The media shouldn’t have hailed it as futuristic, we shouldn’t demand immediate electoral results, and shadow shouldn’t have tried to build it.

You could have done a system with google docs and having multiple people send in pictures of the tallies at each polling place. Or any number of other solutions which requires less software. There’s a whole field of lean startups dedicated to solving the problem with less code.

Folks like @mattblaze and @EdFelten, and many others have documented why digital voting systems are a broken concept. There is is no way to do it securely. Use paper, use people, verify, audit, make it transparent to all the campaigns. Force the media to wait for results.

I feel i should make sure the record is set. ActionKit wasn't going under when they joined @NGPVAN, rather they thought it would be better to have both under the same roof to connect the electoral and advocacy campaigns.

Groups like @ControlShiftLab & @TheActionNet make enough money to sustain themselves independently through their users paying subscriptions. They're working on new products and features. I just wish they had triple budget for the dev and design teams. We could do SO much more.

We had a booth about open source advocacy and activism tech at the 2017 Netroots Nation. We gathered together a few projects between  http://affinity.works  and @jlev but we definitely were the odd kids out.

If you want to look at groups who are providing the tech skills and people to campaigns, check out what @kategage is doing with  http://lab736.com . The truism is that it's always a people problem. You solve that with people... well and money and technology. ;-D

You can follow @rabble.


Tip: mention @threader_app on a Twitter thread with the keyword “compile” to get a link to it.

Enjoy Threader? Sign up.

Since you’re here...

... we’re asking visitors like you to make a contribution to support this independent project. In these uncertain times, access to information is vital. Threader gets 1,000,000+ visits a month and our iOS Twitter client was featured as an App of the Day by Apple. Your financial support will help two developers to keep working on this app. Everyone’s contribution, big or small, is so valuable. Support Threader by becoming premium or by donating on PayPal. Thank you.

Follow Threader