- Short Ruby Newsletter
- Posts
- Short Ruby Newsletter - edition 121
Short Ruby Newsletter - edition 121
The one about where Ufuk Kayserilioglu does a deep dive into how singleton classes work and where Jean Boussier explores what happens when removing GVL

Table of Contents
(ad)
Writer RAG tool: build production-ready RAG apps in minutes
Writer RAG Tool: build production-ready RAG apps in minutes with simple API calls.
Knowledge Graph integration for intelligent data retrieval and AI-powered interactions.
Streamlined full-stack platform eliminates complex setups for scalable, accurate AI workflows.
π Launches and discounts
π Harrison Broadbent launched tailcolors.com

Source: @hrrsnbbnt
π Carla Urrea Stabile launched two new courses in Spanish on Linkedin Learning:
π Events
π Ruby Kaigi announced tickets are available for RubyKaigi 2025
π Rails Conf announced the opening of call for speakers

Source: @railsconf
π African Ruby Community announced the dates for RubyConf Africa (but at this moment the domain seems unregistered or expired):

Source: @ruby_african
π All about Code and Ruby
π Pat Shaughnessy published an article about Updating Ruby Under a Microscope
π Victor Shepelev published an article about Seven things I know after 25 years of development
πJean Boussier published a new article about So You Want To Remove The GVL?
π Dave Thomas published a new article about Simplify Logic With State Machines
π Julik Tarkhanov published a new article about Supercharge SQLite with Ruby Functions
π Vladimir Dementyev published a new artcile about Ruby on Rails on WebAssembly, the full-stack in-browser journey
π» Code Samples
π» Ufuk Kayserilioglu added some replies regarding how the singleton class works in Ruby:

Source: @ufuk.dev
π» Svyatoslav Kryukov shared a code sample about Turbo Mount React

Source: @skryukov.dev
π» Aaron Patterson shared a code sample about showing an warning when an object in mutated in a thread

Source: @tenderlove.dev
π» Joel Drapper shared a code sample about a Ruby microperformance tip:

Source: @joel.drapper.me
π» Ara Hacopian shared a code sample about using association extensions in Rails:

Source: @hacopian.de

Source: https://gist.github.com/mackuba
π» Vincent Rolea shared an update he discovered about Announcement: S3 default integrity change Β· Issue #3166 Β· aws/aws-sdk-ruby

Source: @vincentrolea.bsky.social
and he then shared a fix discovered at https://developers.cloudflare.com/r2/examples/aws/aws-sdk-ruby/

Source: @vincentrolea.bsky.social
π» Gregory Brown shared a code sample about inheriting from Module to build macros:

Source: @skillstopractice.com

Source: @skillstopractice.com
οΈπ» Victor Cobos shared about speeding up Rails development setup:

Source: @elalemanyo
οΈπ» Jorge Manrubia shared a code sample using concerns:

Source: @jorgemanru
οΈπ» Ruby Cademy shared a code sample about using index_with
:

Source: @RubyCademy
And here is an example about how to use index_with

Source: @RubyCademy
οΈπ» Matt Swanson shared a code sample about transforming HTML to Trix expectations:

Source: @_swanson
οΈπ» Alessandro Rodi shared a code sample about refactoring RSPec to be more readable:

Source: @coorasse
(ad)
Thereβs a reason 400,000 professionals read this daily.
Join The AI Report, trusted by 400,000+ professionals at Google, Microsoft, and OpenAI. Get daily insights, tools, and strategies to master practical AI skills that drive results.
π Thinking about Code Design
οΈπNate Berkopec shared data from enabling YJIT:

Source: @nateberkopec.bsky.social
π Nate Berkopec shared about first scalling bottleneck of Rails applications:

Source: @nateberkopec.bsky.social
π Jared Moody shared a thread about their experience switching from Redis to SolidCache:

Source: @jaredmoody.com

Source: @jaredmoody.com

Source: @jaredmoody.com
π Gregory Brown shared a code sample about literate programming of Ruby. You might also want to read this thread he shared about what inspired him to create this small program and maybe discover some other cool stuff in Ruby world:

Source: @skillstopractice.com

Source: @skillstopractice.com
On the same topic Brad Gessler shared Phlex handler:

Source: @bradgessler.com
π Nate Berkopec shared about Postgres and Multixact buffers incidents:

Source: @nateberkopec.bsky.social
οΈπ Gavin Morrice shared about their tech stack:

Source: @MorriceGavin
οΈπ Nick Schwaderer shared about Minitest vs RSPec:

Source: @schwad_rb
οΈπ Jspooner shared about deploying 26 Rails apps with American Cloud

Source: @jspooner
οΈπ Jason Swett shared about how they organize their tests:

Source: @JasonSwett
π‘Around code (news, findings, books, and more - all about Ruby)
π‘ Samuel Williams shared that Rack has passed 1 billion downloads

Source: @ioquatix
π‘ Gregory Brown asked us to help with a survey about Software Defects Survey

Source: @skillstopractice.com
π‘ Xavier Noria shared about programming, testing and documenting:

Source: @fxn.bsky.social
Gregory Brown added:

Source: @skillstopractice.com
π‘ Ermolaev Andrey created a benchmark comparing multiple programming languages and web severs. Here are some results:
π‘ Jesse Van Der Pluijm shared about why to learn minitest:

Source: @jessevdp_
π‘ Avinash Joshi shared about removing Redis:

Source: @avinashjoshi
οΈπ Zil N asked about what is the most frustrating part of working with Rails in 2025:

Source: @zilasino
Here are some answers:

Source: @aroundluiz

Source: @schwabsauce

Source: @coorasse

Source: @iwdt0

Source: @kingdrale

Source: @qrcey

Source: @jakeonrails
From another thread

Source: @Shpigford
β€οΈ Why Choose Ruby and Rails
β€οΈ Zeke Gabrielse published a new article about Trailblazing - explaining why they are choosing Rails:
π§° Gems, Libraries, Tools and Updates
π§° Updates
π§° JRuby announced that 9.4.11.0 is Released
π§° ashmaroli announced a new version of Jekyll 4.4.0 Released
π§° Nate Berkopec announced a new version of puma - 6.6.0 - Return to Forever
π§° Nate Berkopec announced a new version of GitHub - tj/terminal-table: Ruby ASCII Table Generator, simple and feature rich
π§° Thoughtbot announced a new version of Release v6.5.1 Β· thoughtbot/factory_bot
π§° Trevor Brown announced Release v0.16.0 Β· asdf-vm/asdf
π§° Jeremy Evans announced a new version of Sequel 5.89.0 Released Β· jeremyevans/sequel Β· Discussion #2271 Β· GitHub

Source: @jeremyevans0
π€ Stephen Margheim shared a thread about developers and AI (here are two posts from the thread)

Source: @fractaledmind.bsky.social

Source: @fractaledmind.bsky.social
π€ Kasper Timm Hansen shared about code as encoded communication:

Source: @kaspth.bsky.social
π€ Jason Swett shared about design:

Source: @JasonSwett
π€ Joey Wang shared a code sample about insalling deepseek through ollama

Source: @alazycoder2
More content: π π π§ π₯ βπΎ
John Hawthorn published their slides about Scaling Ruby @ Github
π Ruby On Rails published a new edition about Ruby on Rails β Minimal apps, reply_to address, rotate secrets, podman support
π Ruby Central published a new edition about January 2025 Newsletter
π Ruby Weekly published a new article about Getting rid of Ruby's global VM lock
π Andrey Eremin published a new edition about Static Ruby Monthly | Edition 1, January 2025
π Hotwire Weekly published a new edition about Week 05 - Monitoring ActionCable, back to jQuery in 2025, and more! β’ Buttondown
π Awesome Ruby Newsletter published a new article about π Issue 454 - Supercharge SQLite with Ruby Functions
π§ Podcasts
π§ David Hill published a new episode about Saron Yitbarek - Ode to RailsConf
π§ Jason Swett published a new episode about The Code with Jason Podcast - Code with Jason
π§ Jason Charnes, Chris Oliver, Andrew Mason published a new episode about Hotwire Native with Joe Masilotti
π½οΈ π₯ Videos
π₯ Donn Felker published a new video series about Hotwire Native Android with Jumpstart Pro
π₯ Drifting Ruby published a new video about Password Strength | Drifting Ruby
π₯ Yaroslav Shmarov published a new video about Best VS Code Extensions for Ruby on Rails Developers for 2025 #226
π₯ Graceful.Dev published a new video about Using Ruby's super
in Mix-in Modules
π₯ Yaroslav Shmarov published a new video about oEmbed - the secret public API for content metadata #227
π₯ CJ Avilla published a new video about Kafka with Ruby on Rails
π₯ Jason Swett published a new video about Making a Build Start Automatically - Live Coding on SaturnCI
βπΎ Articles
Whatβs new π
Avo published a new article about Authentication with the Rails 8 generator - Avo
Victor Shepelev published a new article about Seven things I know after 25 years of development
Jean Boussier published a new article about So You Want To Remove The GVL?
Dave Thomas published a new article about Simplify Logic With State Machines
Matheus Richard published a new article about Things you might not need in your tests
Pat Shaughnessy published a new article about Updating Ruby Under a Microscope
Julik Tarkhanov published a new article about Supercharge SQLite with Ruby Functions
Brad Gessler published an article about Build Rails Apps with Components
Brooke Kuhlmann published a new article about Ruby Source Parsing
PaweΕ Pokrywka published a new article about Understanding CORS errors in Signed Exchanges
RailsDesigner published a new article about Rails link_to_if and link_to_unless and about Multiple component variants with Tailwind
Mike Perham published a new article about Sponsoring Hanami
Sulman Baig published a new article about Rails 8 Production Setup with Dokku Guide
Gavin Morrice published an article about Sortable Semantic Version Strings in Rails (part 3)
PaweΕ DΔ browski published a new article about Magic behind Ruby code you see every day
Brad Gessler published a new article about Build Rails Apps with Components
Ben Sheldon published an article about RubyβThread Contentionβs is simply GVL Queuing
Igor Alexandrov published a new article about Rails Dockerfile Best Practices β Part 1: Image Slimming
Davide Santangelo published an article about Understanding Neural Networks with Ruby
Josef Strzibny published a new article about Setting up Cloudflare R2 buckets for Active Storage
Tonyyunker published a new article about Start a Rails Console in the Browser and about Managing Return Value of ActiveRecord Transactions
Francois Buys and Kasper Timm Hansen published a new article about Rails database migrations best practices
How-TOs π
Mohit Sindhwani published an article about Using DuckDB on Windows and with Ruby
Steve Polito published an article about Build a (progressively enhanced) drawer component with Hotwire
Stanko KrtaliΔ published an article about Monitoring ActionCable
Brad Gessler published a new article about Build Rails Apps with Components
Tejas Bubane published an article about Tejas' Blog - Arbitrary handling of mock arguments in RSpec
Davide Santangelo published an article about Building a Tiny Language Model (LLM) in Ruby: A Step-by-Step Guide - Part II
Mike Perham published an article about Conventional Commits
Reply