Inside An Open Source Force for Progressives

The Progressive Coders Network is a dispersed group of volunteers committed to supporting grassroots organizations through new software applications.


ProgCode uses video chat to organize. Source: Rapi Castillo

Volunteer software engineers built eighty-four applications for the Bernie Sanders campaign leading up to the 2016 Democratic convention. They did so on their own time, for free, and almost spontaneously—the campaign did not ask these engineers for help, they simply saw a need, coming together via Slack Channel. That channel, called Coders for Sanders, ultimately had around 3,000 members. When Sanders failed to gain the Democratic nomination, that fledgling group of volunteer technologists began the process of transitioning from ad hoc collection of engineers and designers to an established network, creating open source tools for good. Thus, the Progressive Coders Network was born.

The Progressive Coders Network is a dispersed group of volunteers committed to supporting grassroots organizations through new software applications. Since launching the network, these volunteers have breathed new life into open source, with the larger mission of lessening the influence of money in politics.

ProgCode, which has grown to over a thousand volunteer members since the inauguration, organizes primarily over Slack. When new people want to join to the network, they are required to submit an application through a short Google form that asks about motivations and skills. Applicants then participate in an orientation over video chat, before receiving an invitation to the ProgCode channel. Currently, ProgCode hosts 226 channels on Slack, has 71 active projects, and participants in at least 18 cities. Though some channels are relatively quiet, they range from location-based threads and discussions with partner organizations to projects like National Voter File, an open source database of voters, and GrassrootsPB, an automated phone-banking tool. Though focused on building tools, not movements, the network is a prime example of distributed organizing. Beyond Slack, ProgCode also leverages simple technologies like video chat and Google docs to get things done.

Using simple technologies helps the network remain transparent and non-hierarchical, two key values of the ProgCode community. ProgCode’s founding strategy document, for example, is a shared Google doc that, as of this writing, has around 200 comments submitted by several dozen individuals. Discussions about direction and even the organization’s history—some feel the emphasis on the Bernie campaign as the founding story could alienate progressive Hillary Clinton supporters—play out in the comments for all to see and respond to.

Of course, the tools just enable the potential of a virtual community. If you spend time inside the ProgCode Slack you discover that it’s more like a small town with rituals, like a daily “#team announcement” post updating everyone about current news inside the network; watering holes where people shoot the breeze about current events; a “#pitch-zone” channel where new ideas get tossed about and urgent asks for help get made; and a “#code-clinic” for geeking out on technical questions. There’s even a “#thanks” channel for expressing gratitude to community volunteers.

Building and maintaining a transparent, non-hierarchical network has not always been easy. When the network launched, it had a self-described “benevolent dictator” calling the shots. That person was Rapi Castillo, a recent immigrant from the Philippines who talks quickly but softly and is immensely proud of his identity. When he introduced himself on the Personal Democracy Forum mainstage this past June, he began, “I’m Rapi. I’m gay and Filipino. And right now, in this time and space, I need to declare that every single time I have an opportunity to.”

Castillo was a software developer on contract with the United Nations when Bernie Sanders announced his candidacy. Castillo explained in his PDF keynote that he was frustrated by how hard it was to find Bernie-related events during the primary, so in one week-long sprint of coding he created a simple hex map of Bernie-related events around the country. His map, a later iteration of which which was adopted by the Sanders Campaign and eventually showed 80,000 events, would be repurposed by Indivisible and the ACLU. Eventually, Castillo left his job to work on the Progressive Coders Network full time as an organizer-in-residence here at Civic Hall.

Castillo recently wrote about the shift from benevolent dictatorship to mature, distributed network on Medium. He acknowledges that it was hard, not just for the network but for himself. “It was my baby!” he opines when asked about the transition. But, he insisted in an interview with Civicist, “as you relinquish power, you are seeing how empowered others are. So it is a much more progressive way of looking at things because now the question is how can you get more people involved and not how can I get my will across.”

Castillo has had to change how thinks about his role in the network. Today, he serves on the steering committee of ProgCode. When he slips and describes himself as “leading” the org, he stops mid-sentence, laughs, and quips, “how hierarchical of me,” before reorienting around the collective leadership of the organization.

In addition to the personal challenges of shifting from benevolent boss to network servant, Castillo admits that the network and its productivity has changed. “Having a collaborative decision-making model makes it slower,” he says. “But the net positive of it, of accountability and transparency and empowerment trumps [the negatives], especially if we’re working on this kind of distributed volunteer model, of having that kind of capacity for people who are contributing to be able to have that kind of say on the direction of the community and not rely on a central figure.” For Castillo, it is crucial that the way the network operates reflects its progressive values.

Castillo also argues that part of what facilitates this spontaneous and transparent culture is its commitment to open source, another pillar of ProgCode’s strategy. Everything that ProgCode builds is open to be repurposed and reused. The code is on GitHub, the tools are free and open to organizations that share the network’s values. For Castillo, a “culture that creates or encourages instigators to instigate, [where the] instigators are organizers or fellow developers who are really in tune with the community and asks the community, hey I see this problem, who wants to come solve this with me…would not have been possible if it weren’t for the open source culture already existing.”

Embracing open source is also part of the strategy behind the network’s larger goal of lessening the influence of money in politics. Castillo argues that building open source applications allows grassroots organizations to get more for less. By using an open source platform, these organizations can avoid, say, paying $5,000 a month for an enterprise license, making them less reliant on corporate interests.

Not all members make this explicit connection between open source and reducing the power or importance of private interests. (Though all seem to agree on trying to curtail money’s damaging interests.) For Dave Mahler, a volunteer who runs the weekly orientations, the technology itself lessens the need for ad buys and soundbites by allowing grassroots organizers to get their message out in other ways. They might use a ProgCode product to coordinate a phone campaign or share targeted emails to supporters. For Mahler, the network’s applications help grassroots organizations increase civic engagement. “If people really get to know their politicians and communities and what they stand for,” he says, “those [campaign] ads and soundbites become less compelling.”

In addition to supporting grassroots organizations around the world, members of the Progressive Coders Network have collaborated on local initiatives like the Progressive Hack Night in New York City and a universal health care Action Blitz, a hackathon-like event for a local health care initiative, which was hosted at Civic Hall in June. The Hack Night occurs biweekly, bringing together a coalition of New York-based groups like #GetOrganizedBK and the Resistance Media Collective. Though the groups are not part of ProgCode, Castillo is on the steering committee of all three projects.

The Action Blitz was a day-long event in partnership with Physicians for a National Health Program and Healthcare Now! During a two-month preparation period, the event leaders identified organizational needs to give guidance to the engineers and designers who would attend. The organizers attempted to strike the right balance between giving the participants enough direction to yield impactful and strategically important results while not demanding too much of their nonprofit partners. As a result, the blitz churned out social media assets, user stories, and videos through OnStack, as well as three to-be-published tech applications: a health care cost calculator, stories map, and health care status map.

Like other hackathons though, the Action Blitz has struggled with follow through. Leonard Rodberg, the research director for the NY Metro Chapter of PNHP expressed his gratitude for the blitz participants’ help, but also pointed out that none of the applications were finished. It was unclear to him how or if the calculator or status map would be completed, though he indicated they would be incredibly valuable to his organization.

Rapi Castillo told Civicist that the tech applications are scheduled to launch at the next gathering of the Progressive Hack Night on June 18.

This disconnect echoed the communication challenges that Rapi Castillo had highlighted when discussing these initiatives. For Castillo, effective communication is a key to making open source applications work and improving communications and outreach are important goals for the progressive coders involved in all three initiatives. A pending round of funding will allow ProgCode to help “people learn more about how to start their own maps or how to start their own phone banking applications,” Castillo said. “We’re in every conference, we’re thinking of creating these pamphlets…letting them know about all the applications that are being built, how to use [them], how to fork [them], or how to create a clone.”

As the network churns out more code, its primary challenges are organizational, from maintaining a commitment to democratic decision-making to communicating outside its ranks. Yet, the momentum started during the Bernie campaign shows no signs of slowing down, and as ProgCode works out those organizational bugs, they are likely to remain an open source force for progressives.

Correction: The original version of this article stated that the Progressive Hack Night and Action Blitz were generated by the Progressive Coders Network. The text has been edited to note that these are separate organizations formed by members of ProgCode and have no relationship to that group.  The article has also been updated to reflect the scheduled release of the tech applications begun at June’s Action Blitz.