Alex Duner

Code & Projects

Caught in the Crossfire

Medil News ServiceI reported, edited and produced this story on the Dark Web. I deployed a Tor server so that we could serve the story on the Dark Web as a Tor Hidden Service to let readers feel comfortable accessing the Dark Web themselves.


For FunI built a Twitter bot in Python that finds and tweets the entire text of Wikipedia articles that are less than 140 characters long. The source code is all on GitHub.

Exit Poll Charts

Medill News ServiceI reported a story on exit poll data from the Iowa Caucuses and created a couple charts using D3 to illustrate the data.

Editorial Cartoon Contest

The New York TimesWorked with the Times' Learning Network to build an app to showcase the winners of their editorial cartoon contest. The product is a reusable Express app that can create interactive photo galleries for a variety of purposes. I spent time optimizing the gallery for low-bandwidth connections and mobile devices.

The Outlaw Oceans

The New York TimesUsed React to improve email subscribe widget for investigative series and scheduled newsletters. Worked with audience development team to build a tool (made in Flask, deployed using Docker) to make it easier to add inline styles to HTML for email newsletters.

Parade Photo Stream

The New York TimesFor the Women's World Cup Ticker Tape Parade we revamped the "photo firehose"—a live photo slideshow that updates using WebSockets. I also built a widget that displayed the same feed on the homepage of This live stream is no longer live but we made the creation of new streams easier for future events.

Stillbirth: Your Stories

The New York TimesBuilt an Express application to display user-generated stories. The app parses JSON published by a lightweight CMS so editors could copy-edit submissions and also integrates with the Times' form builder and submsission system. The app was later used for "A Conversation On Race" which was nominated for an OJA.

NYT Intern Application

The New York TimesWorked with News Administration to create a new internship application process for the Times. Wrote Python script to process Wufoo form submissions, created a pipeline for handling application assets and redesigned the information page for mobile viewports.

Housing Guide

North by NorthwesternImproved and published annual Housing Guide. I upgraded app to the latest version of the NPR App Template, redesigned the maps to use Mapbox's newest styles and added reefers to other NBN stories that might interest freshmen. We open sourced our work. Here's the ion of the same app.


Knight LabJuxtaposeJS is an open-source tool to make comparing frames easy and seamless. Juxtapose has been used by ESPN, Amnesty International, the Boston Globe and more! I wrote about what I learned making it. Check out the source code and contribute.

Finding Closure

Class ProjectWorked on designing and developing a story with a team of reporters, videographers and photographers. I created an exploratory data visualization of Chicago forclosure rates after analyzing the data with Python. I contributed reporting as well.


North by NorthwesternDesigned and built an audio narrative about racial passing on campus. Worked with reporter to keep focus on the personal narrative, rather than on the students' appearences. Here's a link to the GitHub repo.

Diversity of Chicago Public Schools

Class ProjectI mapped how the diversity of the Chicago Public Schools has changed from 2000 to 2014 using Mapbox/Leaflet.js. I used csvkit to combine three different datasets into a geoJSON file and a script to geocode each school using the Google Geocoding API. Check out this project's source code.


North by NorthwesternI built this site using our Yeoman generator to cover a single football game from eleven perspectives, on and off the field. I worked with the Google API to be able to keep our content in a Google Spreadsheet, which made collaborating with editors and photographers much easier.

NBN Yeoman Generator

North by NorthwesternI forked the Texas Tribune's Yeoman generator to allow us to rapidly develop and deploy projects outside of our CMS. It relies on Grunt and Bower to automate common tasks and uses a set of custom Sass styles to make every project look consistent. We used it on stories like The Podcast Curriculum, Goose Fathers and Facing the Truth.

Midterm Elections Blog

North by NorthwesternBuilt with Django, the elections blog lets writers easily pull in the latest polls when writing about political races. It makes use of the Pollster API to create each post's chart. In deploying the site, I learned about nginx, uWSGI, proxying HTTP requests, and server stuff.

No Miracle Here

Texas TribuneNo Miracle Here tells the story of six Texans who have been left out of the state's economic growth. We used photos, small maps, and a responsive design to tell their stories.

Government Salaries Explorer

Texas TribuneThe Government Salaries Explorer is a Django app that lets readers review the compensation of hundreds of thousands of state and municipal employees in Texas. I did the front-end design work in Sass, worked a bit on the back-end, and used d3 to create to the histograms (which also required creating an API for the data).

Texas Tribune Pixelcite

Texas TribuneThis fork of Pixelcite (which itself was based on NPR's Quotable) was designed for the Texas Tribune to include branded images in its social media.

Texas Hospitals Explorer

Texas TribuneThe Hospitals Explorer lets readers compare the quality of care at Texas hospitals with one another and with state and national standards. I worked on the front-end design and tested the project in a variety of browsers and devices.

Lethal Drug Use in Texas

Texas TribuneI worked with a reporter to show the history of how Texas gets the drugs it uses for executions. Color-coded icons show which "lethal cocktail" was used in each execution. I used a similar template to tell a story about a court case surrounding Greg Abbott's donors.

Decade of Degrees

North by NorthwesternThe centerpiece of this story on the popularity of majors at Northwestern is this interactive data created using d3.js. The search field lets users search for and compare majors. I also reported and editited stories about specific trends we wanted to highlight.

NBN goes to Indiana

North by NorthwesternThis responsive story presentation recounts two reporters trip to Indiana Dunes National Lakeshore through photos, audio, and video.

Pizza by the Hour

North by NorthwesternIn adapting this story from print to the web, I recognized that, unlike a sheet of paper, a computer knows what time of day it is. The graphic recommends the best place to order pizza based on the time of day.

Evanston Restaurant Guide

North by NorthwesternI built this restaurant guide for Evanston using Leaflet and Mapbox. I also added a price filter. I used the same code for this satirical campus map.

Javascript Todo List

To get practice using models and views in Javascript, I built a simple todo list. You can add items, mark them complete, and delete them!

Shelves to Snowflakes

Class ProjectThese graphs made with highcharts.js elaborate a piece I wrote about library innovation for The Magazine.

Wide World of Terror

North by NorthwesternUsing the Mapbox Javascript API I created a map showing different terrorism hot-spots around the world.