Detecting Full Table Scans With SQLite

I’m at RubyConf this week, and it’s great! I recently read that lobste.rs is now running on SQLite. One part from the post caught my attention: I wish we could say in a test, “Fail if you encounter any full table scans”. Which would have caught the perf issues we experienced during the first deploy. SQLite collects information about prepared statements and exposes those statistics though an API. The upshot of this is that we can tell whether a statement did a full table scan after executing the statement without using an EXPLAIN.

#database
Added: 15 Jul 2026
10 Things You Might Not Know About Rails i18n

A talk exploring i18n in Rails, and how it can be useful even when we're not translating our applications into other languages. I gave this talk at Brighton Ruby in 2026.

#Ruby on Rails
Added: 14 Jul 2026
Getting Started with Anchor Positioning • Josh W. Comeau

For decades, one of the most notoriously-challenging problems on the web has been sticking one element to another element, for things like tooltips and nested menus. The CSSWG has decided to provide a first-class solution to this problem, and it’s pretty friggin’ cool! In this tutorial, I’ll share the most useful parts I’ve found from this modern CSS feature.

#Frontend#CSS
Added: 13 Jul 2026
Permission UI the Rails way

A flexible helper for conditional rendering. Show content when allowed, hide it, redirect to a link or render a fallback. Extracted from my SaaS apps.

#Ruby on Rails
Added: 13 Jul 2026
De-spaghettifying Rails Apps with Wisper | spencer.wtf

Learn how to use Wisper for pub/sub event-driven architecture in Rails. Clean up bloated controllers and models by decoupling business logic with the observe...

#Ruby on Rails
Added: 10 Jul 2026

I’ve been using Rspec since 2012 and in all this time I’ve never had a really clear picture of how to best use . I don’t have this issue with any other aspect of Rspec. Probably our most common…

#Ruby on Rails#testing
Added: 9 Jul 2026
Postgres Is Enough

A curated directory of PostgreSQL extensions and tools. Replace Redis, Elasticsearch, Kafka, and MongoDB with one database you already know.

#postgres#DevOps
Added: 9 Jul 2026
Your Solo Developer Deserves Backup

What happens when your entire app rests on one developer's shoulders

#Consulting
Added: 9 Jul 2026
Migrating From Secrets to Credentials - FastRuby.io | Rails Upgrade Service

Rails 7.1 deprecated secrets.yml in favor of encrypted credentials. Learn why the change happened and follow a step by step guide to migrate your app safely.

#Ruby on Rails
Added: 9 Jul 2026
Audit a Rails Project with the Thoughtbot Audit Skill

Turning a Claude skill audit report into a labelled, severity-tiered GitHub backlog, and what the skill found in a small Rails 8 app.

#Ruby on Rails#Consulting#AI Skills
Added: 8 Jul 2026
What SOLID Still Teaches Ruby Programmers | Syed Aslam

How SOLID changes when you read it through Ruby’s object model, duck typing, and preference for pragmatic design.

#Ruby
Added: 26 Jun 2026
Watch the workshop | Builder Methods

Watch the Builder Methods workshop — the plan-first method for building apps with AI that come out right the first time.

#AI#Tutorial
Added: 24 Jun 2026
No Node - FastRuby.io | Rails Upgrade Service

Tired of installing NodeJS and juggling version managers just to compile Rails assets? Learn how Bun’s standalone binary can make setup faster and simpler.

#Ruby on Rails
Added: 24 Jun 2026
How I'd start a legacy modernization project now

Move from "here's the story of the system" to "here's what's red and here's the intervention that makes sense for your situation."

#Ruby on Rails#Consulting
Added: 24 Jun 2026

This week I made a refactor to remove a job (ActiveJob::Base) that was used only in recurring.yml, and call a class method directly instead. Sometimes it is ok to have a job, but sometimes using the method can help you write a little less code. And...

#Ruby on Rails
Added: 24 Jun 2026
Procman: An alternative for running Procfile apps

Procman is a tool written in Rust that offers a TUI interface to manage processes defined in a Procfile.

#Ruby on Rails#Tools
Added: 24 Jun 2026
Your Rails App Just Got Acquired. Now What?

What to do in the first 90 days after your Rails app gets acquired.

#Ruby on Rails#Consulting
Added: 24 Jun 2026
The Playwright debugging tool Rails devs aren't using

Playwright records every test in cinematic detail. Most Rails devs aren’t watching.

#Ruby on Rails#testing
Added: 19 Jun 2026
Making a New Plan

Credit: Unsplash / beth_k Once, I got an email. To paraphrase, it said: I ignored your recommendation, but new evidence arrived, and now I see that you were right. I won’t do that again. A ra…

#Soft Skills
Added: 19 Jun 2026
Rails: The Sharp Parts. Callbacks Are Not Invariants

Callbacks promise that something always happens when a record changes. They can't keep that promise, and Rails documents the ways out. Every failure mode here ran against ActiveRecord 8.1 before it went in, and the replacement is a command with one door.

#Ruby on Rails
Added: 19 Jun 2026
How to Parallelize Your RSpec Test Suite Locally - FastRuby.io | Rails Upgrade Service

Learn how to set up local parallel testing in Rails with turbo_tests, including worker-specific databases and automated database preparation for faster RSpec runs.

#Ruby on Rails#testing
Added: 19 Jun 2026
How I Think About Tests: Skips

You won’t want to skip this one

#Ruby on Rails#testing
Added: 18 Jun 2026
Rails: The Sharp Parts. An Index Is Not a Plan

add_index looks like a one-line fix for slow queries. It isn't. This article walks through the failure modes, proves each one with EXPLAIN on half a million rows, and shows how to build an index the optimizer will actually use.

#database#Ruby on Rails
Added: 18 Jun 2026
Scaling Rails at Aura Frames: Splitting to 8 Primary DBs and Reaching #1 in the App Store

📌 Overview Ruby on Rails has helped make it possible to scale out the database layer, meeting the demands of millions of Aura Frames customers enjoying their digital photo frames. In late 2025, the team added additional primary databases to expand capacity for peak write and read load ahead of Christmas Day, the busiest day of the year for the company. Rails manages queries and schema changes for each primary database within the same codebase, and now with the additional capacity of many primary databases. With 8 primary databases in total, each server instance can be vertically scaled ahead of peak load. When load returns to normal levels, instances are scaled down for cost savings. The team leveraged native support for Multiple Databases and the disable_joins: true feature in Active Record, the ORM for Ruby on Rails. The disable_joins feature replaces SQL joins, issuing multiple SELECT statements to combine data in the application from different databases. This post looks back at the technical details of that plan, as well as a variety of additional data layer scaling tactics, that culminated in a successful Christmas 2025 season, with peak U.S. and Canadian Apple App Store and Google Play Store rankings of #1.

#database#Ruby on Rails
Added: 18 Jun 2026
Lost, forgotten, and unfamiliar HTML

Automated scans taught me about some web stuff I forgot or never even know.

#Frontend
Added: 16 Jun 2026
FirstPreviousNextLast