Created a quick Serverless API and Observable notebook for this interactive knowledge test which asked users to point to Ukraine after a cabinet secretary asked an NPR anchor if she could. It received a million attempts, only 300,000 of which were from bots.
Created this progressive web app with Svelte, Material Design and Serverless to help a collective of chaotic creatives make bad deicions. Features dark mode and emojis. A work-in-progress.
Worked with data fellow Rosie Cima to analyze a universe of PACs that raised from small-dollar donors and spent mostly on themselves. Zeroed into one telemarketer's charitable solicitation operation with a reporter. Built graphics to tell the story.
To show the state of presidential money, I crunched the data behind this graphics story designed and developed by Julia Wolfe of FiveThirtyEight. The analysis used Python code and relied on a real-time SQL database of campaign finance information. It also informed the rest of filing day coverage.
Released on April Fools' Day 2020, this browser extension replaced Gmail’s Smart Replies with lines of poetry. It was enjoyed by many, including Gmail project manager Paul Lambert, who wrote, “This is amazing. I wish we had thought of it!” It was mentioned on Lifehacker and The Verge. Nearly 600 people installed it.
I released this set of flexible Node.js command line utilities designed to discover, convert and load raw Federal Election Commission filings into a database. This loads filings of unprecedented size with ease, allowing anyone to analyze FEC data in detail.
This was an ambitious multi-part series on the places and people with little political clout. I designed and developed the presentation, as well as overseeing data analysis and graphics production.
I analyzed more than 80 million records in a nearly unprecedented analysis of Congressional Democratic candidates' reliance on this fundraising platform as it became the de facto way Democrats raise money.
I built a tool that helped four newsrooms build a database of Trump officials' financial histories. This was used to report daily stories by the New York Times and Washington Post, to build ProPublica's Trump Town news app and to report an award-winning national radio story with Reveal from the Center for Investigative Reporting. It caused at least one high-ranking official to revise his disclosures.
Designed and developed the presentation for this series on the frightening near-misses in the nation's nuclear complex. Worked with an illustrator to develop a look and feel that helped tell the story.
Charted data on the growth of women's representation in politics in the 50 states as the first state reached gender parity.
Designed the presentation for this striking story on a preventable death and what it says about workplace safety enforcement.
Helped a reporting team collect, track and input data from nearly every state legislator's financial disclosure in the country, then built an app using DocumentCloud to search and view the disclosures.
Built a map using Mapbox.js to display millions of ship locations collected by satellites, found a cabinet secretary's shipping firm docked in Iran at the height of sanctions, designed graphics for the resulting story.
Used ad tracking data to map political ads airing across the country. Embedded on USAToday.com.
Analyzed FEC data to total presidential and super PAC fundraising. Built this app and updated it throughout the election.
Extracted grant data from more than 850,000 electronic nonprofit tax forms. Made an app that lets readers search for the source of money.
Designed and developed this multimedia presentation on miners dying in Australian mines in Africa. Nominated for an Emmy.
Helped the International Consortium of Investigative Journalists report the China phase of its Offshore Leaks investigation by facilitating communication and database access between a far-flung reporting team. Designed and developed a graphic to show the results, which was localized into half a dozen languages, embedded by Le Monde, El Pais, Süddeutsche Zeitung.