Rubyland

news, opinion, tutorials, about ruby, aggregated
Sources About
Evil Martians 

Optimistic UI in Rails with optimism... and Inertia

Weelkly Article – Now open for 2026 sponsorships 

Ruby Rendering Seismic Observation Data

The Bike Shed 

491: Influences that shaped our thinking

justin․searls․co - Digest 

📍 Tabelogged: 浪漫

Tim Riley 

Continuations 2026/04: i18n support

justin․searls․co - Digest 

📍 Tabelogged: The Villa & Barrel Lounge

Hotwire Weekly 

Week 04 - Optimistic UIs, Hotwire Native in-app purchases, and more!

Gusto Engineering - Medium 

It Takes a Village: Building Gusto’s First AI Risk Agent

Code With Rails 

Monitor CSRF Attacks in Production with Rails Notifications

Short Ruby Newsletter 

Short Ruby Newsletter - edition 165

Rails Designer 

CSS Counters: auto-update list numbers without JavaScript

justin․searls․co - Digest 

📍 Tabelogged: 静岡かきセンター 呉服町店

justin․searls․co - Digest 

📍 Tabelogged: ほんな骨 静岡店

danielabaron.me RSS Feed 

AI Forecasts, Fear, and Focus

Island94.org 

Frontier novelty

justin․searls․co - Digest 

📍 Tabelogged: 大衆食堂BEETLE 原宿

Planet Argon Blog 

LeadDev Webinar Recap: “Why Software Maintenance Still Feels Stuck in 2015 (And What To Do About It)”

Ruby on Rails: Compress the complexity of modern web apps 

Squish as fast as you can

John Nunemaker 

Rooted & Reaching Podcast Interview

Julik Tarkhanov 

We have to re-learn to walk alone

Giant Robots Smashing Into Other Giant Robots 

What Shoulda Matchers Is Actually Doing For You

Remote Ruby 

Tool Standardization

hexdevs 

Optimizing load time for faker-ruby

Ruby on Rails: Compress the complexity of modern web apps 

Rails Version 8.1.2 has been released!

Ruby Weekly 

Rust's Ratatui comes to Ruby for building great TUIs

Saeloun Blog 

From Idea to Launch: Why Rails Remains the Ultimate MVP Framework in 2026

RailsCarma – Ruby on Rails Development Company specializing in Offshore Development 

How to Parse JSON in Ruby: A Comprehensive Guide 2026 

Rails Designer 

Building optimistic UI in Rails powered by Turbo

Jake Zimmerman 

Bugs Block Blogs

justin․searls․co - Digest 

📍 Tabelogged: 本格板前居酒屋 お魚総本家 アスティ静岡店

Giant Robots Smashing Into Other Giant Robots 

A JavaScript developer's guide to Rails: Where Does Everything Come From?

justin․searls․co - Digest 

📸 A better macOS Globe key

Robby on Rails 

Humans in the Loop

SINAPTIA 

RubyLLM::Instrumentation: The foundation for RubyLLM monitoring

Julik Tarkhanov 

On the way to step functions: the two worlds

The Rails Tech Debt Blog 

Getting Started with Vite on Rails

The Bike Shed 

490: Large Language Misadventure

Hashrocket - Ruby Posts 

Crafting Code: Building a Ruby Pattern Generator for a Crochet Circle

BigBinary Blog 

How to analyze Playwright traces

Tim Riley 

Continuations 2026/03: Bonus weekend

Tenderlove Making 

Bainbridge Island Mochi Tsuki

justin․searls․co - Digest 

✂️ Shenmue was educational software

Code With Rails 

Building Smart Retry Strategies in Rails with Error-Aware Delays

Weelkly Article – Now open for 2026 sponsorships 

Now Ruby GIS Rendering: Stabilizing the libgd-gis Rendering API

Short Ruby Newsletter 

Short Ruby Newsletter - edition 164

Ryan Bigg Blog 

Beware grpc gem and Ruby 4.0

Hotwire Weekly 

Hotwire Weekly - Happy 2026

zverok's space 

It is 2026; where were we?

danielabaron.me RSS Feed 

What AI-Assisted Coding Feels Like in Early 2026

justin․searls․co - Digest 

📍 Tabelogged: どんぶりハウス

RichStone Input Output 

What to expect from your blog & how to close it gracefully in the end

justin․searls․co - Digest 

📍 Tabelogged: エル・ポジート

Julik Tarkhanov 

On the way to step functions: it is actually a DAG

Posts on Kevin Murphy 

Frequently Played January 2026

Posts on Kevin Murphy 

How I Read A Pull Request

Write Software, Well 

Understanding How Active Storage Variants Transform Images

Ruby on Rails: Compress the complexity of modern web apps 

Error-aware retry_on, PostgreSQL type mappings, and more!

Ruby Weekly 

TruffleRuby 33, Ruby 4.0.1, and Ruby 3.2.10

Island94.org 

GoodJob, Solid Queue, Sidekiq, Active Job, in 2026

Remote Ruby 

Tech Resolutions and Tailwind Troubles

Julik Tarkhanov 

On the way to step functions: dreams of marshalable stacks

justin․searls․co - Digest 

📍 Tabelogged: とんかつ ひな太

code.dblock.org | tech blog 

Serving Markdown for AI Agents in Jekyll

Glauco Custodio 

A Neat Trick for Splitting Strings

Hi, we're Arkency 

Stop using DateTime in 2026 (unless you work for UNESCO)

RailsCarma – Ruby on Rails Development Company specializing in Offshore Development 

Rails Generate Model: Beginner’s Guide to Database Models

Rails Designer 

Nested forms without `accepts_nested_attributes_for` in Rails

RubyGems Blog 

4.0.4 Released

RubySec 

CVE-2025-68271 (openc3): openc3-api Vulnerable to Unauthenticated Remote Code Execution

Code With Rails 

Build a File Deduplication System with ActiveStorage

SINAPTIA 

Monitoring LLM usage in Rails with RubyLLM::Monitoring

Closer to Code 

Claude on Incus – All the autonomy, securely

Ruby News 

Ruby 3.2.10 Released

Planet Argon Blog 

Ruby 4.0 and Ruby Box: What Changed and How to Upgrade Safely

Saeloun Blog 

Rails 8.1 introduced except_on option for validations and callbacks

The Bike Shed 

489: What makes a codebase welcoming

Ruby News 

Ruby 4.0.1 Released

Gusto Engineering - Medium 

How to Write an Oscar-Worthy LLM Prompt: Your Guide to the Prompt-Chaining Framework

Weelkly Article – Now open for 2026 sponsorships 

libgd-gis continues to grow — now with styles and more

Short Ruby Newsletter 

Short Ruby Newsletter - edition 163

Andy Croll 

Find the Last Matching Element with rfind

Giant Robots Smashing Into Other Giant Robots 

Prevent the Robocalypse with Claude Code and TDD

justin․searls․co - Digest 

📸 PSA: iPhone Air MagSafe Battery can charge your AirPods

Tim Riley 

Continuations 2026/02: Community-provided

RubySec 

CVE-2026-22588 (spree_api): Spree API has Authenticated Insecure Direct Object Reference (IDOR) via Order Modification

RubySec 

CVE-2026-22589 (spree_core): Spree API has Unauthenticated IDOR - Guest Address

RubySec 

GHSA-96qw-h329-v5rg (shakapacker): Shakapacker has environment variable leak via EnvironmentPlugin that exposes secrets to client-side bundles

justin․searls․co - Digest 

🎙️ Breaking Change podcast v49 - Saving Face Oil

Weelkly Article – Now open for 2026 sponsorships 

Ruby Can Draw Cities Now

Code With Rails 

Build a Feature Flag System in 50 Lines with Rails.app.creds

37signals Dev 

Moving Mountains of Data off S3

Julia Evans 

A data model for Git (and other docs updates)

Ruby Weekly 

Examples of language changes in Ruby 4.0

justin․searls․co - Digest 

📸 Peter Campbell's giraffe art

Saeloun Blog 

Mobile First Design | Why It Matters for Consultancies

Rails Designer 

Use native dialog with Turbo (and no extra JavaScript)

The Rails Tech Debt Blog 

How We Fix the Broken Build During a Rails Upgrade

Mike Coutermarsh 

Automating with Cursor commands

Planet Argon Blog 

Don't Rush the Redesign: Start with Strategy

justin․searls․co - Digest 

📄 Weekstart

Evil Martians 

What devtools founders making $100M+ ARR told me in San Francisco

Weelkly Article – Now open for 2026 sponsorships 

Ruby Can Now Draw Maps — And I Started With Ice Cream

Carmine Paolino 

Dictation Is the New Prompt (Voxtype on Omarchy)

Ruby Magic by AppSignal 

An Introduction to Ruby Parsing with Prism

Mintbit 

ActiveRecord: Consistent delete_all and update_all

Mintbit 

ActiveRecord: Understanding CurrentAttributes

André Arko 

Announcing rv clean-install

Kevin Newton 

A Ruby Regular Expression Engine

Tosbourn – Belfast based Ruby developers 

Set Dependabot to run only specific dependency types

Evil Martians 

6 things developer tools must have in 2026 to earn trust and adoption