Short Ruby Newsletter - edition 124

The one where Stephen Margheim launched a new course High Leverage Rails and Andrew Culver launched Honyaku to translate Rails apps automatically

Table of Contents

(ad)

Visit https://avohq.io/?ref=shortruby to get 10% discount

Avo is a set of tools that helps Rails developers build Internal Software incredibly fast.

We've seen customers like Greenhats who shipped an app they budgeted 10 months for, in just 1 week. Thrivve Parteners built a Proffesional-Grade CMS for the travel industry in just a few months. BBC Maestro went from Proof-of-Concept to Production with great confidence using Avo.

Why Avo?

  • βœ… self-hosted

  • βœ… used in hundreds of apps

  • βœ… extend using regular Rails coding

  • βœ… thouroughly documented

  • βœ… thouroughly tested

  • βœ… Open-Source at heart

Avo starts from free (70% of features) and Short Ruby readers get a 10% discount for the Pro tier using the code SHORTRUBY at checkout.

πŸš€ Launches and discounts

πŸš€ Ruby On Rails announced a giveaway with tickets to Tropical on Rails 🏝️

Source: @rails

πŸš€ Stephen Margheim launched a new course High Leverage Rails

πŸš€ Dave Kimura launched a fantastic product Choose Your Own Path

πŸš€ Stanislav Katkov published his new project DevTUI

Source: @5katkov

πŸš€ Sam Ruby announced a fresh version of Agile Web Development with Rails 8

πŸš€ Daniel Hoelzgen released a handy utility MCP Server - For AI Tools

πŸš€ Justin Bowen released an awesome project: activeagent

πŸ“… Events

πŸ“… Irina Nazarova announced interview opportunities for recent Ruby on Rails startups

πŸ“… Jason Swett announced a new edition of Sin City Ruby

Grab a ticket 🎟️ and support this event πŸƒ

Source: @JasonSwett

πŸ“… Visuality announced the workshop registrations for Ruby Community Conference

Source: @visualitypl

πŸ“… Brighton Ruby opened lightning talk submissions for its 2025 conference

πŸ‘‰ All about Code and Ruby

πŸ‘‰ Pat Shaughnessy published a new article about Write Barriers

πŸ‘‰ Brad Gessler shared an article about Ruby Binary Distribution

You can support the Short Ruby Newsletter by a single donation or by subscribing monthly and get an ad-free version here

πŸ’» Code Samples

οΈπŸ’» Leon Vogt shared a handy Kamal tip from Rails World for zero-downtime maintenance πŸ§‘β€πŸ”§

Source: @_leonvogt

Source: @_leonvogt

οΈπŸ’» Nick Schwaderer shared a configuration for indexing Turbo-Rails docs into Cursor

Source: @schwad_rb

οΈπŸ’» William Kennedy demonstrated haptic feedback integration with Hotwire Native

and also provided an example with the usage βš™οΈ:

οΈπŸ’» Ruby Cademy highlighted Rails 8’s new params#expect: a stronger way to handle parameters 🀩

Source: @RubyCademy

οΈπŸ’» Igor Alexandrov shared a useful tip about avoiding anonymous inheritance

οΈπŸ’» Ruby Cademy shared an important usage of Object#with

Source: @RubyCademy

πŸ’» Prem Sichanugrist posted about the flexibility of Ruby when you want to write code even simpler

Source: @sikac.hu

πŸ’» Robert shared a handy String extension for right-sided splitting in Ruby

πŸ’» Radan shared his amazement for Ruby with a code sample that finds upcoming Monday-starting months

Source: @radan.dev‬

And Victor Shepelev brought an even simplified version for that code sample πŸ’‘

πŸ’» John Nunemaker shared his journey debugging a tricky Flipper issue

You can go and check the full PR: Fix all the warnings and turn them on for CI #912

πŸ’» Gregory Brown shared an interesting Ruby hack for testing stderr output

πŸ’» Lucian Ghinda shared about monkey patching in Rails πŸ™‰ You can read the full article online here or read the entire thread on Bluesky:

πŸ’» Matheus Richard showcased the elegance of endless method definitions in Ruby

Source: @matheusrich

πŸ“ Thinking about Code Design

οΈπŸ“ Pascal LalibertΓ© shared smart patterns for building Hotwire components without sacrificing native functionality

πŸ“ Jeremy Smith shared his encounter with a tricky Stimulus.js issue

and Julik Tarkhanov jumped in with clarifying insights

Source: @juliknl

and he ended with:

Source: @juliknl

οΈπŸ“ David Heinemeier Hansson shared his realisation about system tests

Source: @dhh

οΈπŸ“ Alex Yarotsky curated an essential list of gems to boost ActiveRecord

Here is the list of gems recommended:

  • active_record_doctor - "Identify database issues before they hit production."

  • counter_culture - "counter_culture provides turbo-charged counter caches that are kept up-to-date not just on create and destroy, that support multiple levels of indirection through relationships, allow dynamic column names and that avoid deadlocks by updating in the after_commit callback."

  • database_consistency - "Provide an easy way to check the consistency of the database constraints with the application validations."

  • fast_count - "Quickly get a count estimation for large tables."

  • groupdate - "The simplest way to group temporal data"

  • hightop - "A nice shortcut for group count queries"

  • identity_cache - "Opt-in read through Active Record caching."

  • rails-pg-extras - " Rails port of Heroku PG Extras. The goal of this project is to provide a powerful insights into PostgreSQL database for Ruby on Rails apps that are not using the default Heroku PostgreSQL plugin. "

  • scenic - " Adds methods to ActiveRecord::Migration to create and manage database views in Rails "

  • strong_migrations - "Catch unsafe migrations in development"

οΈπŸ“ Charles Oliver Nutter shared exciting performance improvements in JRuby 10

Source: @headius

οΈπŸ“ Marco Roth asked developers to share their most questionable ERB code

Source: @marcoroth_

For this question, Jeremy Smith joined by sharing his example

Source: @jeremysmithco

Marco, surprised, followed up with a question to Jeremy

Source: @marcoroth_

and Jeremy replied:

Source: @jeremysmithco

οΈπŸ“ Alex Yarotsky shared valuable PostgreSQL indexing strategies for Rails apps

Dive into his thread for detailed tips πŸ’‘

πŸ’‘Around code (news, findings, books, and more - all about Ruby)

πŸ’‘ Hanami shared an invitation to their Discord Server 

πŸ’‘ JoΓ«l Quenneville asked the community to recall Ruby on Rails’s most impactful blogs

Source: @joelquen

He got some responses.

Source: @_swanson

Here is a list of other responses from his community:

Source: @rails

πŸ’‘ Irina Nazarova celebrated Tines’ journey from Rails startup to unicorn status πŸ¦„

Source: @inazarova

πŸ’‘ Nick Schwaderer reflected on the distinct eras in Ruby’s history

Source: @schwad_rb

and Nate Berkopec replied

πŸ’‘ Gustavo asked the community whether Ruby is a good entry point for a junior

Source: @gslpassinho

And the Ruby community warmly responded πŸ₯°

Source: @aviflombaum

Source: @nathandrewc

Source: @gonzoville

❀️ Why Choose Ruby and Rails

❀️ Axel Kee shared how Ruby brought both joy and success

❀️ Donn Felker highlighted the power of Rails 8 in building apps efficiently with minimal resources

Source: @donnfelker

🧰 Gems, Libraries, Tools and Updates

πŸ†• New Gems and Repos

πŸ†• Jono Yeong created a new gem: bsky-parser

πŸ†• Javi Ramirez published his new gem: telegrama πŸ’¬

Source: @rameerez

πŸ†• Andrew Culver announced the release of a new gem: Honyaku

Source: @matheusrich

🧰 Updates

🧰 Xavier Noria announced an update for Zeitwerk

🧰 Ruby Gems published a new release 3.6.4 Released and 3.6.5 Released

🧰 γˆγ‚€γ€‚announced a new version for httpclient

Source: @takkanm

🀝 Brandon Weaver shared insightful thoughts about engineering career growth

Check out his full thread for valuable perspective πŸ•΅πŸΌβ€β™‚οΈ

🀝 Ryan Bates shared a pragmatic tip about method refactoring

Source: @rbates.dev

More content: πŸ“š πŸ—ž 🎧 πŸŽ₯ ✍🏾

πŸ—ž Newsletters

πŸ—ž Ruby Central shared new edition of Ruby Central’s OSS Changelog

πŸ—ž Ruby Weekly published a new article about Notebook-style Ruby coding with Jupyter Notebooks

πŸ—ž Hotwire Weekly published a new article about Week 08 - Hotwire Spark for Laravel, Rails in the browser, and more!

πŸ—ž Sajjad Umar published a new edition about Ruby on Rails - Feb 2025

πŸ—ž Awesome Ruby Newsletter published a new article about πŸ’Ž Issue 457 - Surely you must be joking, Jupyter notebooks with Ruby [video]

🎧 Podcasts

🎧 David Hill shared a podcast about RubyConf’s Scholar Program: Ode to RailsConf

🎧 Thoughtbot shared a new podcast: The Bike Shed: 455: Noisy Animals Kata with Fritz Meissner

πŸŽ₯ Videos

πŸŽ₯ Thoughtbot published a new video: Alternative editors and AI tools for developers

πŸŽ₯ Brad Gessler shared a video version of an article: Ruby binary distributions

πŸŽ₯ Landon Gray published a new article about Surely you must be joking, Jupyter notebooks with Ruby! by Landon Gray

πŸŽ₯ Andymaleh.bsky.social shared a video about Responsibility Driven Design in Ruby

πŸŽ₯ Zhephyn published a new video from Ruby Book Club: Eloquent Ruby Chapter 9

πŸŽ₯ Jason Swett published a new video about Adding Infinite Scroll - Live Coding on SaturnCI

πŸŽ₯ Rails Quest by Kaleb Lape published a new video about Rails 8 Production SQLite: Automatic Cloud Backups with Litestream

✍🏾 Articles

What’s new πŸ†•

πŸ†• Vladimir Dementyev published a new article about Ruby on Rails on WebAssembly: a guide to full-stack in‑browser action

πŸ†• Ruby Central published a new article about Company Spotlight: How Ruby Shaped DNSimple’s Growth

πŸ†• Andrei Maxim published a new article: Should Humans Facilitate AI?

πŸ†• Pat Shaughnessy published a new article about Write Barriers

πŸ†• PaweΕ‚ Pokrywka published an article about Debugging mutable subresources: a detective story

πŸ†• Ruby Central published a new article about Ruby Central's OSS Changelog: February 2025

πŸ†• Prasanth Chaduvula published a new article about Deep Dive Into Rails ActionController Strong Parameters

πŸ†• Brad Gessler shared an article about Ruby Binary Distribution

πŸ†• gerry leo nugroho published a new article about Mastering Ruby Methods: 16 Practical Examples for Beginners

πŸ†• Davide Santangelo published an article about Mastering IP Addresses in Ruby with the IPAddress Gem - DEV Community

πŸ†• Julik Tarkhanov published an article about Musings on Module Registration (And Why It Could Be Better in Rails)

πŸ†• Kevin Luo published an article about Some tips for making a ruby gem

πŸ†• Test Double Blog published a new article about Why Rails upgrades are harder than you think

How-TOs πŸ“

πŸ“ Avo posted an article on how to build authentication in Rails

πŸ“ Adam Tomeček published an article about Simple e-mail service with Rails - Part 1: Setup

πŸ“ Donn Felker published a new article about Migrating from Sidekiq to Solid Queue

πŸ“ Deepak Mahakale published an article about How to rollback a deployment with Kamal?

πŸ“ Jon Sully published a new article about ["Quick Tip: Fix ActiveRecord", "Connection Pool Errors For Good"]

✍️ Dave Thomas published a new article about writing a functional specification

Reply

or to participate.