Carter Pape is a reporter
for The Times-Independent
in Moab, Utah.


I started out studying computer science and physics in college, and I began working in software development internships in college, so I have both the skills and interest to program.

Some of the projects shown here support the work I do as a reporter; some of it is an outlet for my programmer impulses; some of it is both.

Here are some highlights of my completed and active projects.


NewsBot is a tool that runs scheduled tasks — chiefly web scraping — to automate some of the more rote parts of my and The Times-Independent’s workflows. Such tasks include gathering and formatting weather data that is used in the weekly print edition of the newspaper, checking for updates on investigations that we are following, looking out for new oil and gas lease sales in the area and more.

With each feature I have added to NewsBot, it has proven to be a boon to my team’s productivity. It has saved the office time by taking care of some of the routine tasks we typically face daily or weekly, affording us greater mental and temporal capacity to focus on the more important, less mindless parts of our jobs.

See the public parts of NewsBot on GitHub is The Times-Independent’s website. Prior to May 2020, I maintained the website after developing it myself and won and award for doing so.

Although the content on the site is protected by copyright, the source code from the previous iteration of the site (namely, the WordPress theme, called RedRock) has an open source license.

I had begun developing a paywall for the website to restrict access by non-subscribers via a monthly quota of free articles. The plugin, called RedRock Subscriptions, is built with Memberful, and is based on that company’s own WordPress plugin.

See RedRock on GitHub is basically a daily blog that I write for myself, my family, my close friends, and my boss.

It’s a place for me to put draft stories, partial stories, lists of links, documents, and anything else I need or want to aggregate in the process of reporting.

It’s also an outlet for formatting my own stories online. I don’t get to control the look and feel of The Times-Independent’s website, but I do get to control the look and feel of

The editorial standards to which I hold myself on are not the same as the standards to which I hold myself in my actual reporting. I and my editor vet stories between when I put them on and when they are published in The Times-Independent.

See the source code on GitHub


Praeci was a reporting project I created for presenting NC State and Raleigh news with a focus on succinct writing and attractive presentation. I built the website myself using Jekyll and GitHub Pages.

I customized a template built by Artem Sheludko, adding custom layouts and elements. I also built the site’s podcast RSS feed syndication, enabled by Amazon S3 for storage of podcast audio and by PodTrac download analytics.

See the Praeci source code on GitHub

Basic binary genetic optimization

This project was an excursion into genetic optimization. I built the original framework in Swift 2 to complete the simple task of genetically optimizing a data structure containing two floats to be as close as possible to a given pair of numbers. I later added a module that uses the genetic optimization to fit a polynomial of variable order to a set of points. I have also been updating the syntax to keep up with current Swift versions.

Swift is not the optimal language for building this tool. However, I used Swift anyway because I was interested to learn the language at the same time that I was thinking about building a genetic optimization framework.

See the project on GitHub

For a comprehensive look at my programming work, see my GitHub profile.

last updated July 5, 2021