Short Ruby Newsletter - edition 139

The one where Hanami starts a funding campaign, where Ruby committers discuss renaming Namespace and where Zeitwerk reached 500 million downloads

In partnership with

Table of Contents

(ad)

Learn AI in 5 minutes a day

Whatโ€™s the secret to staying ahead of the curve in the world of AI? Information. Luckily, you can join 1,000,000+ early adopters reading The Rundown AI โ€” the free newsletter that makes you smarter on AI with just a 5-minute read per day.

๐Ÿš€ Launches and discounts

๐Ÿš€ Sandi Metz announced a special birthday celebration sale, offering significant discounts on her popular POOD-I course and 99 Bottles of OOP book. Hurry up and take advantage of this opportunity โ†’ https://sandimetz.com/birthday

๐Ÿš€ Hanami launched a campaign to get funding for Hanami, Dry and Rom. Read the article and see if you can contribute to Hanami efforts to keep going:

๐Ÿš€ Nicolรกs Galdรกmez launched an product to help spinning Kamal configurations with ease โ†’ Kamalify

๐Ÿš€ RoRvsWild launched Read The Nice Manual, a new approach of reading documentation for Ruby, Rails and other gems. Here is also a blog post for this launch which is recommended to check it out: Read The Nice Manual. If youโ€™re interested in contributing to this project, here is your chance to do it โ†’ rorvswild-theme-rdoc

๐Ÿš€ Brad Gessler announced pre-order for his new course โ†’ Phlex on Rails

๐Ÿš€ Bilal made a debugging tool for parsing Rails logs. For those who might be interested in this, he offer early-access to this app โ†’ Logman - Rails log debugging made easier

Source: @bilal.dev

๐Ÿš€ Mehdi Farsi launched Cash Contest - โ€œLearn proven online income skills, land paying clients, and compete with members to improve, with quick answers in our private forum.โ€œ

๐Ÿ“… Events

๐Ÿ“… Ruby Europe announced a new meetup which will happen on June 24, Berlin. Hurry up and register here โ†’ Ruby + AI Meetup

Source: @RubyEurope

๐Ÿ“… Irina Nazarova announced CFP are open for San Francisco Ruby Conference

Source: @inazarova

๐Ÿ“ Submit your application right here โ†’ Call for Proposals SF Ruby

๐Ÿ“… Euruko shared they're creating something special for this year's event โ†’ https://2025.euruko.org

Source: @euruko

๐Ÿ‘‰ All about Code and Ruby

๐Ÿ‘‰ Stack Overflow launched their new survey Not just a vibe, the Stack Overflow Developer Survey is really here. Take the survey here and help Ruby be more present in this survey:

(ad)

Unlock the Ultimate ChatGPT Toolkit

Struggling to leverage AI for real productivity gains? Mindstream has created a comprehensive ChatGPT bundle specifically for busy professionals.

Inside you'll find 5 battle-tested resources: decision frameworks, advanced prompt templates, and our exclusive 2025 AI implementation guide. These are the exact tools our 180,000+ subscribers use to automate tasks and streamline workflows.

Subscribe to our free daily AI newsletter and get immediate access to this high-value bundle.

๐Ÿ’ป Code Samples

๏ธ๐Ÿ’ป Hans Schnedlitz demonstrated how to build your own IRB commands

๏ธ๏ธ๐Ÿ’ป Yaroslav Shmarov shared a code sample with insights from building a screenshot generator

Source: @yarotheslav

Source: @yarotheslav

๏ธ๐Ÿ’ป Rosa Gutierrez posted a code snippet about Range#overlap? method

Source: @rosa.codes

๏ธ๐Ÿ’ป James Kerr shared a helper method for finding the number of days in a date range

Marco joined with a simple and clean approach for solving this problem ๐Ÿ’ก 

Source: @marcoroth_

๏ธ๐Ÿ’ป Ismael Celis shared a code snippet with some API endpoints using Ruby Rack router

๏ธ๐Ÿ’ป Zeke Gabrielse shared a code snippet about how to safely add a NOT NULL column constraint to a large table

Source: @_m27e

Source: @_m27e

๏ธ๐Ÿ’ป Devin Starks shared an interesting tip for displaying field-specific error messages

๏ธ๐Ÿ’ป Brad Gessler shared a solution for a Turbo bug he ran into

Source: @bradgessler

Source: @bradgessler

๏ธ๐Ÿ’ป Hans Schnedlitz shared a code snippet about Bundler inline

Source: @hschnedlitz

Source: @hschnedlitz

๏ธ๐Ÿ’ป Ruby Cademy demonstrated how to use โ€˜ActiveRecord::SpawnMethod#mergeโ€™ to intersect relations and simplify complex Rails queries

Source: @RubyCademy

๏ธ๐Ÿ’ป Joey Wang shared a code snippet about monkey-patching ActiveRecord's PostgreSQL adapter

Source: @alazycoder2

๏ธ๐Ÿ’ป Ruby Cademy posted a code snippet with a nice usage of case/when

Source: @RubyCademy

๐Ÿ’ป Hans Schnedlitz shared an interesting Neovim configuration for switching between StandardRB and RuboCop

Source: @hschnedlitz

Source: @hschnedlitz

๐Ÿ“ Thinking about Code Design

๐Ÿ“๏ธ Hans Schnedlitz showed how running โ€œrails statsโ€ provides statistics about your project

Source: @hschnedlitz

Source: @hschnedlitz

His community replied with their statistics ๐Ÿ“ˆ 

Source: @seuross

Source: @bsilva96

Source: @acetinick

๏ธ๐Ÿ“ Charles Oliver Nutter implemented a optimization for JRuby

Source: @headius

๏ธ๐Ÿ“ Joel Drapper demonstrated how to see your literal property type signatures on hover

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

๐Ÿ’ก Xavier Noria celebrated an amazing milestone, 500 million downloads for Zeitwerk ๐Ÿฅณ 

๐Ÿ’กJorge Manrubia shared what editor they are using to build the next ActionText

Source: @jorgemanru

๐Ÿ’ก Josh Pigford asked his community for Rails + Postgres app deployment solutions

Source: @Shpigford

His community replied with the following:

Source: @EngMarketer

Source: @aviflombaum

This is an interesting one ๐Ÿค– 

Source: @newdogcow

Here are other solutions mentioned in this post:

๐Ÿ’ก Max Bernstein shared an amazing achievement, he is now a Ruby committer ๐Ÿฅณ 

Source: @tekknolagi

๐Ÿ’ก Ruby On Rails announced a new documentation PR is ready for community review. The PR can be seen here โ†’ [RF-DOCS] Move PostgreSQL Guide into the API and other guides

Source: @rails

๐Ÿ’ก Josef Strzibny shared his database survey results, revealing strong demand for SQLite with Kamal

Source: @strzibnyj

โค๏ธ Why Choose Ruby and Rails

โค๏ธ Judge.Me posted their appreciation for Rails. Judge.me is now the newest Core member of the Rails Foundation ๐Ÿš€ 

โค๏ธ Steven Gharms published an article about Ruby Gem Naming: The Art of Delightful Obscurity

โค๏ธ Ruby Central published a new article about Company Spotlight: How Persona Scales High-Stakes Identity Systems With Rails

๐Ÿงฐ Gems, Libraries, Tools and Updates

๐Ÿ†• New Gems and Repos

๐Ÿ†• Thomas Leitner made a new gem โ†’ versadok - โ€œVersatile document creation markup and libraryโ€œ

๐Ÿ†• Ebi You announced a new gem โ†’ flow_chat - โ€œRails Framework for building conversational interfaces on USSD and WhatsApp with interactive flowsโ€œ

๐Ÿ†• Alex Larra published a new gem internator - "Internator is a Ruby-based CLI tool that automates iterative pull request improvements using OpenAI's Codex. It cycles through objectives, makes incremental changes, automatically commits and pushes each update, and optionally waits between iterations."

๐Ÿงฐ Updates

๐Ÿงฐ Avo announced a new release v3.21.0. For more details of this release, we recommend to check out this blog post โ†’ v3.21.0 - A few enhancements, bugfixes and new Avo 4 experiments

๐Ÿงฐ Carmine Paolino announced a new version of ruby_llm - โ€œStop juggling AI SDKs! RubyLLM offers one delightful Ruby interface for OpenAI, Anthropic, Gemini, Bedrock, OpenRouter, DeepSeek, Ollama & compatible APIs. Chat, Vision, Audio, PDF, Images, Embeddings, Tools, Streaming & Rails integrationโ€œ. He also wrote a blog about this release in case you want to get more information โ†’ RubyLLM 1.3.0: Just When You Thought the Developer Experience Couldn't Get Any Better ๐ŸŽ‰

๐Ÿงฐ Stephen Margheim announced an update for chaotic_job - โ€œ๐Ÿ‘พ Resilience test helpers for Active Jobโ€œ

๐Ÿงฐ Mario Alberto Chรกvez announced a new version of rails-mcp-server - โ€œA Ruby gem implementation of a Model Context Protocol (MCP) server for Rails projects. This server allows LLMs (Large Language Models) to interact with Rails projects through the Model Context Protocolโ€œ. For this release, is available a blog with more in-depth details which is worth checking out โ†’ Rails MCP Server: Enhanced Documentation Access

๐Ÿงฐ Stephen Margheim announced a new version for litestream-ruby - โ€œLitestream is a standalone streaming replication tool for SQLite. This gem provides a Ruby interface to Litestream.โ€œ

๏ธ๐Ÿงฐ Joel Drapper released a new version of literal - โ€œLiteral provides a set of tools to help you write more expressive, confident Ruby, reduce your error rate and get more mileage out of your existing tests by validating inputโ€œ

๐Ÿค Nate Hopkins shared his perspective about microservices and complex enterprise solutions

Source: @hopsoft

๐Ÿค Chris Blunt shared a code sample about using โ€˜!overrideโ€˜ modifier in Docker Compose files

More content: ๐Ÿ“š ๐Ÿ—ž ๐ŸŽง ๐ŸŽฅ โœ๐Ÿพ

๐Ÿ—ž Newsletters

๐Ÿ—ž Rails published a new edition of their newsletter โ†’ Improving Rails 8 week after week

๐Ÿ—ž Ruby Weekly published a new article about Benchmarking common Ruby and Rack servers

๐Ÿ—ž Ruby Central published a new edition of their newsletter โ†’ The Ruby Central README: May 2025

๐Ÿ—ž Women On Rails Newsletter - International Version published a new edition about Newsletter WoR #62: building a website without a framework, managing your manager, CSS carousels...

๐Ÿ—ž Awesome Ruby Newsletter published a new edition about Issue 472 - BASIC interpreter in Ruby

๐Ÿ—ž AnyCable published a new edition about Any Cables Monthly #29: Laravel Cable

๐Ÿ—ž Hotwire Weekly published a new edition about Week 23 - Custom Path Configuration Properties, new action_text-trix gem, and more!

๐ŸŽง Podcasts

๐ŸŽง Code and the Coding Coders who Code it published a new podcast episode โ†’ Episode 51 - Chris Oliver

๐ŸŽง Brendan Buckingham published a new podcast episode โ†’ Rails Business - Adrian Marin of Avo

๐ŸŽฅ Videos

๐ŸŽฅ Chris Oliver published new videos:

๐ŸŽฅ Irina Nazarova shared a new video โ†’ SF Ruby Meetup at Chime, June 4, 2025

๐ŸŽฅ Joe Masilotti published a new video โ†’ Hotwire Native Live episode #2

๐ŸŽฅ Dave Kimura published a new video โ†’ Episode 513 - Kamal 2 in Github Actions | Drifting Ruby

โœ๐Ÿพ Articles

Whatโ€™s new ๐Ÿ†•

๐Ÿ†• Ruby on Rails published a new article about Judge.me joins the Rails Foundation as a new Core member

๐Ÿ†• Peter Zhu published a new article about Implementing Embedded TypedData Objects

๐Ÿ†• Kirill Boychenko published a new article about Malicious Ruby Gems Exfiltrate Telegram Tokens and Messages Following Vietnam Ban

๐Ÿ†• Amanda Bizzinotto published a new article about Implementing Semantic Search with Sequel and pgvector

๐Ÿ†• Akshay Khot published a new article about Understanding the Render Method in Rails and about Redirects in Rails: Manual, Helper, and Internals

๐Ÿ†• Ruby Central published a new article about Company Spotlight: How Persona Scales High-Stakes Identity Systems With Rails

๐Ÿ†• Vishnu M published a new article about Understanding Queueing Theory

๐Ÿ†• Edy Silva published a new article about What It Takes To Foster A Community Around Rails

๐Ÿ†• Avo published a new article about Cloudflare Turnstile for spam prevention in Rails

๐Ÿ†• Harrison Broadbent published a new article about Our production Ruby on Rails stack

๐Ÿ†• Alexey Varfolomeev published a new article about Whatโ€™s Next for RubyMine

๐Ÿ†• Kevin Sylvestre published a new article about Exploring Common AI Patterns with Ruby

๐Ÿ†• Daniela Baron published a new article about The Machines Finally Made Us Care About Documentation

How-TOs ๐Ÿ“

๐Ÿ†• Dom Christie published a new article about Custom Path Configuration Properties in Hotwire Native iOS

Reply

or to participate.