A Report from the First Hackathon at the White House
F#WHHackathon 2013 Welcome Sign
What do you wear to a hackathon at the White House? This was the first question that entered my mind upon awaking on Feb 22nd, 2013. It was Open Data Day and I was attending the first hackathon hosted by the White House. Twenty-one coders, data scientists, and designers from around the country joined the White House’s development team for a day of work on the newly released API for the "We the People" petition platform.
The "We the People" Platform
We the People is an online petition platform on the whitehouse.gov website. It was launched by the Obama White House in Fall 2011. Anyone can start a petition about any topic whether it’s about passing proposed legislation (Pass the DREAM Act!) to solving health problems (Spend more money on research for childhood cancer) to foreign affairs (Recognition of the Armenian Genocide) to the snarky, jokey, kooky and conspiratorial (Admit that these petitions are just going to be ignored). It follows online petition systems in Scotland (1999), Australia's Queensland Parliament (2002), Germany (2005) and the UK (2011).
Congress shall make no law respecting an establishment of religion, or prohibiting the free exercise thereof; or abridging the freedom of speech, or of the press; or the right of the people peaceably to assemble, and to petition the Government for a redress of grievances.
-The First Amendment, United States Constitution
While the First Amendment guarantees the right to citizens to petition their government the White House added the interesting twist that if a petition garners enough signatures the Obama Administration would respond. At the moment, the threshold for a response is 100,000 signatures in a one-month period. This threshold was originally set at 5,000 signatures and then at 25,000 signatures. Perhaps because the administration was finding itself in the odd place of having to respond to some of the citizen wackiness like “Secure resources and funding, and begin construction of a Death Star by 2016”. In their now infamous response, the administration declined to pursue Death Star construction due to the prohibitive cost of Death Stars ($850,000,000,000,000,000) and the fact that they do not support blowing up planets. Responses to other petitions, such as Obama’s video response to petitions on gun control in the wake of the Newtown Massacre, have been serious and thoughtful. And still others, such as Gil Kerlikowske’s response to Addressing the Legalization of Marijuana were pretty unsatisfying and seem more like quick copy and paste jobs. Even with the higher threshold, the administration is not able to (or chooses not to) respond to all petitions that meet the requirements.
Hacking at the White House involves more curtains and suits than regular hackathons.
The purpose of the We the People hackathon was to bring together a small group of people to test-drive the new API to the We the People platform. We were charged with finding bugs, suggesting features and brainstorming creative uses. The release of an API is a significant addition to this platform. What it means is that companies, advocacy organizations and developers can write programs that display and analyze the We the People petitions and signatures. For example, what if a person standing outside a grocery store could collect petition signatures on their mobile phone? Or what if you really care about gun control and want to receive email alerts about every petition mentioning it? Or you are a researcher wondering about the correlation between signatures and voting patterns? Or you created a petition and simply want a cool petition signature counter to embed on your website? All of these use cases are possible with an API and the cultivation of a development community around it.
The Office of Digital Strategy, headed by Macon Phillips at the time, instigated the We the People platform and came up with the idea of releasing an API for developers to extend We the People. And in the case of the hackathon event, they did something really smart: they gave us access to the API a week before the event and encouraged us to start sharing our backgrounds, code and ideas in advance of the one-day hackathon. We all introduced ourselves virtually – coders, data scientists, tech folks from Change.org, a founder of github, a reporter from Yahoo.com, an accessibility expert from Filament Group, and more. And numerous developers jumped into ideas and discussion, so that by the time we actually arrived to meet each other in person we knew each other's github handles and we had a Ruby gem, a Node.js app, and statistical R package to build projects with.
The only structured event of the day was from 5pm - 6pm when we presented our projects to White House staff. Throughout the rest of the day participants sat in groups of 5-8 around tables in a room on the fourth floor of the Eisenhower Executive Office Building. We were interspersed with members of the White House development team, which was convenient for discussing features or learning more about what was going on behind the scenes. People rotated tables frequently looking for collaborators, asking technical questions and sharing visualizations.
The chatty informality of the event was punctuated by visits from high-ranking officials such as Macon Phillips, Director of Digital Strategy, Todd Park, United States Chief Technology Officer, and Steve Van Roekel, United States Chief Information Officer. Indeed it was fascinating to witness a kind of cultural collision between the informal ethos of the hackathon and the formal stateliness of the White House setting. As Van Roekel said in his opening comments to us, “Wow! I’ve never seen so many ties at a hackathon!” And it’s true - we all dressed up at least a little bit although thankfully there were some hoodies and tattoos to be spotted.
Confusing the informality-formality thing even further: when the 5-o-clock presentation deadline rolled around a parade of White House staff and officials entered the room with two cases of Miller Lite. Everyone cracked a beer. Well, not me since I was pregnant at the time, but I truly enjoyed the sight of hackers and political officials toasting their low-end beer cans at the epicenter of executive federal power.
There was a wide range of projects and user scenarios, for more photos you may view this album. A number of folks created useful developer tools like Iqbal Mohomed’s Python library and Jeremy McNally’s Ruby Gem that may help extend the API into different developer communities. Work by Arthi Krishnaswami and Jeff Casimir focused on synthesizing and communicating the API to non-specialists through the creation of curriculum and documentation.
Projects by others focused on data analytics: looking at the whole petition data set and trying to come to conclusions about patterns within that data. For example, Matt Loff’s map visualization correlated petition signatures to voting patterns by county. Yoni Ben-Meshulam created a heat graph of which topics are most and least covered by petitions (Arts and Humanities folks need to step up to the plate, by the way). He also generated a number of word clouds of individual petitions, which were fascinating to scroll through. A compelling map by Mick Thompson showed signatures by county for the site’s most signed petition - Legally recognize Westboro Baptist Church as a hate group at 341,355 and counting - to show that most of the support was coming from the Midwest and New England.
WordCloud of all petition descriptions by Yoni Ben-Meshulam Built using Ben-Meshulam's R statistical package
Other projects focused on building things for the petition creators and signers. Drew Riley came up with a dashboard to show petition creators how likely their petition was to succeed. I built an embeddable petition mapper which gives the user a choice of mapping their petition by individual signatures or by a heatmap of states that shows where most signatures are coming from. Douglas Back created a copy and paste petition monitor widget. And Erik Ogan from Change.org showed his prototype application, which would sync petition signatures from the White House platform to Change.org’s site.
A final group of projects looked at alternative methods of delivery like mobile phones, notifications and email alerts. Rob Eickmann developed a mobile app that built in the concept of favoriting petitions so that you hear when they crossed the signing threshold and when a response is issued. He also brought up some powerful arguments for developing a Write API so that groups in the field could collect petition signatures from people who might not otherwise be able to access the website. And Scott Chacon from Github built a web dashboard where a user can sign up for alerts around issues that they care about so that they are notified when a new petition becomes available for signing.
Related Issues Network Map - by Jacqueline Kazil Exploration of connected topics as study for developing a recommendation engine ("If you support this petition, you might also want to support...")
And that’s where the most “hacker” moment of the day came in.
Scott’s app had an automatic “sign this petition now” button. He demo-ed the button and the app said “Petition Signed” without going to the White House’s site, functionality that the API does not actually expose. The White House staff was slightly disconcerted, “Did that really just sign the petition?” Scott admitted that it did do exactly that.
There was a moment of tension – did his app bypass their user login functionality? Did the hackathon at the White House result in the actual hacking of their site? Scott replied that it did not – you had to be logged in via the original website. People relaxed and everything was ok again. But for a moment, the spirit of the trickster had infiltrated the halls of power.
Since the first hackathon at the White House, their team has continued development on the We the People API. Two concerns that emerged at the hackathon were addressed by further releases: There is now a bulk data download for those who want to do data analysis on the petitions in aggregate. And there is also a new Write API that is currently in beta so that applications can actually sign petitions instead of just displaying their status. The White House has hosted two subsequent hackathons, both on the National Day of Civic Hacking (June 1). For those who are wondering what to wear to upcoming hackathons at the White House, I suggest an understated black maternity dress with hot pink tights and black dress shoes. And maybe pack a hoodie in your purse just in case.