The progressive movement is awash in high-tech software, from decades-old industry leading constituent-management tools from EveryAction to relatively young relational organizing tools like Reach. The vast majority of that software is proprietary; we lack a really healthy culture of open-sourcing our code. We need to turn that culture around, and embrace open source mechanisms for several key reasons: first, because it allows our campaigns and movements to adapt to special circumstances more readily; second, because it allows us to generalize and share programmatic strategies across campaign cycles; and third, because it attracts top-flight software talent, thereby allowing us to operate more efficiently.

We should also be aware of some reasons we should not embrace open source software. First and foremost, it is not a good avenue for sharing data. Second, it is not a good way to provide cheap solutions to down-ballot campaigns and budget-strapped non-profits. Finally, it is not an intrinsic good unto itself - in other words, we should not embrace open source mechanisms for their own sake, especially when they degrade our progressive mission or undermine programmatic goals.

We can understand open source mechanisms, in this context, somewhat broadly. Classically, open source software is software whose underlying code is made freely available to the public via some kind of license, such as the MIT licence or the GNU Public License. But short of this strict definition, there are other mechanisms for sharing software that still meet our overarching goals. First, there are robust, well-defined APIs, typically exposed via HTTP and occasionally eventing systems like Apache Kafka. Second, there are extensibility mechanisms - things like app stores, plugin marketplaces, “hooks” in front-end Javascript applications, and so on. Finally, there are open data environments, which are particularly well-suited to sharing curated public data, or anonymized proprietary data. We should employ all of these tools in service of our broader progressive mission.

In a future post, we’ll take a look at how we can effectively embrace open source software, specifically with the creation of an open source program office for the progressive tech sectore.