Digital journalist Lucas Timmons on the automation tool that’s here to help reporters in Canada cover #elxn43 with easy access to data and computer-generated summaries

Automation conjures up fear among working journalists who worry about the prospect of computers replacing them. For many, it represents a future with more layoffs and fewer jobs. But it doesn’t have to be that way. 

At The Canadian Press, we are using automation not to replace reporters, but to free them to do more interesting and vital work. Over the past two years, I have created tools to increase productivity, to help our reporters spend less time doing tedious work so they can focus on the types of stories that computers can’t write. 

We launched our first automation tool, a Canadian Hockey League story generator, before the 2018-19 season. It takes the boxscore from a hockey game, analyzes the data and writes a 100-word game summary. The analysis includes determining if a game was a shutout, a blowout, if an individual player has an amazing game and other important events. It then writes a story that leads with the most important information.  

We also debuted our much-loved @Elxnbot on Twitter in May 2018, before the Ontario election. Elxnbot, and his French counterpart @robot_electoral, automatically tweet out election results and send links to our client’s websites when someone asks for a map, helping automate work for our social media teams in English and French on busy election nights.

Our latest project is the most exciting so far. It will significantly enhance CP’s federal election coverage while giving our reporters more time to work on in-depth reporting and analysis. It is also the first of our automation tools that we are offering as a product to news outlets. 

What reporters see the first time they start a conversation with the research bot.

The election research bot is a Slack-based tool that automates finding detailed demographics and past results. Using a direct message conversation, reporters send the bot questions about a riding and get back answers. Programmed in JavaScript, with a Node.js backend, the program connects to Slack’s real-time messaging API and listens for any reporter input. The bot queries a custom-built, in-house API that stores the 2015 election results as well as all the census demographic data, by riding, from the 2016 census.

I chose the conversational method to help remove a tech barrier. Reporters who might be inexperienced with or intimidated by massive data tables can use the information with no need for database or Excel skills.

Queen’s Park reporter Allison Jones has already started using the bot to help her reporting.

“The timing of the election bot couldn’t have been better,” said Jones. “The memo about it landed in my inbox as I was desperately trying to navigate Statistics Canada’s website on my own to gather information for some riding snapshots that I’m preparing ahead of the election. “With a few simple commands, I had all of the information I needed in seconds. Since it also has the information on each riding’s 2015 results, using the election bot saved me so much time.”

A selection of the results that appear when a reporter asks the bot for data in overview mode.

Reporters can ask the bot to return data in four different ways.

  1. In overview mode, the bot responds with a detailed overview of a selected riding, including current MP, 2015 election results and top-level data about population, housing, languages, income, households, education and mobility. 
  2. Detailed mode lets reporters ask for expanded information from the top-level data in overview mode.

    A sample of the data returned when a reporter uses the detailed mode to ask about population.

    For example, overview mode will tell you that the population in the Newfoundland riding of Avalon was 86,494 in 2016, which ranks as 285th overall. Detailed mode will break down that population into male and female by age groups and subgroups. It can tell you that there are 2,020 males aged 70 to 74 years old.

    The beginning of a comparison of two ridings in the research bot’s compare mode.

  3. Compare mode takes two ridings and shows their top-level data side-by-side for easy comparison across different demographics. It also ranks and averages the data, allowing for comparisons. This is something reporters couldn’t do without downloading all the data for each riding.

    The first four paragraphs of a summary the bot writes in story mode.

  4. Story mode writes a 700-word summary about the riding. The wording of the story changes based on demographics of the riding. This text is ready to be dropped into stories for added context.

My automation philosophy is to save humans from doing the repetitive work that computers excel at. CP employs some of the finest reporters in the country. Freeing them up to do more reporting instead of creating valuable but tedious content not only makes our journalism better, but also provides more value for news outlets across the country that use CP’s content.

The future can be scary. But by embracing automation as something that can help us do our jobs better, rather than opposing it out of fear, we can make it work for us.