Build a New St. Louis

Build a New St. Louis

Organisation: St. Louis Post-Dispatch (United States)

Publication Date: 03/19/2016


Size of team/newsroom:large


St. Louis is fragmented. In St. Louis County, for example, there are 90 municipalities, 81 municipal courts and 57 separate police departments. In the months since the shooting of Michael Brown in Ferguson, the effects of this political division have become clear. Our editorial page editor, Tony Messenger, wanted to write an editorial inviting St. Louisans to imagine what St. Louis might be like if we started from scratch, if we built a new St. Louis. He asked if I could put together some sort of interactive that might let our readers experiment with redrawing or recreating St. Louis. We had limited time and resources, but I was able to build an interactive that lets readers merge existing municipalities to create larger blocs or burroughs. The app generates new names, using fragments of the merged cities' names. Some of these new names are really sublime, like "Richster Heights" or "Wildballfield." The app also recalculates demographics and per-capita income for the newly merged municipalities. In this way, readers can strive to build more racially or economically balanced cities if they wish.

What makes this project innovative? What was its impact?

This interactive is unique for us because it came out an editorial idea, rather than a straight news reporting or feature impetus. We published the "Build a New St. Louis" app concurrently with an editorial written by Tony Messenger and the editorial board, calling for a re-imagining of our region. This was the ultimate piece in a long line of editorials Tony had written calling for greater cooperation and consolidation in our region in the wake of Ferguson. On a technical level, I had never seen a mapping app online that did quite what I wanted to do in terms of merging cities or shapes on a map. I had to come up with some techniques for keeping track of municipalities that had been merged, and recalculating the demographics, as well as an algorithm to create new municipality names by breaking up the existing names and recombining them.

Technologies used for this project:

I used QGIS to produce boundaries for the municipalities and unincorporated area of St. Louis County. The source data files came from the U.S. Census. The interactive itself was built in Javascript, using the D3 library and its topojson extension. I found that the library offered a topojson.merge() method, which would let me achieve the affect I needed. At a higher level, though, I need to keep track of which merged municipalities were merged, so that I could let readers un-merge if they didn't like how things were shaping up. I came up with a way of storing lists of the municipalities to be merged as JSON objects. I took the demographic data from the American Community Survey. I stuck with per-capita information, so that it could be recalculated. Because we were hoping this app would spur a larger conversation in the community, it was really important that these user-generated maps could be shared. We haven't done a lot with storing user-generated content, and don't have much infrastructure here for doing that. But I found an experimental free service which let us store and retrieve JSON blobs: I generate an ID for the user, then store their merge into the database. If the user gets to the app via a shared URL, then we display the ID for that particular map. The decision to let the maps be shareable dictated the way we approached naming new merged municipalities. Initially we were going to let users write their own names. But in the aftermath of Ferguson, there was a pretty good chance that some would abuse the app with racial epithets and the like. That led us to write an algorithm for creating new names from pieces of the old names.
Follow this project

Comments (0)

You have to be connected to contribute

You have to be connected to follow

Leave this project and no longer be informed about this project

By joining this project, you will be informed by email when an update or a new contribution is posted on the website.

Thank you for your active participation !

The GEN Community Team