As Obama heads back to office, a battle rages over the tech that got him reelected

obama tech lead

The tech team behind the 2012 Obama campaign has probably received more attention than any political programmers in history. A so-called "dream team of engineers from Facebook, Google and Twitter [who] built the software that drove Barack Obama’s reelection" were extolled in the press for bringing Silicon Valley strategies like Agile development to the normally hidebound process of a political campaign. In the post mortems that followed Obama’s victory, many credited the superiority of the Democrats’ tech team and its famous Narwhal platform, in contrast to the failure of Mitt Romney’s digital efforts, with mobilizing the vote and winning crucial swing states.

But in the aftermath of the election, a stark divide has emerged between political operatives and the techies who worked side-by-side. At issue is the code created during the Obama for America (OFA) 2012 campaign: the digital architecture behind the campaign’s website, its system for collecting donations, its email operation, and its mobile app. When the campaign ended, these programmers wanted to put their work back into the coding community for other developers to study and improve upon. Politicians in the Democratic party felt otherwise, arguing that sharing the tech would give away a key advantage to the Republicans. Three months after the election, the data and software is still tightly controlled by the president and his campaign staff, with the fate of the code still largely undecided. It’s a choice the OFA developers warn could not only squander the digital advantage the Democrats now hold, but also severely impact their ability to recruit top tech talent in the future.

"The software itself, much of it will be mothballed," believes Daniel Ryan, who worked as a director of front-end engineering at OFA. To the techies who supported the campaign, this would be a travesty. The historic work the campaign was able to achieve in such a short time was made possible, Ryan and others argue, because the Obama tech team built on top of open source code — code that has been shared publicly and can be "forked," essentially edited, by anyone. "The things we built off of open source should go back to the public," says Manik Rathee, who worked as a user experience engineer with OFA. The team relied on open source frameworks like Rails, Flask, Jekyll and Django. "We wouldn’t have been able to accomplish what we did in one year if we hadn’t been working off open source projects," says Rathee.

In this sense, the decision to mothball the tech would be a violation of the developers’ ethical principles. But the argument is about more than whether putting the tech back in the hands of the public is the right thing to do. "The biggest issue we saw with all of the commercial election software we used was that it’s only updated every four years," says Ryan. It was these outdated options that convinced team Obama to build all the campaign tech in-house. If the code OFA built was put on ice at the DNC until 2016, it would become effectively worthless. "None of that will be useful in four years, technology moves too fast," said Ryan. "But if our work was open and people were forking it and improving it all the time, then it keeps up with changes as we go."

One argument made by the DNC against making OFA's code open-source is privacy. The campaign collected millions of names, addresses, credit card numbers and, of course, political affiliations. But Rathee says the tech was developed with this in mind. "I understand the need to keep the data sets private, but not the codebase. The work was meant to be modular, so it could go from site to site and be applied to different campaigns without sharing sensitive information."

Members of the tech team suspect that the real rationale for keeping the code private is much less high-minded. "The gist of it is, they're concerned that with the superior funding of the Republicans, if they had our software, they'd be unstoppable," says Ryan.

OFA's top engineers believe that keeping the code base private would actually do more harm than good to Democrats. "It’s going to send a very bad signal to engineers who might consider working on the next election cycle in 2016," says Rathee. "It shows a fundamental misunderstanding of how we work."

Several OFA engineers believe their work can do a lot of good before the next presidential election. "It's not just a negative impact on recruiting for the next presidential campaign," says Ryan. "It's the question of what could this software do in the hands of other progressive organizations in the next four years."

DNC tech veterans Jim Pugh and Nathan Woodhull believe that what happens to the data, code, and processes developed during the campaign is the biggest question facing the progressive moment today. "Election Day shouldn't be the end for these systems. We need to keep moving forward, continue the investment, and make them available to the whole movement," they wrote in a recent editorial.

"Right now, no one else in politics has tech this good," says Pugh. "So ideally these tools could be offered via a paid license, and end up being revenue positive for OFA or the DNC."

A DNC official responded to The Verge with the following comment. "OFA is still working out the future of their tech and data infrastructure so any speculation at this time is premature and uninformed."

Woodhull and Pugh agree nothing is set in stone, but they are not encouraged. "I haven't heard definitively that the DNC is going to mothball the technology, just that they haven't yet moved forward with maintaining it," said Pugh. "I think that's a major missed opportunity, since there's so much that could be done with it in the next few years. It also means that we're giving Republicans a big chance to catch up with us, in an area that we've had a sizable advantage in since 2008."

Woodhull says the DNC has actually been moving in the wrong direction. "I'm not sure that we know for sure exactly what will happen, but the signs so far have been discouraging," he said. One consequence of mothballing the code is the possibility that the party could lose the technology staff it already has. "There has not been any concrete outreach that I am aware of to keep any of the talented technology staff around from the Obama campaign," Woodhull said. In fact, he says the DNC has actually laid off key technology staffers, making the team smaller now than when Obama became president in 2009.

Getting politicians to embrace open-source code has long been a challenge. "I pushed to open-source code while at the DNC — it was a very difficult fight to even get permission from the senior staff to allow non-political infrastructure code to be open-sourced," says Woodhall. "It did not seem to the senior staff that it had a significant upside given the general discomfort that they had with the idea of putting things that might give the party a structural advantage into the public domain. That, and just not really understanding what all of these technical folks were going on about."

A senior source within the campaign, who asked to remain anonymous as they were not authorized to speak, argued that while the engineers may be frustrated, the issue of what happens to the code is still wide open. "Of course it’s tough for people from startups used to making decisions in a day or a week to move at the pace of politics. But I am confident the right decision will get made. This is a complex structure, with the campaign, OFA, and the DNC all involved. Considering how politicians usually react to these ideas, if the word 'open-source' even comes out of the president’s mouth, then we’ve won a big battle."

Some voices at the DNC have expressed support for a hybrid model that allows a portion of the Obama campaign code to become public. And some elements of the campaign software, like the call tool, have already been repurposed to help the president mobilize support around issues post-election. But Ryan isn’t optimistic. "Based on their attempt to open-source a voter registration app, I don't believe they would get it right. It was free as in beer, but not free as in speech."

While the campaign and winning the election were fulfilling for these developers, Ryan isn't planning a return to politics. The aftermath has jaded him. "I think it just reiterates the fact that change won't come from Washington," says Ryan. "If techies want change, we have to do it from the outside."

Comments

Why don’t they continue working on it and like each year going back and modernizing it for the 2016 election and just use it for whatever candidate comes then. It saves them the moral implications and it means in four more years they do not have to go back and make new software

The moral issue is that they used open-source, community code as a foundation for the software, and feel obligated to contribute back to the community. Even developing it in private for the next four years wouldn’t really fix that issue as the code still would be hidden from the public eye.

Edit!

Isn’t that the Obama campaign’s right, though? Even if they started with FOSS, they added a lot to it to make it their own… Shouldn’t they then be able to determine what they do with it? Even if that means holding it close to the chest?

The idea of open source is other people release code, you use their code, add on to it, and then you’re expected to release what you added on so somebody else (or even the original person) can then take that and improve on it again. Along the lines of ’I’ll help you study for your test, and after you’re done studying you help me study for my test.’ Taking somebody’s else work, using it, and then not contributing back is akin to saying ’I’ll help you study for your test after you help me study for mine.’ then an hour later saying ‘Hey, thanks for helping me study, I’ve got to go now, bye. Good luck with your test!’

Fair enough, I suppose. They’re titting without tatting.

It’s an interesting question, since it represents an intersection of the FOSS ideologies, and how that interacts with the real world where software secrecy has real tangible value.

Depends on which open source licensing model you’re following. Some are approved for commercial use and are not required but only encouraged to share.

The issue here goes beyond licensing, it is a moral issue but after all I wonder if the developers really were that naive to think a political party would simply release the code and let others catch-up with them in that aspect.

If you want to hear about the Narwhal project from the Obama tech team’s CTO, this is a great interview:

http://twit.tv/show/triangulation/81

(somehow this was posted later in the comments by mistake)

I realize that for some it’s a moral thing but they might want to take that up with the open source licensing groups if it’s a problem. The developers of this software chose the license.

Yes, and they didn’t want to be jerks that required by law giving back to FOSS. That severely limits the use cases of software, especially by companies that legally, for some reason or another, can’t. These guys can, and just don’t want to.
The idea is that first, the quality software FOSS produces is available for all to use, increasing quality everywhere, and if you can, it’s highly encouraged you contribute back to it. If you can’t, the fact some piece of software was made less shitty due to their efforts is reward enough.

The problem developers see in this is a moral issue, while the DNC sees a tactical issue. More so, the tactical issue which the DNC sees here is most certainly a lose-lose scenario: either way the GOP will be the beneficiary, either by gaining access to potent campaign tools or seeing their adversary lose a dream-team of IT staff.

Because of this, the devs (and hopefully the IT companies) who were making these tools will have to either convince the DNC that their help in the future will be able to keep them well ahead of the GOP, come up with a licensing method that would make sure the GOP would not be able to feasibly use the software without facing a tech-trial grand-slam, or make a well hidden back door, allowing them to make sure that the GOP systems flop harder than Romney’s Orca tool did on election day.

Then why is Google never punished?

It is quite fine to build upon open source and adhere to the guidelines.

I’m quite fine with keeping the tactics closed. Are the coders supposed to switch to Republicans whom they hate because of this? I want this country to change and they only way it can be done is through liberals for now.

After the election, during a traditional bi-patisan summit, the GOP was amazed at Obama’s organization. Many came to take notes. Let’s keep it like that.

Then why is Google never punished?

Punished for what? Google is pretty supportive of open source projects. Yes they have proprietary code, but they also contribute lots of code back into projects. I think it’s safe to say Android and Chromium never would have gotten where they are without Google backing them and contributing. Google also provides a lot of publicity for FOSS projects, making more average folk aware can be a huge asset for the dev community.

Change America through liberals? You need a lot more than that. I am thinking more along the lines where the GOP and Democrats shrink by at least 50% with several smaller parties filling the void, forcing coalitions between several parties to hold majority. Another option would be seeing the party-system fall altogether and see individuals rise to power.

BTW I am not taking a stand on what political system would be better, just listing possible events that would change the landscape in D.C. considerably.

But in this case it sounds more like they build say an app using python that runs with Django. Unless they extended Django’s core code itself it is not quite the same thing. I would love them to release it but there are more factors involved here than just “code should be free.”

The idea of open source is not to steal other people’s source codes, and then close it down and sell it or use it for your own benefit. It’s to contribute your part to it and then share it with others that will continue to improve it.

You can’t really ‘steal’ what was given freely…

If you take licensed code and violate that license, you are stealing. The fact that it is FOSS is irrelevant.

This is also a good time to note the differences between open source software and free software. OSS just means you can view and edit the source code but free software means you can also redistribute it.

It sounds like the hybrid model the DNC has adopted is not free software, just open source software. If they used free software that isn’t properly isolated and licence in the source it could be a breach of licence to redistribute under a more restricted licence.

Except that no one is violating any license. It is amazing how many people fundamentally misunderstand how most FOSS licensing works. With pretty much every FOSS license, you are FREE to take FOSS code and tweak and customize and use it as you please. You are not obligated to share your code UNLESS you choose to distribute it (or a compiled version of it).

Taken from the official GPL3 FAQ:
_ The GPL does not require you to release your modified version, or any part of it. You are free to make modifications and use them privately, without ever releasing them. This applies to organizations (including companies), too; an organization can make a modified version and use it internally without ever releasing it outside the organization.

But if you release the modified version to the public in some way, the GPL requires you to make the modified source code available to the program’s users, under the GPL.

Thus, the GPL gives permission to release the modified program in certain ways, and not in other ways; but the decision of whether to release it is up to you.

The question here is more about a moral obligation that the coders feel…not any legal obligation. The Democratic team are not violating any open source licenses by choosing to hold onto the code base.

There is both an ethical argument for open sourcing the code and a practical one (byte rot, future recruiting.) I don’t think there are any legal issues with building off open source code and keeping the results for yourself.

To claim that breaking a license is the same as theft is incorrect. You might consider it just as bad, but it’s still not the same thing.

Many many businesses use open source code privately without contributing back. It’s a naive viewpoint to think that any use of open source software implies contributing your uses of that code. This is all very standard stuff, and the issue for developers here is they have some misguided sense that a political campaign is somehow public domain and not a private company.

If the position is public, so should be the campaign – this includes all tools.

Wait… In what sense is a political campaign not in the pubic domain? It is, ideally (in more than one sense of that word), an entity that represents the political will of a faction of people within society exerting itself in an effort to change public policy. It is about as public as it gets. You can’t blame the developers if they are disappointed that the organization that they worked for isn’t abiding by the principles they believe in, the very principles that they leveraged in aid of the organization.

View All Comments
Back to top ↑