#​734 — January 16, 2025

Read on the Web

Together with  Crunchy Data

Ruby Weekly

Zverok's Guide to Ruby 3.4's Language Changes — Each year, Victor blesses us with a mammoth roundup of changes that arose in the Ruby language in the latest major version. Ruby 3.4 wasn’t one of the largest leaps forward in this sense, but he still has lots of great examples here, making this a must read/skim.

Victor Shepelev

YJIT 3.4: Even Faster and More Memory-Efficient — YJIT (Yet Another Ruby JIT) is an optimizing compiler built into CRuby since Ruby 3.1 and it got even faster in Ruby 3.4 (by 5-7%). Maxime, who started Shopify’s YJIT team, explains the improvements as well as new options and techniques you can use to get more out of it.

Maxime Chevalier-Boisvert

Optimize Postgres Performance and Reduce Costs with Crunchy Bridge — YNAB (You Need A Budget) switched to fully managed Crunchy Bridge for Postgres and experienced a 30% performance increase and 10% cost reduction. YNAB enjoys seamless scaling, high availability, and expert support for a better Postgres experience.

Crunchy Data sponsor

IN BRIEF:

▶  How To Build Basic Desktop Applications in Ruby — The recently released recording of a workshop given at RubyConf 2024 by the creator of the Glimmer suite of Ruby DSL-driven desktop and Web app building frameworks. We’ll have more on Glimmer in a future issue, but this is a great way to get started.

Andy Maleh

Why Bundler Checksums Are a Security Game-Changer — As the source of many of our code’s dependencies, the RubyGems system is a potential vector for security issues. Bundler 2.6 introduced checksum verification as a way to at least ensure the gems you install are identical to the ones recorded in Gemfile.lock.

Maciej Mensfeld

What is it (in Ruby 3.4)? — A quick look at one of a minor addition to Ruby 3.4, but one that might change your everyday code because it certainly looks nicer than _1 or |i| i.

Kevin Murphy

Escaping Ruby's Gem:SafeMarshal SandboxGem::SafeMarshal was introduced to RubyGems as a way to ‘safely’ load marshalled specs from gems. Of course, that means folks will set out to see if it really is safe.

Luke Jahnke

Back Away from the Backlog 🛑 — Your product doesn’t need bloat. Simplifying drives bigger outcomes, happier teams, and real impact. Learn how to start now.

Test Double sponsor

📄 How to Set Up a Basic Sinatra + React Webapp – The barebones steps needed to spin up a Sinatra backend serving up a React frontend using Vite and Tailwind for building basic Ruby + React apps. Peter Cooper

📄 Lessons Learned Migrating My SaaS App to Rails 8 – Comparing Kamal to Dokku, the removal of Redis, and using a custom compressor for Rails’ cache. Paweł Urbanek

📄 What's Involved in Getting a 'Modern' Terminal Setup? Julia Evans

🛠 Code & Tools

Superglue 1.0: A Way to Bring Rails and React TogetherSuperglue is a library for bringing Rails and React closer together in a way that feels as natural as Rails’ default Hotwire and Stimulus-based approach to the frontend.

Thoughtbot

SyntaxFinder: Analyze Your Ruby Scripts with Prism — A new tool being worked on by Ruby core team member ko1 to find syntax patterns in Ruby code using the new Prism Ruby parser.

Koichi Sasada

☢️ Tech Debt, Performance or Dev Process Problems in Your App? — Our Application Assessment service can help you figure out how to deal with them.

SINAPTIA sponsor

Campsite: A Large Rails + JavaScript SaaS App Goes 'Source Available'Campsite is/was a webapp offering something akin to a Slack-style interface to forum-like posts for team communication. It’s a good example of a fully fledged, commercial Rails app with lots of moving parts and a surprising number of best practices, if you’d like to see how such apps are built. (Note: They say it’s now ‘open source’ but it’s really Creative Commons NonCommercial licensed.)

Campsite Team

Yake 1.2: A DSL for Writing AWS Lambda Handlers Rake-Style — It includes the ability to write Sinatra style routes and feels like an idiomatically Ruby-ish way to work with AWS’s serverless platform.

Alexander Mancevice

📰 Classifieds

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


💡 Discover and share Ruby & Rails snippets with CodeSnips. Follow coders, get inspired, and build your next app faster. Visit codesnips.io.