Jail on Bond
@jailonbond is a bot that informs the public about bail and racial disparities in Connecticut’s criminal justice system.
@jailonbond is a bot that tracks individuals being held in Connecticut Department of Corrections facilities while awaiting trial. It accounts for the race and the offense of the suspect and looks for racial disparities in the bail amount set by the state Criminal Justice system.
The data comes from an API, a web service that allow for data to be accessed by anyone in an organized way. The data released by the Connecticut Department of Corrections consists of “a listing, updated nightly, of individuals being held in Department of Corrections facilities while awaiting trial.” The data available goes back from the present to July 1, 2016.
@jailonbond makes exceptional use of computation in the service of journalism. The bot is intended to be a tool for criminal justice reporters that shows them trends about the incarceration flow in the state of Connecticut. It is designed to highlight patterns and outliers in the data, such as racial disparities in incarcerations and excessive bail amounts accounting for the race of the prisoner and the offense they have committed.
The bot serves journalists, keeping track of every new person held in a Connecticut facility. Every day it runs a data analysis and comes out with a brief description of each new prisoner. Also, and more importantly, if it detects that a prisoner is being held on an excessive bail amount, it alerts the reporter. After doing some basic statistic operations, @jailonbond also provides a brief report with the reasons of this concern. For example, it gives comprehensive information like:
“The prisoner has ben held on a $3,000 bail. This amount is a clear outlier as it is 20 times higher for a misdemeanor like XXX. Accounting for race, the detainee is African-American and its bail is on average also three times higher than expected. There are trends that indicated racial disparities for this kind of offense compared to white offenders.”
Then, having this information, the reporter could question the amount of bail and further investigate the case.
As @jailonbond depends on the data released by the Connecticut Department of Corrections, it follows a fact-checking process of the data, trying to account for any typos or error, especially in the bail amount quantities. A previous analysis of the data has found some errors in some registers. If the amount is extremely low or extremely high (more than one hundred times the average bail for an offense) compared to previous registers, it holds this prisoner register for review before publishing any information.
These functionalities allow reporters to focus on more important responsibilities such as reporting and investigative journalism. Every morning @jailonbond will send them a briefing, including any updates in the database and alerting them to any potential discrepancy. This bot pursues public service journalism and allows reporters to detect stories behind the data that otherwise could not be told.
Other projects:
This scrolly-telling project tracks and analyzes the average EMS response times to different kinds of emergencies in New York City. It tries to identify the barriers and black holes to ambulance response in the urban area of the five boroughs of the city.
🏷️ Python, Javascript, Leaflet
Smog, the bot, analyzes hourly the levels of different pollutants in different areas of New York city and sends an alert to the reporter when it detects an outlier, because there could be a story behind it. Also, it sends a headline and a summary with the main insights of the analysis.
🏷️ Python
🌲 Decision tree model for the elections
A classification tree model, built in R, that analyzes the sociodemographic variables that influenced the winning party in the Spanish elections.
🏷️ Python