The Ruby and Rails community linklog
Made a library? Written a blog post? Found a useful tutorial? Share it with the Ruby community here or just enjoy what everyone else has found!
Submit a post
Post Preview
Note: Only the first pargraph is shown on the front page and overly long paragraphs may be broken up.
Today
Professional Business Email for Bloggers USA in 2026
A business email for bloggers USA is a professional email address that uses your own domain name instead of a free personal email service. For example, instead of using janeblogger@gmail.com, a professional blogger can use hello@yourblogname.com. [more inside]
Ruby Method Arguments: a new book, from your first call to metaprogramming
A new book on Ruby method arguments that
follows one thing all the way down: how a Ruby method receives its arguments. From
def greet(name) to keyword arguments, splats, blocks, closures, method_missing,
instance_eval, and building a small DSL — with the patterns behind Rails and
RSpec rebuilt from scratch. Every example was run before it was printed, and the
exercises have self-checking solutions in a free companion repo.
How Rails Knows What Changed
An Active Record Dirty-tracking lifecycle traced through a broken audit callback: pending changes before save, saved-change history afterward, net typed differences, object-local baselines, reload, and type-aware in-place mutation. [more inside]
Best Business Email for Affiliate Marketers USA in 2026
If you are a business email for affiliate marketers USA, having a professional business email is one of the smartest investments you can make. A business email helps you look trustworthy, communicate with affiliate networks professionally, and build a strong brand online. [more inside]
Talk to you Rails app with your agent
Run queries against your production DB, change feature flags, reset cache, check background jobs, etc from your agent using MCP. Extend with custom plugins. All securely.
Automate Tech Debt Audits with Claude Code
Over the years, we have written about many of the tools we use: Skunk for combining code quality and code coverage data, bundler-audit for security vulnerabilities in your dependencies, libyear-bundler for measuring dependency freshness in a Ruby application, and RubyCritic for churn vs. complexity analysis. [more inside]
A brand new SEO+GEO tracker in Rails (SerpBear alternative)
I am releasing SerpTrail 1.0 today, a new SEO rank tracker built with Rails, Hotwire, SQLite, and Kamal
Most Rails multi-tenant apps trust developers to remember where(tenant_id: ...).
That’s not an architecture. Let PostgreSQL enforce tenant isolation with Row Level Security while Rails focuses on business logic. Human-readable code. Database-enforced security. [more inside]
RubyConf Austria 2026 Talk Video: Frontend Ruby on Rails with Glimmer DSL for Web
My RubyConf Austria 2026 talk has been published on YouTube! What if your frontend was just… Ruby?
Calling all open source maintainers working with Ruby
We’re creating a shared place where Ruby users can ask questions and discuss ideas about your project:
ActiveModel Conditional Validations
There are options to applying validations conditionally in ActiveModel. I encourage you to also consider other ways to model your rules. Hit the link to read through some options. [more inside]
Audition is a linter/fixer that gets your code Ractor-ready
Vibe coded a useful thing for Rubyists over the weekend. Audition is a linter/fixer that gets your code Ractor-ready: static analysis powered by Shopify’s rubydex, plus dynamic probes that actually run your code inside Ractors and report what breaks. [more inside]
Why N+1 Queries Are a Natural Result of Lazy Loading
N+1 is lazy loading repeated across a collection. This RailsRevelry article traces the per-owner association load path, the relation.loaded? versus association(:invoices).loaded? distinction, preload/eager_load/includes, why preloading doesn’t fix count or scoped reads, and strict_loading as enforcement. [more inside]
A Supporter Sympathizes with My Discrimination by RubyConf 2026
I am thankful to the Software Engineer who shared a very supportive comment regarding my experience of discrimination by RubyConf 2026.
When broadcasting a refresh is not enough: faster UX with versioned updates
If you’re using Turbo broadcasts to make a page collaborative, you might have noticed that the default refresh approach adds latency: an extra round trip, a debounce delay, and a flood of simultaneous requests when many users are connected. Broadcasting a replace action with the content directly fixes most of that, but it opens up a race condition where updates can arrive out of order. Here’s how to get fast, immediate updates without sacrificing correctness: When broadcasting a Turbo refresh is not enough: faster UX with versioned immediate updates
⚽ The World Cup is reaching its final stages, and Ruby developers have been building
From prediction pools to tournament managers and live leaderboards, here’s a roundup of some of the coolest Ruby & Rails projects. 🇦🇷💎 [more inside]
RubyConf 2026 Is Not a Safe Environment for Everyone
RubyConf 2026 is not a safe environment for everyone. They have an in-group and an out-group. If you’re in the in-group, they will treat you well and accept talk proposals by you even if you don’t have top-level skills in Software Engineering. If you’re in the out-group, it doesn’t matter if you launch rockets to the moon successfully on your own or win the approval of Matz himself, you will be excluded and discriminated against. This is no different from how the MLB (Major League Baseball) used to mistreat Afro Americans and relegate them to playing in the Negro league instead of the Major League. Telling someone who can perform at the major league level they are unaccepted as a player there, but could attend if they want is most definitely discrimination 100%.
Tracking Business Metrics in Rails without a full analytics stack
Rails apps often need metrics that are not quite logs, not quite BI, and not quite infrastructure monitoring: orders per day, revenue, background jobs, imports, feature usage, tenant activity, and other counters that belong close to application code. I wrote about using Trifle::Stats to track those app-level business metrics from Ruby with time rollups, nested breakdowns, and simple retrieval for charts or console answers. [more inside]
data_redactor: stop secrets and personal data leaking into logs and LLM prompts
If your app writes logs or sends text to an LLM, sooner or later a real credit card, email, or API key ends up in there — data_redactor strips that kind of data out of any string before it leaves your app. [more inside]
Refactoring with Convergence Rules
Three rules turn duplication into abstractions through tiny steps, and catch false abstractions before they ever reach the code. [more inside]
Ruby Open-Source Innovation Process Expectation vs Reality
Ruby Open-Source Innovation Process Expectation vs Reality