Alex Duner has mapped the diversity of the Chicago Public School District over time, created an open-source tool to compare photographs taken in the same spot, and developed an interactive app that recommends the best place to order pizza, based on the time of day.

He’s done all of this while juggling a full class load at Northwestern University, where he’s a sophomore, and working as a student fellow at the Knight Lab. Over the past four years, Duner has built just under a dozen news apps that have helped students at Northwestern University report and tell stories in new ways.

I wanted to talk to Alex because I always point him out to aspiring journalists. #adviceforyoungjournalists: Watch Alex closely. Before graduating, he already knows most of the people working at the intersection of journalism and tech. Sometimes he asks them for advice and they respond -- and quickly. How did this happen? Largely through Twitter, where Alex continually engages in conversations, and through Github, where he makes all of his code public.

Alex is constantly thinking of new ways to tell good stories. He’s also really, really helpful if you’re a journalist who is thinking about learning how to code. Alex is always available to answer questions and will often point you to really good resources. I wanted to find out how he gravitated toward journalism, and what tools he uses to consistently do such good work.

Alex Duner, submitted photo
Alex Duner, submitted photo

MK: You’re really smart. Out of all of the things you could have coded, how did you decide to focus on building apps and tools for journalism?

AD: In 2013 I wrote: “Determining how to most effectively convey that fact or story to an audience is a stimulating and enjoyable challenge.”

I think that still holds true for me today. But I think that over the last year and half, I’ve grown to love the community of people in the journalism/tech community. I think the community is one of the reasons I have continued to immerse myself more in this intersection of media and technology. The work is enjoyable, and projects change quickly. So if one project isn’t the most exciting thing, by the following week you might be working on something totally different, depending on what’s happening in the world. This also means that you are constantly learning new things, which can keep someone like myself, who can get easily bored, stimulated and engaged.

Working in journalism isn’t the only avenue to do meaningful work, but I think it’s a path that can lead to working on projects that can make a difference.

MK: I really like your pizza app. You realize that people might want different types of pizza, depending of the time of day, and so the app recommends different restaurants in Evanston -- depending on the time of day. How did you come up with that?

AD: The story behind the pizza app is actually a bit unique. Every quarter North by Northwestern publishes a print magazine, and each quarter we try to adapt some of the stories to the web, beyond simply publishing the text. There was a story in one of the magazines which was a simple graphic with where to order pizza and when [to order it.] In looking at stories we could quickly reimagine for the web, I thought about the fact that, unlike a piece of paper, a computer knows what time it is right now. It wasn’t that hard to sort the list of pizza places based on the current time. It’s simple, but fun and useful.

Screen Shot 2015-03-02 at 12.06.12 PM

MK: Do you often think about variables like time when you do your work?

AD: To be honest, we haven’t thought much about time beyond that particular project (although we should!). And, for what it’s worth, we probably didn’t do enough to think about time on that project. We assumed that everybody reading it is in the Central Time zone, which is probably true, but maybe creates some edge cases worth considering.

MK: You make a lot of what you do public. What’s your reasoning?

AD: There are a number of reasons why North by Northwestern’s journalists make [our code] public. We’re a small (but growing!) group of people, so we can do more if we work in the public. We have a GitHub page where we’ve started posting the code that we work on. We rely a lot on open source projects, and so we like to participate in that community as well. Also, having a place where people can see the code is a great way for people who want to start working on interactive projects can get inspiration and get some help.

When you are working from a dorm room, you don’t have the ability to just ask the person at the desk next to you for help, so I often turn to Twitter, which means working in public. The community of news developers is so helpful, especially to students; knowing that if I tweet a cry for help, I could get an answer from someone who works at The New York Times or NPR is really cool.

And lastly, I’ll admit that there’s a small, somewhat selfish aspect to it. As a student, I’m keenly aware that in a few years I’ll have to find a job. Working in public, tweeting about the work that we do, asking for help and working in public, is a way to get noticed.

MK: Did you code before college? How did you learn?

AD: I coded a bit before college. In high school I took a beginning web design class—we learned Dreamweaver and Flash—but I tried to learn a bit more outside of class by reading sites like Smashing Magazine and A List Apart. I think that even though I wasn’t writing code very often after that class, reading those sites helps to teach me the vocabulary and the scope of what’s possible. For example, when I wanted to try animating something, I knew there was something called CSS Animations that I could investigate more, even if what I had previously read confused me.

I also put together a (now, mostly defunct) blog using WordPress, and then this flat-file CMS called Statamic so I learned a little bit about putting things on the Internet.

The summer after senior year I also read Eloquent Javascript to try and teach myself a bit more about making Internet things. I probably understood about a third of the book, but it was still a good learning experience. I knew enough code to think it might be something I’d want to do a lot more of in college.

MK: What’s your workflow like? What tools do you use to make your life easier? Software? Hardware?

AD: I spend most of my day writing code in Sublime Text. Reading tweets in Tweetbot on both my phone and on my desktop. I write almost everything in Byword, a great app for Markdown editing. I also really love Alfred, a great little app that lets you search for files, run scripts, and control your computer with hotkeys and simple commands. I listen to music in Rdio and listen to podcasts in Overcast. Slack is such a great way to keep up with what’s happening in the Lab and on a two-semester long class project. I am also in a Slack group that has about twenty to thirty people in it who I’ve met over the course of the last couple years where we have channels that range from Doctor Who conversation to a monthly book club.

I’ve tried just about every todo app out there but I always end up just using a Field Notes notebook that I keep in my back pocket. I also always have one of these pens in a pocket (I have really small handwriting, and I absolutely love these pens).

MK: Who do you follow to stay on top of what’s going on in news?

AD: I probably follow too many media people on Twitter, but I get a good sense of what’s going on in the industry just from checking Twitter. Following the conversations of people who work where I might want to work someday is a great way of staying up to date with changes in the industry. I also try to visit a wide range of sites in my daily news consumption to get a sense of how different organizations might be covering the same story, how their coverage differs, and to get a sense of what their approaches are. I think that Nieman Lab is also great resource for staying on top of what’s going on in news.

MK: You’re taking a class right now where you’re building out a news product. Can you talk a little bit about the process?

AD: I’m in a class right now called NUvention Web + Media. It’s a two quarter long class where we are split into teams and have to create a product and business, and at the end of each quarter we pitch to venture capitalists as our final project.

It’s been really interesting to learn about audience development, conducting interviews with potential users, and watching as our idea has changed over time—we’ve gone from a tool for publishers, to a social network, to something else entirely. It seems like when we work on stories, we have a pretty good idea of what the project is, but over the course of this class we’ve done a lot of discovery and audience development to figure out what we’re making beforehand.

It’s also been eye opening to think about things from a business perspective, which presents a different challenge as well. It’s also been a challenge to learn how to take different advice from lots of people, some of whom are responsible for our grade, without losing sight of what we want to make and why we want to make it.

MK: You also write really well. How does approaching code with a journalist’s eye help you?

AD: I’m not sure what the relationship is between the way I write code and the way I write stories. I’d like to say that approaching code with a journalist’s eye helps me to think about why each line of code is there, how it helps tell the broader story of the app, or something, but I don’t think it’s a clear relationship.

MK: How do you get your news?

AD: I get most of my news and other “content” (ugh, gross word) from Twitter. I probably follow too many people, but when I have the time to devote to Twitter, I can be reasonably sure that I’m going to see all the stories that matter to me and/or are important to the world. When it comes to reading more traditional news stories, I find myself on The New York Times, Buzzfeed News and Vox the most often. There are certain people who I’ll read basically anything they write or share. I also really like the NYT Now app, it’s a great way to get a quick summary of the day’s news. I’ll open it a couple times a day and scan the headlines.

I subscribe to probably 30 or 40 podcasts, although I don’t pretend to try and listen to all of them each week. Most of them are less “news” focused, but instead tell interesting stories or are conversations between interesting people. I also listen to a bunch of pop culture podcasts about specific shows that I watch. (I’m quite excited for A Cast of Kings to return when the new season of Game of Thrones starts in April).

I also occasionally use RSS, though not as much as I did back in the day when Google Reader was around (Feedbin is my RSS reader of choice). Twitter has mostly replaced RSS for me.

Over the last year I’ve also really gotten into some newsletters. Dave Pell’s The Next Draft is really great, as is Rusty Foster’s Today in Tabs. Another newsletter I’ve been really enjoying recently is the Editors Picks from, there’s always something there that I missed that’s worth the read. I tend to rely on the newsletters on days where I’m busy and don’t have the time to keep up with Twitter all day. I couldn’t tell you the last time I picked up a newspaper or watched cable news.

MK: What will you miss about Northwestern?

AD: To be blunt: the Knight Lab.

MK: If you were giving people who might be interested in learning how to code one bit of advice, what would it be?

AD: I think one of the most important things when you start to learn how to code is to have a project you can work on. It doesn’t have to be a particularly lofty goal, but having something you set out to build gives a lot of direction towards your efforts. After building JuxtaposeJS, I wrote in a blog post:

“A lot of this advice may sound familiar — I’d heard it many times before. It’s not new and it’s not that original. But the only way I could learn them, was to build a part of JuxtaposeJS, fail, and keep going. Which is the most important lesson, I guess. Build things. Build things. Build things. Build smaller things, then medium sized things, then bigger things. Because the only way these ideas ever start to actually mean something is by building things yourself.”

At the Knight Lab, when students come in who want to learn how to code, the curriculum-of-sorts we’ve developed has building a personal website as that goal. It’s also really easy to become overwhelmed by how much there is to learn (especially because the more you learn, the more you realize you don’t know). So by focusing on a specific project, it can help you to focus on the immediate challenges, and be less daunted by the mass of information.

The second thing I’d suggest would be to get good at Google (a fellow student fellow at the Knight Lab wrote a great post on this topic).

MK: What are some news apps that you like? Why?

AD: There’s so much good stuff being published every week that it’s so hard to pick. NPR’s “Life After Death” was a recent piece that was just so, so good; the interface got out of the way of really powerful photography and audio clips to really take you to a different part of the world and immerse you in the story (an effect which I think has been achieved in many of their Look at This stories as well).

ProPublica’s Losing Ground and Moonshot were similarly great, and used multimedia and visuals to compel me to read a long article that I otherwise wouldn’t have read.

I also really love projects that can have a bit of fun. When you win the LA Times’ Oscar Bingo confetti falls! And the New York Times’ “Spot the Ball” during the World Cup was a fun challenge.

MK: In smaller or more resource strapped newsrooms, there aren’t developers who can put together some of these complex projects. But you’ve developed several tools that can help people enhance their reporting without coding skills. Could you talk a little bit about that?

AD: First, at the Knight Lab, we try to make tools that can help people tell better stories without needing to code (or, at least, with a very small learning curve). I worked on JuxtaposeJS to help people compare images without any code.

At the student publication I work at, North by Northwestern, we try to put some of the ideas into practice. One of our developers, Nicole Zhu, put together a guide for our editors to explain the range of interactive options that we can utilize. It’s been a great way to get editors thinking about interactivity and alternate ways of story presentation. We benefit a lot from the open source work that other newsrooms release.

We encourage writers and editors to use tools like Datawrapper or Chartbuilder to make charts and graphs. We use Knight Lab tools like Timeline, SoundCite, and Juxtapose. And we have some custom versions of the quiz tool that Vox Media open sourced as well.

In the fall, I’d forked some work done at the Texas Tribune and set to work automating large chunks of the news app development process. It was great! But then a friend came—someone who knew some HTML and CSS—and wanted to use the generator as well. It took over an hour to install Homebrew, Git, Node, NPM, and Bower and then another hour to explain how the generator worked. Which was also great!

But over time more and more people wanted to try using this thing but either they or I wasn’t patient enough to sit through an hours long installation process. Since then I’ve been thinking a lot about how when our paradigm is automation, we exclude people in the newsroom who want to tell better stories on the web without spending hours learning to code. When we think about empowering reporters and editors, we can make a bigger difference.

So we’ve developed some simple templates that any of our editors can use to tell stories, by just modifying a bit of HTML. Things like Weekly One Liners and our audio series oNe are great examples of that. When I saw an editor modify an entire feature layout I had created for a previous project and published this without ever contacting me, that was a good day.

Correction: Alex Duner is a college sophomore, not a college senior.