Tutorials


Build a Rails Engine to Accept Stripe One-time Payments
I maintain a handful of Ruby on Rails applications for my clients. Most of them need to handle payments. My go-to payment processor is Stripe. Stripe makes payments easy, but still requires some setup and configuration. I've written the same one-t...



Upgrading a trivial Rails app from Ruby 2.3.1 to 2.7 and from Rails 4.2.6 to 6.0.3
This blogpost describes the upgrading process of a trivial Rails app. The app is called PlusOne (it’s open-sourced) and it’s a small but fun Slack bot (MS Teams support coming).This app doesn’t rely on any external gems, consists only of 3 databas...


Run Rails 6 System Tests in Docker Using a Host Browser
The problem: we wanted to get Rails system tests running using a browser on our development machines.The complication: we develop our Rails project within Docker, in order to make every aspect of our development environment reproduceable.The prefe...

Correct Ruby Threads and ActiveRecord Connections
Recently, we had an opportunity to trivially parallelize some ActiveRecord queries in our Ruby server. In a common response structure, we needed to both query for the actual data requested along with some meta-information about pagination, etc.Ins...


Create a Video Party App With Rails Part 1: Building the Backend
My son recently celebrated his 9th birthday, and like many kids his age, he was looking forward to his birthday party for months. In the midst of the Covid-19 pandemic, we knew that we needed to do something different this year, so I built him a v...