Coming: Spring 2020

Boring Rails: Skip the bullshit and ship fast

Learn about the boring tools and practices used by Basecamp, GitHub, and Shopify to keep you as happy and productive as the day you typed rails new

Sign up to be notified when Boring Rails is released!

What's the secret sauce?

  • Majestic Monoliths riding on vanilla Rails

  • Boring Backends with Postgres, Redis, and Sidekiq

  • JavaScript Sprinkles with Turbolinks and Stimulus

  • Avoid CSS Hell with Tailwind

  • The 80/20 Answers for Performance and Scaling

Sample Content

Spring Cleaning: Tidying up your codebase

A practical checklist for tidying up your gems, pruning old git branches, removing unused views and routes, and cleaning up your database. A little bit goes a long way when it comes to cleaning!

Building a Rails CI pipeline with GitHub Actions

GitHub Actions is an automation platform that you run directly from inside a repository. We can use it as a testing CI/CD pipeline and keep everything close to the code.

Wrangling slow reports, large file exports, and long-running tasks in Rails with Active Job

Sometimes we need to generate really large file exports or run reports that are just slow. It's not enough to optimize a few queries, we need to move the work to a background job and notify the user when it's all done.

Managing Rails schema and data migrations without losing your mind

Rails database migrations are extremely powerful, but can be a mess if we don't avoid the traps. This article outlines a boring way to handle schema and data migrations effectively.

Get notified when new Boring Rails content is posted

Matt Swanson
About the author

Hi. I'm Matt Swanson.

I've been building web apps for ten years and I'm tired of complex messes. The latest and greatest tools definitely have their place, but so often we could ship much more with much less.

This book is the missing set of sane defaults that I've learned over my career and curated from across the Rails community.

You can find my blog at mdswanson.com or talk with me on Twitter.