#​735 — January 23, 2025

Read on the Web

Together with  Memetria

Ruby Weekly

Ruby Next: Transpile Modern Ruby Code to Run on Older Versions — An interesting way to get Ruby code written with the latest syntax to run on older versions or alternative implementations (like mruby or Opal, say). This playground shows off the basic idea, and this could be useful for library maintainers or anyone who wants to experiment. GitHub repo.

Vladimir Dementyev

Optimizing Ruby’s JSON — Rails core team member Jean concludes a seven-part series going super deep into efforts made to significantly boost the performance of Ruby’s json library, with the end results trumping many of the alternatives. We linked to this when Jean began the series, but now the whole epic journey is here to enjoy.

Jean Boussier

Memetria K/V: Efficient Redis & Valkey Hosting — Memetria K/V offers Ruby applications hosting for Redis OSS and Valkey, complete with large key tracking and detailed analytics for improved data oversight and performance.

Memetria sponsor

IN BRIEF:

Using CloudFlare Turnstile to Protect Certain Pages on a Rails AppTurnstile is a free service that replaces CAPTCHAs with Cloudflare’s proprietary bot detection approach.

Jonathan Rochkind

Stealthly Browsing and Scraping with FerrumFerrum is a Ruby library for remotely controlling Chrome and Harrison shares some tips for staying under the radar when using it. (As always with these things, obey local laws and use your best judgment as to what is responsible.)

Harrison Broadbent

🐌 If Your Rails Team Needs a Little Boost… — We can augment your team with devs to help you keep up with your delivery schedule. Test us!

SINAPTIA sponsor

📄 How to Infer a Form's Method for Custom Objects in Rails – Making your Ruby objects ActiveModel compatible, such that Rails knows whether to use POST or PATCH, is surprisingly easy. Joël Quenneville (Thoughtbot)

📄 Fixing a Bug in My Lateral Joins Queries with Rails Benito Serna

📄 Rails 7.2 and YJIT on Heroku – Handy tips if you’re deploying to Heroku. Ryan Wood

📄 Why Rails in 2025? Aji Slater

🛠 Code & Tools

Rage: An HTTP API Framework Compatible with Rails — There are plenty of ‘alternative’ Ruby webapp and HTTP API approaches (e.g. Sinatra, Roda, or Hanami) but ‘Rails compatibility’ is the big win for this high performance, fiber-based API-only option. v1.12.0 adds a Redis adapter for scaling Cable-based apps across servers.

Roman Samoilov

Lrama: Pure Ruby LALR Parser Generator — An official Ruby project to implement an LALR parser generator in pure Ruby with a goal of providing error tolerant Ruby parsing.

Ruby Project

🚀 Need to Upgrade to Rails 8.0 + Ruby 3.4 but Not Sure How? — Bonsai by FastRuby.io is the monthly upgrade service trusted by top-notch engineering teams. Upgrade with confidence.

FastRuby.io | Upgrade Services sponsor

AutoHtml: Filters That Transform Plain Text Into HTML Code — For situations where even Markdown might be overkill (although it is an option..)

Dejan Simić

has_some_of_many: Optimized Top-N-Per-Group Active Record Associations — Adds optimized association methods (has_one_of_many, has_some_of_many) for ‘top N’ queries to Active Record using efficient JOIN LATERAL queries.

Ben Sheldon

📰 Classifieds

Buff your Monolith Performance metrics, log management - everything you need to keep Rails shiny and fast. Try Scout Monitoring!


Protect your SaaS app with advanced device fingerprinting from WorkOS Radar. Stop fake signups, free tier abuse, bot attacks and brute force attempts today.

📢  Elsewhere

A quick roundup of some of other interesting updates in the broader developer landscape, in case you've missed them:

  • Tailwind CSS 4.0 has just been released. It's a CSS framework that's increasingly popular in the Rails world. v4 features much faster builds, better support for cutting edge CSS features, simpler installation, CSS-first configuration, and more.

  • Bun is a high-performance JavaScriptCore-based JavaScript runtime that boasts compatibility with Node.js but is faster and has a bundler, test runner and other utilities baked in. Bun 1.2 just landed and it's a big step forward. A neat way to run JS server-side without many of Node's headaches.

  • If you've not worked with it yet, Hemath has an accessible introduction to the basics of WebAssembly.

  • Looking for a self-hosted GitHub-a-like? Forgejo is an interesting, full featured Go-powered fork of Gitea.

  • Act is a tool for running your repo's GitHub Actions locally.