Back in September, the week before Emmanuel Hayford traveled to Rails World, and I traveled to PGConf NYC, we connected for the 14th episode of the Rails Changelog podcast.

Emmanuel has been landing top-notch guests from Ruby on Rails! Check out this look back at the Rails Changelog podcast guests from 2023.

Fun fact: Emmanuel and I have both been editors for This Week in Rails, a long-running co-edited newsletter. I’m no longer active, but enjoyed my time on the project and meeting up with co-editors at RailsConf 2017.

The episode

The episode is: “014: PostgreSQL for Rails Developers with Andrew Atkinson”

Listen to it here: https://www.railschangelog.com/14

What sorts of things did we talk about? Prior to the episode, we devised a plan to cover Ruby on Rails features that are database related, and connect them to their coverage in my new book High Performance PostgreSQL for Rails.

Topics

In the episode, you’ll find conversations about these topics:

  • What is Strict Loading, and how is it related to N+1 queries?
  • Generated columns, virtual and stored, and how they’re used in Active Record for PostgreSQL and MySQL
  • Common table expressions (CTE), subqueries, when you’d want to use them
  • What is sharding? Horizontal Sharding and application level sharding with Active Record in Ruby on Rails
  • Query Logs, what are they? When would I use them instead of my APM?

Notes

  • Emmanuel was glad to see that most features that are covered in the book have a corresponding code example in the Rideshare application. This is the application readers use to learn the concepts, and it’s available on GitHub.
  • I talked about how I wanted the book to be practical based on my career experience, and for readers to learn concepts with hands-on exercises. This fit the ethos of Pragmatic Programmers books, which made me excited to work with them.

Contest

We even did a contest (contest on twitter), giving away a copy of the book. Emmanuel handled the promotion on social media and did a bang-up job. Thank you! The winner let us know they were really happy to receive it.

If you missed the contest, stay tuned to my newsletter or social media, where I’ll similar contests in the future.

Sharing the episode

We shared the episode in a few places:

Wrap Up

Emmanuel was a great host, and I had a lot of fun talking about Rails and PostgreSQL features, and how developers can use them.

I hope the episode is useful for listeners learning how to use these features, and to expand their knowledge of what’s possible with PostgreSQL.

Emmanuel and I hope to meet up someday in-person, at a future Rails World or Ruby on Rails related event. Maybe we’ll see you there too!