Best Practices and Coding Conventions: The NPR News Apps Team


Since its creation a few months ago, the NPR News Apps team has created a host of useful apps, maps and visualisations for the station's audience. To make the development process as smooth and efficient as possible the team established some best practices and coding conventions, which were made publicly available on GitHub last month.

The release, under a Creative Commons license, gives coders and data journalists an insight into how the team works. As the Future Journalism Project pointed out, it “helps you get a sense of NPR tackling traditional journalism issues like style consistency beyond the written copy in the modern technology.” To find out more about the release and what can be done with it, we contacted one of the authors, award-winning developer Christopher Groskopf.

The NPR News Apps team

The NPR News Apps team (Photo by Alyson Hurt)

How were the NPR news apps team best practices defined? Was there a deliberate attempt to set them out or was it more of a fluid process?

The best practices were deliberately defined out of a desire to make it easier to work on one another's code. This was inspired by a similar successful initiative when Brian (Boyer) and I worked at the Chicago Tribune.

Was it done by one member of the team or was it more of a group effort?

I wrote the initial draft and then the group discussed and amended it in order to reach a rough consensus. It is expected to change as we get more experience as a team.

What prompted the decision to share it on GitHub?

We want to be as open as possible with all of our projects and tools. There wasn't any information in the guide that couldn't be shared, so we shared it!

Fire Forecast

Fire Forecast, a real-time map of wildfires across the US, created by the NPR News Apps team

How important is it to have a set of coding conventions when working in a team?

It's critically important when you work on short deadlines. Things happen and sometimes one person has to take over for another at a moment's notice. By having each person cohere to a similar style we can jump in and out with a minimum of friction.

How strictly are the conventions adhered to?

They are new, so there isn't a precedent yet. That being said we're all human and we're all pragmatists, so I expect all of us will violate them occasionally out of forgetfulness or because it makes sense to do so.

How would you like to see other journo-coders approach these conventions?

I would like to broadcast the idea that having documented coding conventions makes life easier for news development teams. This idea has been around for decades in software development, but is less well-regarded in the Wild West of news applications development.