How to build Rails AI code quality workflow ruby

How to build Rails AI code quality workflow

AI writes confident Rails code that quietly breaks production standards. Build a quality workflow that catches it: Lefthook gates, Strong Migrations as a hard line, N+1 detection with Prosopite, database checks in layers, and CI that mirrors local hooks.

Jul 27, 2026

UUIDv7 from PostgreSQL 18 in practice

UUIDv7 from PostgreSQL 18 in practice

UUIDv7 arrives in PostgreSQL 18 as a built-in uuidv7() function. See what it changes in practice: friendlier indexes than UUIDv4, simpler Rails migrations, a schema example, and the security caveat that time-ordered does not mean secret.

How to audit a legacy Rails codebase without getting lost

How to audit a legacy Rails codebase without getting lost

Auditing a legacy Rails codebase starts with one question: what is the team afraid to change? A practical method for finding real hotspots, building a small audit ledger, using tools and AI without drowning in output, and delivering one page that people act on.

Getting structured input and output from Ollama

Getting structured input and output from Ollama

Structured output from Ollama takes more than JSON mode. Learn the reliable pattern for a Rails app: shape the input, constrain output with JSON Schema, parse defensively, and retry with feedback so a local LLM survives production instead of just a demo.

Be aware of possible problems with SQLite on Production

Be aware of possible problems with SQLite on Production

SQLite in production works better than its toy reputation, but only if you know the traps: why WAL mode is non-negotiable, how blue-green deployments break your setup, missing ILIKE, quirky JSON types, and what you honestly gain in return.

Structured logging in Rails 8.1 with Rails.event

Structured logging in Rails 8.1 with Rails.event

Structured logging lands in Rails 8.1 with the Rails.event API. How the Structured Event Reporter replaces regex-parsed log lines with JSON events, plus tags, context, schemas, debug mode, and how to subscribe and test events in your own app.

When to use Module over Class in Ruby?

When to use Module over Class in Ruby?

Ruby modules often beat classes for service objects: why a shell class like PasswordResetInitiator is procedural code in disguise, using a module as a toolbox, mixins instead of artificial inheritance, and Data objects for tidy parameters.

Ruby 4.0 - a big update for its 30th birthday

Ruby 4.0 - a big update for its 30th birthday

Ruby 4.0 marks the language's 30th birthday with maturity instead of revolution: saner syntax for multiline conditions, faster boot with fewer requires, a maturing Ractor story, hidden performance gems, and protection against command injection.

How to control queues and concurrency in Sidekiq?

How to control queues and concurrency in Sidekiq?

Sidekiq capsules let you give each queue its own concurrency, so photo processing stops clogging urgent jobs and API calls stay under rate limits. A three-step setup: configure the capsule, assign the job, and call it, with configuration examples.

How to track and log slow queries in Ruby on Rails applications?

How to track and log slow queries in Ruby on Rails applications?

Slow SQL queries in Rails can be caught in development, before they become production fires. Using ActiveSupport::Notifications and the sql.active_record event, you build a small performance guard that logs every query above a time threshold straight to your console.

Deprecation in Rails: How to gracefully remove old code

Deprecation in Rails: How to gracefully remove old code

Deprecation lets you remove old Rails code without breaking teammates' apps overnight. A practical look at ActiveSupport::Deprecation: why sudden deletes hurt, how to warn about methods scheduled for removal, and how to phase out code in a civilized way.