acs-nativity: A Python Package for Analyzing Changes in the Foreign-Born Population

President Trump has made reducing illegal immigration and increasing deportations central goals of his second administration (1, 2). This is causing many people to ask: how are these policies changing the country’s population? To help answer that, I built a new open-source Python package called acs-nativity. It provides a simple interface for accessing and visualizing […]
New GeoPandas Tutorial Published on RealPython

I just published a new tutorial on RealPython: GeoPandas Basics: Maps, Projections and Spatial Joins. If you’re interested in using Python to make maps or analyze spatial data, then I recommend checking out the tutorial. It walks you through common geospatial tasks using GeoPandas, one of the most widely used geospatial libraries in Python. Map […]
When One Graph Isn’t Enough: Upcoming Streamlit Workshop

Have you ever worked with a dataset so rich, so multidimensional, that no single graph—or even a dashboard—could do it justice? That was the challenge I kept running into as a data scientist and educator. Whether I was exploring US Census trends or trying to make immigration enforcement data more transparent, I found myself wishing […]
Visualizing Border Patrol Encounters Under the Second Trump Administration

Summary: I just updated my Immigration Enforcement Streamlit App with Border Patrol data from the current administration. This post walks through what changed and why it matters. Last week, I published Visualizing 25 Years of Border Patrol Data in Python, which explored long-term trends in Border Patrol “encounters” along the Southwest Land Border. At the time, […]
Visualizing 25 Years of Border Patrol Data with Python

I recently had the chance to speak with a statistician at the Department of Homeland Security (DHS) about my Streamlit app that visualizes trends in US Immigration Enforcement data (link). Our conversation helped clarify a question I’d raised in an earlier post—one that emerged from a surprising pattern in the data. A Surprising Pattern The […]