What is CitySDK?
The Census Bureau wanted to make its authoritative data on the nation’s people and economy easier to use for software developers and data scientists. This data helps city planners and development officers better allocate their investments, businesses optimize their operations, and non-profits to understand if their programs are being successful. To fulfill the vision of making Census data as easy to use as possible in the digital age, the Census Bureau built the CitySDK (software development kit), after inspiration from a project under the same name in the EU.
A major usability gap existed in combining Census data with other datasets, and quickly getting up and running. In recent years, the open data movement has encouraged government agencies to provide their data through their APIs (application programming interfaces). Census was an early pioneer in this approach, and has over 100M API calls a month, or 4M calls per day. But often times, one dataset is not sufficient to create a web application or for data science projects, users want to combine data from different sources. An example of this is taking Census data on median income, combined with USDA data on SNAP retailers.
The CitySDK solves that usability problem by providing a toolset that abstracts multiple APIs that reside under the hood. From a technical perspective, the SDK allows for data retrieval from different silos, geocoding, caching of large datasets, and mapping – all within a simple programming approach. After an initial beta in 2015, in May 2016 Census worked with the Commerce Data Service to re-launch the product using Node JS hosted on Amazon Web Services – adding support for all programming languages.
User research with the target audience of software developers, showed a drastic reduction in “time to first prototype” from 12 hours without the CitySDK, to 3 hours after the CitySDK was built. This means that developers, data scientists, and civic innovators can now get insights from open data or build products faster than ever before.
Data outreach is a key component of the citizen experience for Census. In rolling out the CitySDK, Census set out to not only build a better product, but also build a community to make data easier to use and improve the feedback loop between the public and Census. This included launching the Census Open Source program and published guidelines to encourage community participation.