Short Ruby Newsletter - edition 154

The one where Rails 8.1.0 is released, where Ruby 3.3.10 is patched, where Scott Harvey launched Rails Pulse project and Brad Gessler launches Phlex on Rails course

In partnership with

Table of Contents

Free email without sacrificing your privacy

Gmail is free, but you pay with your data. Proton Mail is different.

We don’t scan your messages. We don’t sell your behavior. We don’t follow you across the internet.

Proton Mail gives you full-featured, private email without surveillance or creepy profiling. It’s email that respects your time, your attention, and your boundaries.

Email doesn’t have to cost your privacy.

πŸš€ Launches and discounts

πŸš€ Scott Harvey launched Rails Pulse

πŸ“… Events

πŸ“† SFRuby is happening in less than 1 month. Buy your ticket at sfruby.com

πŸ“… Drew Bragg announced a new meetup β†’ β€œHow FastRuby.io Built an Automated, AI-Enhanced Roadmap for Rails Upgrades”. Hurry up and book your place here β†’ Philly.rb 2025

πŸ“… Rails Camp Usa announced early-bird registration starting next week!

πŸ“… Rails Girls Cali announced a new event that will be happening on November 7-8

πŸ“… WNB.rb (Women and Non-Binary Rubyists) announced a new online event β†’ Rails Upgrades and Music Composition. Join the Discord community to be part of this event β†’ WNB.rb Discord

Source: @wnb-rb.dev

πŸ“† Thoughbot published the the thoughtbot Open Summit 2025 full schedule

πŸ‘‰ All about Code and Ruby

πŸ‘‰ nagachika announced the release of a new Ruby version β†’ Ruby 3.3.10

πŸ‘‰ Rafael Franca announced the release of Rails 8.1

πŸ‘‰οΈ Greg Navis also posted a thread about this release, going through the new additions. Feel free to read the entire thread on Thread reader.

πŸ‘‰ Yukihiro Matz shared the Ruby 30th Anniversary – Message Submission Form

πŸ‘‰ Charles Oliver Nutter published a new article about Packaging Ruby Apps with Warbler: Executable JAR Files

You should also read the followup here about packaging a Sidekiq Background Job Server

πŸ‘‰ Josef Ε imΓ‘nek published a new tool Ruby Butler: Time to Rethink RubyGems and Bundler

πŸ’» Code Samples

[This is an ad from the curator of this newsletter]

Hello, Rubyists!

If you love coding but sometimes find writing tests to be a chore, I have something for you. My upcoming workshop (happening on Friday, 31 October from 16:00 UTC) focuses on using AI to help you generate reliable test cases.

However, this isn't just about relying on AI to do everything for you, it's about understanding the process. We'll explore which aspects of testing can be safely and effectively delegated to an LLM (large language model) and which parts you should continue to handle yourself.

In other words, it's about finding the right balance. You'll learn how to let AI manage the repetitive or standardized testing tasks, allowing you to concentrate on the interesting and fun aspects of your code with confidence. If this sounds appealing to you, come join the workshop! 

οΈοΈπŸ’» Ruby On Rails shared a code sample with after_discard callback in practice

Source: @rails

πŸ’» Adrian Marin shared how you can clear the cache on development environment easier

πŸ’» Joel Drapper shared a code sample about adding runtime assertions with method signatures

οΈπŸ’» Deepak Mahakale shared how you can fetch secrets from Rails credentials

οΈπŸ’» Charles Oliver Nutter shared that you can use threads and frozen objects on JRuby

Source: @headius

Source: @headius

οΈπŸ’» Ruby Cademy shared how ActiveRecord::Base#pluck supports hash values as arguments

Source: @RubyCademy

οΈπŸ’» Zeke Gabrielse showed a code that playing with design to implement static typing:

Source: @_m27e

οΈπŸ’» Vojtech Rinik shared a code sample of a controller that is responsible to validate request and response and generate OpenAPI schema

Source: @_vojto

οΈπŸ’» Hans Schnedlitz shared a helping tip to find the gem responsible for these deprecation warnings in Rails 8.1

Source: @hschnedlitz

οΈπŸ’» Mika Henriksson adviced us about avoiding unnecessary database records in Rails tests1

Source: @mhenrixon

Source: @mhenrixon

8 Weeks. Actionable AI Skills. MBA-Style Networking.

  • Build AI confidence with role-specific use cases

  • Learn directly from leaders at top financial firms

  • Build a lifetime network that continues to open doors long after the program ends

Earn your certificate from Columbia Business School Executive Educationβ€”program starts November 10.

πŸ“ Thinking about Code Design

οΈπŸ“ Xavier Noria shared an interesting debug technique

οΈπŸ“ Alexis Bernard shared his take on how beneficial is to always create a model

οΈπŸ“ Brandon Weaver asked about dealing with larger-scale synthetic testing data creation:

He got some suggestions:

fixtures_from_factories β†’ Build sets of Fixtures for your Rails app, using your test suite's FactoryBot factories

oaken β†’ Oaken upgrades your development seeds, lets you reuse them in tests & blends the best of fixtures & factories into one cohesive whole.

οΈπŸ“ David Alejandro shared how you can use the agent-context gem

οΈπŸ“ Nate Berkopec shared his take on framework choice

οΈπŸ“ Dave Thomas quoted a fact from an upcoming Elixir book

Source: @pragdave

️Then an interesting conversation between him and Uncle Bob Martin started

Source: @pragdave

πŸ“ Nate Berkopec posted that Rails β€œDIYstackβ€œ hasn’t yet solved some issues from the data layer

️️Wojtek Wrona replied with:

Source: @wojtodzio

πŸ“ Branko shared how splitting a monolith into microservices was a mistake in his case

οΈπŸ“ Stuart shared that Rails 8.1 sorts columns for each table in schema.rb alphabetically

Source: @StuYam

οΈπŸ“ Stephen Margheim shared he is preparing a talk about the definition of a β€œtypeβ€œ, addressing some questions to his community

He got some replies:

Source: @yatish_me

Source: @joelquen

Source: @joelquen

Source: @joelquen

Go from AI overwhelmed to AI savvy professional

AI will eliminate 300 million jobs in the next 5 years.

Yours doesn't have to be one of them.

Here's how to future-proof your career:

  • Join the Superhuman AI newsletter - read by 1M+ professionals

  • Learn AI skills in 3 mins a day

  • Become the AI expert on your team

οΈπŸ“ Mohammad A. Ali posted his results of his latest time optimization

Source: @oldmoe

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

πŸ’‘ David Heinemeier Hansson shared a video about deploying with Kamal 2:

Source: @dhh

πŸ’‘ Ruby Cademy shared that the RubyCademy project is ending πŸ₯Ή 

Source: @RubyCademy

πŸ’‘ Mike Perham shared some insights about the sponsors of Ruby Association

Jean Boussier replied with:

Peter replied also on Jean comment:

Source: @peterzhu.ca

And the conversation goes even further

Source: @st0012.dev

πŸ’‘ Marco Roth posted about a new feature that will be available in Herb β†’ disable specific linter rules using comments

Source: @marcoroth_

πŸ’‘ Luke Gruber was proposed to be a Ruby Core committer and Matz accepted the proposal:

❀️ Why Choose Ruby and Rails

❀️Zil N shared about productivity in Rails:

Source: @zilasino

🧰 Gems, Libraries, Tools and Updates

πŸ†• New Gems and Repos

πŸ†• Sam Westerman published a new gem blankity - "There's a lot of conversion methods in Ruby: to_s, to_a, to_i, etc. This gem provides types which only respond to these conversion methods, and nothing else. "

πŸ†• Obie Fernandez published a new gem concise_errors - "ConciseErrors replaces ActionDispatch::DebugExceptions with a compact error page that highlights the exception and a truncated backtrace, making Rails crashes easier for humans and AI helpers alike. "

🧰 Updates

🧰 Sharon Rosner published a new version of Papercraft about Papercraft 3.0 Released

🧰 Josef Strzibny announced a new version of devise-otp - β€œTwo Factors authentication for Devise using Time Based OTP/rfc6238 tokensβ€œ

🧰 Greg Molnar shared that maintenance of Device has been starting

Source: @GregMolnar

🀝 Nate Berkopec shared how to improve your public profile as a developer

🀝 David Heinemeier Hansson went on TheStandup alongside ThePrimeagen and talked about Omarchy. The video is available on YouTube.

Source: @dhh

🀝 Swift Language announced Swift for Android, and this could be interesting news for Hotwire Native

Source: @SwiftLang

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

πŸ—ž Newsletters

πŸ—ž This Week in Rails published a new edition β†’ Bound SQL literals in CTEs, new tutorial and more! (I think we missed adding this in our last edition)

πŸ—ž This Week in Rails published a new edition β†’ Rails 8.1: Job continuations, structured events, local CI

πŸ—ž Ruby Weekly published a new edition β†’ Matz addresses the RubyGems situation

πŸ—ž Hotwire Weekly published a new edition β†’ Week 43 - Swift SDK for Android, Liquid Glass Tab Bar, and more!

πŸ—ž Awesome Ruby Newsletter published a new edition β†’ Edition 492

🎧 Podcasts

🎧 Adrian Marin published a new podcast episode β†’ Why Developers Resist Paying For Tools

🎧 Errol Schmidt published a new podcast episode β†’ Technology for Humans: Shan Cureton

🎧 Tropical.Rb published a new podcast episode β†’ Alan Batista e JoΓ£o Almeida - Tropical on Rails 2026

🎧 The Bike Shed published a new podcast episode β†’ 479: Hardly Strictly Remotely In-Person

🎧 The Ruby AI podcast published a new podcast episode β†’The TLDR of AI Dev: Real Workflows with Justin Searls

🎧 On Rails published a new podcast episode β†’ Alexander Stathis: Scaling a Modular Rails Monolith at AngelList

🎧 Rails Business published a new podcast episode β†’ Scott Werner

🎧 A Junior, a senior and I published a new podcast episode β†’ 23 - On Bootcamps with Aslihan and Sami

πŸŽ₯ Videos

πŸŽ₯ Joel Dapper published a new video β†’ Empirical Demo

πŸŽ₯ Drifting Ruby published a new video β†’ Active Job Continuations

πŸŽ₯ Go RAils published a new video β†’ Deploying Rails 8 with Hatchbox

✍🏾 Articles

What’s new πŸ†•

πŸ†• Henrique Medeiros published a new article about Rails 8.1 new API: Rails.event.notify(…)

πŸ†• Charles Oliver Nutter published a new article about Packaging Ruby Apps with Warbler: Executable JAR Files

πŸ†• JP Camara published a new article about Bitmasks, Threads and Interrupts: Concurrent, colorless Ruby

πŸ†• Joel Drapper published a new article about The journey to the perfect type signature in Ruby

πŸ†• Avo published a new article about Quickly clear the Rails cache in development

πŸ†• Brad Gessler published a new article about Phlex on Rails course is completed and launched

πŸ†• Ruby Central published a new article about Source of Truth Update – Friday, October 24, 2025

πŸ†• AndrΓ© Arko published a new article about We want to move Ruby forward

πŸ†• Charles Oliver Nutter published a new article about Warbled Sidekiq: Zero-install Executable for JVM

πŸ†• John Hawthorn published a new article about Searching Ruby's documentation

πŸ†• Charles Oliver Nutter published a new article about Packaging Ruby Apps with Warbler: Executable JAR Files

πŸ†• Jeffery Morhous published a new article about Deploying multiple apps wit Kamal 2

πŸ†• Florent Guilleux published an article about How to Use Meta-Tests to Future-Proof Your Business Logic

How-TOs πŸ“

πŸ“ Piotr Chmolowski published an article about How to Accept Crypto Payments in Rails

✍️ Joel Drapper published a new article about Bugs of Omission and Bugs of Commission

✍️ Lucas Dohmen published a new article about Optimizing Webfonts

Reply

or to participate.