Featured Work

Without Obamacare or a replacement, 370,000 in San Diego County could lose insurance

Published: 2/16/17

As politicians in Washington took the first steps toward repealing the Affordable Care Act, my colleague and I investigated the potential impact of the law's repeal on San Diego County residents. We augmented the voices of regular people, public health experts and elected officials with data analysis and interactive elements to examine what was at stake in the repeal debate. Using data from two state-level departments and the Census Bureau, I was able to show that one in nine residents could lose their health insurance. We told the story through text, audio, video, an interactive chart, a searchable database and interactive maps.

Tools used: DataTables, Excel, Highcharts, Leaflet, QGIS.

Poverty in San Diego County higher than during Great Recession

Published: 1/4/17

By crunching data from the Census Bureau's 2006-10 and 2011-15 American Community Survey data sets, I revealed that a higher proportion of San Diego County residents were living in poverty during the Great Recession's "recovery" than during the recession itself and the years that bookended it. Because I wanted to measure the changes in poverty on a census tract-level for the story and the interactive map I built for it, I had to calculate whether the change in poverty for each tract was statistically significant. I told the story through text, audio, interactive charts and an interactive map.

Tools used: Excel, Google Fusion Tables, Google Fusion Tables Searchable Map Template,  Highcharts, QGIS, SQL.

Dark money, accusations of campaign finance violations roil Lilac Hills Ranch campaign

Published: 10/25/16

I used a mix of data analysis, document digging and on-the-ground reporting to shine a light on the funds powering one side of a county ballot measure campaign. I followed the money trail behind a six-figure donation from a nonprofit with a checkered record that refused to disclose its source of funds. The donation served as a test case for new state regulations policing the political activities of nonprofits. This in-depth story stemmed from earlier reporting of mine on the hard-fought campaign and was followed by a lawsuit and investigations by California's elections watchdog, all of which I reported on. I told the story through text, audio, video and interactive charts.

Tools used: Excel, Highcharts, QGIS.

A decade later, San Diego’s living wage law quiets critics, offers enforcement lessons

Published: 9/6/16

In the midst of a contentious local debate over whether San Diego should raise its minimum wage, my colleague and I investigated the city's decade-old living wage law for government contractors. We wanted to test both whether the law had hurt businesses as its critics contended and also whether the city was adequately enforcing it. By cleaning, standardizing and analyzing several decade-old data sets acquired through public records act requests, I was able to prove that it didn't hurt city contractors and that the city had room for improvement when it came to enforcement. We told the story through text, audio, video, an interactive chart and a searchable database.

Tools used: DataTables, Excel, Highcharts, OpenRefine, SQL.

Search San Diego campaign contributions

Published: 5/9/16

A freelance web developer and I built this news app that allows users to search contributions to candidates, ballot measures and independent committees in the city of San Diego. The app automatically updates every morning with data that was previously locked away in an Excel file on the city clerk's website. I wrote custom Python code to grab the file from the web, parse and clean it and repackage it for uploading to our server. I also wrote a detailed explainer of San Diego's campaign finance regulations so users would better understand how to use the app.

Tools used: CSS, Django, Excel, HTML, Python.

New culprit in San Diego water main breaks: asbestos cement

Published: 11/10/15

Despite tens of millions of dollars in infrastructure upgrades, San Diego's repair crews are in a perennial battle to keep the city's water in its pipes. With this story, I showed that water mains in San Diego broke 306 times in a little under four years, wasting an estimated 35 million gallons of water. My analysis revealed that most breaks were occurring in a type of pipe whose replacement the city had only recently begun to address. By combining data from the city's Public Utilities and Risk Management Departments, I was also able to reveal the city had paid out nearly $9.8 million in break-related claims and cleanup fees in that period. I told the story through text, audio, video, an interactive chart and an interactive map.

Tools used: Excel, Google Fusion Tables, Google Fusion Tables Searchable Map Template, Plotly, SQL.

State lottery a gamble for San Diegans

Published: 4/29/15

San Diego County stores sell more than $300 million in lottery tickets annually. Who's buying them and where does the money go? By combining store-level sales data from the State Lottery with American Community Survey data from the Census Bureau, I was able to disprove the myth that a disproportionate number of tickets are sold in low-income areas. I also revealed how much local school districts receive in lottery money. I told the story through text, audio, a searchable database and an interactive map.

Tools used: DataTables, Excel, Google Fusion Tables, Google Fusion Tables Searchable Map Template, QGIS, SQL.

Fewer vaccinations threaten San Diego’s collective immunity

Published: 1/29/15

I reported this story shortly after the high-profile Measles outbreak at Disneyland. I showed that nearly 8 percent of San Diego County’s kindergarteners are not up-to-date on their vaccinations. I pinpointed the kindergartens with the highest vaccination exemption rate and, by combining data from the state Departments of Education and Public Health, was able to disprove the myth that it was the least-educated parents who were opting not to vaccinate their children. I told the story through text, audio, video, a searchable database and an interactive map.

Tools used: DataTables, Excel, Google Fusion Tables, Google Fusion Tables Searchable Map Template, SQL.

PACs back incumbents; just ask Scott Peters

Published: 8/24/14

By building and comparing a database of political action committee (PAC) contributions to Democratic Representative Scott Peters' 2014 reelection campaign with a database of PACs that had donated to Republican incumbent Brian Bilbray in 2012, I was able to show that one hundred PACs that had donated to his opponent in 2012 were donating to Peters now that he was the incumbent. In his 2012 race, Peters had criticized Bilbray's reliance on these same donors. Further analysis of the data revealed many of the PACs that had switched were those of defense contractors with business before the House Armed Services Committee on which Peters sat. I told the story through text, audio and searchable databases.

Tools used: DataTables, Excel, SQL.

Some entrepreneurs go begging

Published: 8/3/13

The Small Business Administration is tasked with supporting small businesses' formation and growth by guaranteeing bank loans to them. I took a look to see whether the recipients of SBA-backed loans in the San Antonio metro area reflected the region's diversity. As it turned out, they didn't. By analyzing five years of Small Business Administration data, I revealed that — in a metro area with a non-white population of 64 percent — just 44 percent of Small Business Administration loans went to minority-owned businesses. And, by combining that data with neighborhood-level statistics from the Census Bureau, I further showed that barely a quarter of loans went to businesses located in poor- and moderate-income areas.

Tools used: ArcMap, Excel, SQL.

Failure to fill spots worsened jail staffing crisis

Published: 1/27/13

Following a hard-fought sheriff's race in which departmental budget overruns featured prominently, my colleague and I investigated claims of out-of-control overtime at San Antonio's Bexar County jail. By analyzing several different data sets, we revealed the facility's staffing crisis was exacerbated by chronic absenteeism among a handful of jailers. We dug into the data to show how, over a three-year period, just 2.7 percent of jailers accounted for 12 percent of the department's 861,842 hours of absenteeism. We proved the absenteeism was mishandled by the former sheriff, forcing more deputies to work extra shifts and causing a huge increase in overtime costs.

Tools used: Excel, SQL.

In S.A., Romney gets more money, Obama gets more donors

Published: 10/14/12

As Barack Obama and Mitt Romney were on their way to raising record amounts of money in the 2012 presidential race, I investigated how the candidates were doing so in San Antonio. By analyzing contribution-level data from the Federal Election Commission, I was able to show that while Romney outraised Obama, the president had many more individual donors. Furthermore, I discovered the candidates were raising money in dramatically different ways: in Romney's case, a relative handful of donors were cutting four-figure checks while Obama was heavily reliant on many more donors repeatedly making small contributions. And, by geocoding donor addresses and combining that information with data from the Census Bureau, I was able to show that nearly a quarter of the funds raised in the race came from the wealthiest 25 census tracts in the eight-county metro area.

Tools used: ArcMap, Excel, SQL.

Local incomes don't keep up with housing costs

Published: 9/23/12

It's no secret that housing is the greatest regular expense for most Americans. With San Antonio's housing market several years down the road to recovery from its depths during the Great Recession, I set out to learn just how much of a burden rising rents and mortgage payments were for the region's residents. To get the story, I analyzed multiple sets of income, rental and mortgage survey data from the US Census Bureau. My analysis revealed that the proportion of San Antonio area households spending at least half their incomes on housing costs had nearly doubled in a decade.

Tools used: Excel, Google Fusion Tables, SQL.

Faulty pumps, fuming drivers

Published: 5/27/12

High gas prices aside, have you ever wondered whether you were getting what you paid for at the pump? I analyzed a year's worth of state inspections data to reveal that nearly one in five gas stations in the San Antonio metro area were operating at least one pump that could stiff customers, shortchanging motorists by as much as $3 per fill. Despite the frequent pump failures, my analysis showed that fewer than one in three failing stations were fined and that not a single station had ever faced criminal prosecution.

Tools used: Caspio, Excel, Google Fusion Tables, SQL.