The Obama campaign of 2012 was known for its tech savvy. Now that the election is over, a controversy is brewing between some of the programmers who helped build the technology tools for the campaign and the Obama for America (OFA) campaign organization.
The Obama campaign was assisted by the efforts of “Team Tech, a dedicated internal team of technology professionals who operated like an Internet startup.” According to Ars Technica, one of the campaign’s killers apps was “Narwhal—a set of services that acted as an interface to a single shared data store for all of the campaign’s applications, making it possible to quickly develop new applications and to integrate existing ones into the campaign’s system.”
But now that the campaign is over, a “stark divide” has appeared between certain members of Team Tech and OFA regarding tools for collecting donations, email operation, and the campaign’s 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.” “The team relied on open source frameworks like Rails [i.e. Ruby on Rails, a full-stack web application framework for the Ruby programming language], Flask [a web application framework], Jekyll [a static site generator] and Django [a web application framework].”
But the reporting on this issue has not made clear whether OFA has any actual obligation to share the code under copyleft requirements. Perhaps it does not. Building on top of open source platforms like Ruby on Rails does not carry any obligation to release source code for applications. More likely, the disagreement is entirely one of philosophy – between an organization that does not want to enable its competitors, and software engineers who prefer to share — the same perennial philosophical divide between private corporations and the programmers they employ to leverage open source software.