You are not logged in. LOG IN NOW >

How McCain's Website Can Beat Obama By Becoming a Platform

BY Patrick Ruffini | Saturday, June 7 2008

Barack Obama's Internet operation is beginning to resemble a mid-sized tech startup with 8 figures of Sand Hill Road money more than it is a political campaign. The Obama Internet team hit the ground running with ten staffers in February 2007, including Facebook co-founder Chris Hughes. Don't be surprised to see them recruit more tech and data geeks for the general, including former Clintonistas and from Silicon Valley.

Their raw work product -- even beyond the stunning online fundraising results -- is impressive. One of my hobbies since January has been taking screengrabs of every interesting new page or feature on the candidate websites and posting them to my Flickr account. The threshold for inclusion was simple: pages that in my experience as an online staffer took more than a few man-hours to produce. This is a living archive, even the deep-linked pages 5 or 6 levels down, that will go on long after the sites are taken down or redesigned. 

The level of detail on the Obama site is nothing short of phenomenal. You've got individual microsites built for Pennsylvania Neighborhood Teams, West Virginia Faith Captains, Oregon Community Organizers This is not stuff plopped in off some template, but stuff that only a large team can produce.

John McCain is never going to have the resources to do this kind of deep dive on his website. But he doesn't have to.

One of the lessons of Web 2.0 is that if you providing the right tools, the developer community and even ordinary fans can build it for you. The vast majority of activity on Twitter, the recently overwhelmed microblogging service, occurs beyond Twitter.com. That's because Twitter opened up an Application programming interface (or API) to allow external applications to leverage Twitter data and login information. Facebook's Platform is a more mainstream example.

To get the most bang for its online buck, the McCain campaign should be the first political campaign in history to release a website API.

What can an API do for the McCain campaign?

A McCain API would allow developers to leverage JohnMcCain.com data -- including everything from news feeds, user information, login access, and donation statistics -- to create mashups and recruitment tools the campaign doesn't have the time or resources to create on its own.

Take a real life example. Many have commented on the lameness of McCainSpace -- the site's faux social network. To create a fully featured social network with five months left to go would be cost prohibitive and pointless -- if the campaign did it.

But given access to the right information, a developer could quickly bootstrap their own social network of McCain website users (or just the useful features -- Groups and Events). Or better yet, mash up the McCain API with Ning or a Facebook application to allow supporters to broadcast their activities on JohnMcCain.com to their real social network. How great would it be if my Facebook news feed could update with "Patrick Ruffini has just contributed to John McCain" or "Patrick Ruffini has just recruited XXX as a McCain supporter"? Or to automatically share your JohnMcCain.com activity stream -- including signups, donations, petition signatures, and recruitment actions, with a preset list of address book contacts?

I could see a few different pieces to a McCain API...

McCain Contacts API

The McCain Contacts API would allow user lookups in a secure and limited manner. Type in a ZIP code, and get the 25 or 50 supporters closest to you. Or upload your address book, and see who else on your list is signed up on JohnMcCain.com so you can make a connection and create a mutually reinforcing circle of support.

Geocoding would enable a the creation of a user generated campaign events application. The Party for the President tool was one of the most successful things we did on the Bush website -- generating over 30,000 house parties created online with 500,000 attendees. Better still, these numbers beat anything the Kerry campaign did, speaking perhaps to conservatives' desire to gather socially in offline settings.

Perhaps because the McCain operation has been relatively small through the primaries, we haven't seen a tool like this brought back. But an external developer could do it for them. And in many ways it could be better. The central campaign organization will never be fully aware of every sign waving or 1-4pm volunteer shift at the local county headquarters to post on the website. But the crowd could be. And, acting independently, they could create a clearinghouse for all Republican campaign activity in the country, and leverage tiny bits of the McCain/RNC database to drive supporters to these events at a hyperlocal level.

Naturally, user lookups would have to be throttled to prevent mass downloads. E-mail addresses could never be visible through the API. If you want to contact someone, you have to go through a web form like Facebook, or have the application do it automatically. Lookups could be metered by IP address or API key.

McCain Actions API

Record every action you take as a registered user JohnMcCain.com and have this made available an XML feed that can be repurposed for blog widgets, email, or social networks. Use this to create a viral recruitment component to every action. If I choose to share the fact that I signed the petition asking Obama to go to Iraq, I get credit for anyone who clicks the link back and signs. "Patrick Ruffini signed the Obama petition and got 30 people to click through and 15 to sign." The McCain campaign would not necessarily need to spend time building the front-end interface to document this activity -- just provide the parameters to users to report back on a successful viral action. Nice URLs like this would give me all the information I need to know: JohnMcCain.com/Petition/ObamaIraq?recruiterid=3653431&recipid=14253943.

McCain Donations API

The first example of a candidate (unintentionally) providing API-like functionality to its supporters was the live feed of Ron Paul donors that fueled the moneybombs. The Paul campaign had a Flash graphic on their homepage showing up-to-the-minute fundraising totals and the latest number of donors. In Flash, data like this is passed through an XML file -- the same sort of files that powers RSS feeds. This file can be grabbed periodically and its contents stuffed into a database. RonPaulGraphs.com sniffed out this XML file through a view source on Paul's homepage, and the result was unprecedented minute-by-minute visibility into Paul's fundraising operation.

Only with this level of minute transparency could the moneybombs have happened. Supporters could instantly see in early October that Paul was far off the pace. Instead of getting discouraged by a poor result, they were galvanized the help Paul catch up and then some, organizing the Guy Fawkes Day moneybomb, then Tea Party '08.

I've discussed before how similar visibility into McCain's fundraising data would create a rallying effect among supporters. Instead of endless emails hawking high-end swag, the campaign could fundraise more efficiently by turning internal fundraising statistics into a piece of content supporters could congregate around and remix. A live donations feed could help do that.

Is it secure?

Obviously, the highest level of security would have to surround something like this. Applications could take limited downloads of the McCain data but could not modify it. Huge downloads would be prohibited. Like Facebook, apps would undergo an approval process. Pre-approval, data feeds would be sandboxed so you could only test with fake user or actions data.

In general though, APIs can enhance web security by creating a structured interface for querying the contents of a database. API developers ultimately control how and why their data gets used.

Who would use it?

The GOP doesn't exactly have a surplus of talented coder geeks. So who would use something like this?

Perhaps the most fruitful use would actually be from developers or firms close to the campaign. In other words, it could be more of an internal tool than an external tool. Contractors would not have to share massive, dated Excel files anymore. Trusted developers could be given access beyond the 25, 50, or 100 record limits. Allied firms could create web apps on top of JohnMcCain.com -- either commissioned by headquarers, regional organizations, or for demonstration purposes. And for anyone who works in the technopolitical space, the opportunity to play with a Presidential campaign data, even a small sliver of it, is one you don't pass up.

Just beyond this is are the commercial firms that try and sell in the political space. They could use apps built on this data as a real-world proof of concept to skeptical buyers.

But the most compelling use could be some sort of contest for allied or grassroots developers to get your application featured or integrated on JohnMcCain.com, with some sort of financial reward or buyout. Also, developers could be required to place a McCain donation link on their apps -- with the developer getting a cut.

What it means

We've heard often that campaigns can no longer control their message. The successful ones get a cacophony of supporters talking about the candidate, and then sell that story to the media. Obama's crowds, more than his message, are the story.

APIs are a logical extension of that trend. The message is devolving to the users. And so too will the infrastructure used to deliver that message. People are building viral support networks on Facebook, Twitter, and all sorts of social networks. There is currently no way to fuse that activity with actions on an official campaign site. Someone joining a McCain Facebook group is opaque to the campaign. This goes a ways towards solving that problem. 

I want to get this out there because I think Obama will do something like this before the campaign is over. And maybe there's a small window for Republicans to get ahead of it.

Crossposted at The Next Right.