For background, Arrested DevOps is a podcast focusing on DevOps related topics. We’ve been around for almost 2 years, and are well-known in our space with an excess of 5,000 listens to every episode.
We began life as a Jekyll site (for about two months) before I moved us over to WordPress in the beginning of 2014. Over time, the overhead of running WP was too much, and it was definitely causing challenges with getting show notes imported (especially from other co-hosts who didn’t want to have to learn/futz around with WordPress). One of my co-hosts who joined us in Oct 2014 started asking almost immediately for a change where she could write show notes in Markdown and then submit them via git commits.
About two months ago (I think, maybe less) I decided it was time to move us to a static site generator hosted on Github pages (this saves us the equivalent of $75/month or so in hosting fees which are directly paid by one of our sponsors, so moving off of this means I can charge that sponsor what our other sponsors pay, which is a lot more).
The first commit to our new site repo was on August 29, and we officially went live with it today. I learned a lot about Hugo (and a little about Go) through the process, and we definitely have a long way to go before we have all the fancy features that I want, but we are live with our MVP.
Some notable Hugo features we are using:
- All guests are stored in data YAML files (we are a panel-based show, so there are different guests for each episode, but there are sometimes repeating guests, so entering the guest info into each episode is not very DRY)
- Incorporation of nozzle’s hugo-snippets repo for OpenGraph and twitter sharing fancy.
- Storing all sponsor data as data files as well as in front-matter (sponsors vary from show to show)
- Storing all hosts bio and contact info in YAML files to dynamically build the “about us” page as well as host pages (note - this probably could be offloaded to the config.toml since we store “author” info there with social, and this might be more DRY)
- Creating a custom RSS feed to include all the podcast/itunes goodness needed (see this thread for more details, with help from @albush)
- Heavy use of a new post type called “redirect” to allow us to redirect to our sponsor landing pages but keep our analytics on these clicks.
Any feedback is highly encouraged! Replies here are fine, or just hit me with an issue at http://github.com/arresteddevops/ado-hugo/issues
Thanks to the Hugo community, and especially @bep for helping me learn how this stuff works!