Hi, my name is Jason Kao. I am a data journalist and developer open to freelancing. Here is some
of my past work ~
–– –– ––
Gaza Reduced to 42 Million Tonnes of Rubble. What Will It Take to Rebuild? (Bloomberg News, Aug. 2024)

Role: Asked to brainstorm coverage about Gaza’s damage, we pitched a story that would center a visualization of Gaza’s debris. I worked with several editors, reporters, and photographers to lay out the story’s flow. I coded the main interactive elements of the story.
Tools: JavaScript/Svelte for animations; R for 3D renders; Python for data processing. Photo by Ahmad Salem.
Satellite Imagery Shows Gaza’s Destruction and Resilience With War Unresolved (Bloomberg News, March 2025)

Role: Pitching, directing story flow, coding interactive elements.
Tools: JavaScript/Svelte for interactivity; GDAL for coloring and raster processing; OSINT geolocation. Photo by Ahmad Salem.
A Detailed Map Shows How Airstrikes and Refugees Reshaped Rafah (Bloomberg News, April 2024)

Role: Israel was soon to invade Rafah. Krishna had developed a tent detection algorithm using satellite imagery. My responsibility was to create a timely story using the algorithm’s output. I worked with our team to mock up and sketch the story’s form. I coded the story’s interactive elements. Jeremy helped immensely with the design.
Tools: JavaScript/Svelte for animation; GDAL for raster processing; Illustrator for annotations. Photo by Ahmad Salem.
Paralyzing Curbs on West Bank Obstruct Path to Palestinian State (Bloomberg News, Nov. 2024)

Role: We pitched a story on Israel’s increased repression in the West Bank. I designed and developed an interactive map of the occupation’s physical barriers.
Tools: WebGL for animation; JavaScript/Svelte for interactivity; D3 for vector mapping; GDAL for preprocessing. Photo by Sergey Ponomarev/Getty Images.
Satellite Analysis Shows Where Mass Graves Were Found by Gaza Hospitals (Bloomberg News, April 2024)

Role: Israel’s sieges on two Gaza hospitals had left mass graves in their courtyards. We pitched a story that used OSINT, satellite imagery, and maps to show where the graves were found.
Tools: OSINT to geolocate graves. Photo by Ahmad Salem.
Where New York’s Asian American Neighborhoods Shifted to the Right (The New York Times)
Role: Pitching, reporting, processing and analyzing data, and coding the visualizations.
Tools: Python for data processing; R for data exploration; mapshaper for generating map layers; Svelte for presentation
Body Cameras Were Sold as a Tool of Police Reform. Ten Years Later, Most of the Footage Is Kept From Public View. (ProPublica)
Role: Design and development of main interactive elements.
Tools: Svelte/Javascript for interactivity; ffmpeg for image processing
Trump Mass-Deportation Push Overcrowds Miami Krome ICE Center (Blomberg News)

Tools: Web scraping; R for data analysis; traditional investigative reporting
When the Coast Guard Intercepts Unaccompanied Kids (ProPublica & The New York Times Magazine)
Tools: Traditional investigative reporting; Python and R for data analysis
React Scrollama: A library for clean scrollytelling in React
Role: Conceptualization and development of this React version of Scrollama!
Texas’ new race and social studies law prompts McKinney school officials to cancel Youth and Government class (The Texas Tribune)
Tools: Traditional investigative reporting; FOIA requests. Photo by Eric Lee.
A Memorial for the Children Lost to Stillbirth (ProPublica)
Role: Assisted with the coding of Zisiga’s designs.
A Bird’s-Eye View of How Protesters Have Flooded Hong Kong Streets (The New York Times)
Tools: OSINT; Illustrator for presentation
Hungry, Scared and Sick: Inside the Migrant Detention Center in Clint, Tex. (The New York Times)
Tools: OSINT; traditional investigative reporting; Illustrator for presentation