#​705 — May 30, 2024

Read on the Web

Together with  JudoScale

Ruby Weekly

The Gemfile of Dreams Returns for 2024 — First published almost 18 months ago, this article distilling several developers’ experiences into a curated selection of useful libraries to consider when building modern Rails apps has had a major update for 2024.

Evil Martians

Ruby 3.3.2 Released — It’s the latest version, but there aren’t any new features. It’s a bug-fix release to fix, admittedly, quite a lot of minor nits including being able to crash Ruby with a rather odd string-related incantation.

Takashi Kokubun

Prod Alerts? You Should Be Autoscaling — Workloads are variable, and we scale your capacity accordingly. Batch jobs? Scaled up. Quiet night? Scaled down. Traffic spike? No problem! Sidekiq, Solid Queue, Delayed Job? We support them all.

Judoscale sponsor

▶  David Heinemeier Hansson on SQLite — The creator of Rails caught up with Aaron Francis to discuss all things relating to the latest renaissance of SQLite and its use in production-facing Rails apps. It’s a 50-minute video, but with a complete written transcript.

High Performance SQLite

Ruby 3.1.6 Released3.4.0 preview 1 might be out, but Ruby 3.1 is still getting occasional security maintenance releases. v3.1.6 fixes two bugs with building Ruby 3.1, plus some Fiddle breakage.

Hiroshi SHIBATA

📄 Articles, Tutorials & Videos

Destructuring the World (and any Object) in Rubydeconstruct_keys and deconstruct (more on deconstruct here) are special methods you can use on your own classes and objects to define behavior/values when they're used in pattern matching.

Josh Frankel

 Scheduling with Ice Cube — Not the rapper, but the iCalendar-inspired repeated event library. It’s handy if you have tasks you need to complete on a very human-like repeating basis (e.g. the weekday closest to the 1st).

Ryan Bigg

🔓 Is Your Rails App Secure? Need to Upgrade on a Budget? — Talk is cheap. Experience is king. Bonsai by FastRuby.io is the monthly upgrade service for top-notch engineering teams 🚀

Rails Upgrades on Autopilot sponsor

Better Know a Ruby Thing: Methods and Access Control — Noel has been writing a series on individual Ruby features he wants to look closer at. Today we get to look at methods and how public, protected and private affect their visibility.

Noel Rappin

Why, After Six Years, I’m Over GraphQL — It’s not a Ruby specific issue, but the author uses Ruby to demonstrate his qualms.

Matt Bessey

A Single File Rails Application ⁉️ — We’ve seen this before, but willing to bet there are plenty of people out there that haven’t. Both a neat trick and cute exercise.

Greg Molnar

📄 Getting Started: Your Rails App Hosted on DigitalOcean with AppSignal Aestimo Kirina

📄 How to Reuse the Same Page in Different Turbo Frame Flows Radan Skorić

📄 Production-Grade (ish) Rails Deployment on Hetzner with Kamal Luiz Kowalski

📄 Hanami's Place in the World of Rails? – Very much an opinion piece. Krzysztof Kamil

📄 How I Saved 100 GB of Disk Space on my Mac Rakesh Arunachalam (Thoughtbot)

🛠 Code & Tools

PBT: Property-Based Testing for Ruby — Rather than writing individual tests for specific examples of functionality, property-based testing encourages defining general properties of a system to check if they always remain true. This example of such a test for a sorting method shows off the idea.

Masato Ohba

Positioning: Simple Positioning for Active Record Models — As maintainer of ActsAsList and Ranked Model, Brendon knows a few things about bringing order to AR objects ;-) Supporting multiple lists per table and offering relative positioning, Positioning builds upon his earlier efforts.

Brendon Muir

Scout Monitoring Launches Unlimited Free Tier - Signup Now — Painless deployment and no need to talk to sales. Get performance insights you need on your own in less than 5 minutes.

Scout Monitoring sponsor

Ruby on Jets 6.0: A New Way to Take Rails ServerlessRuby on Jets is a long standing commercial platform for deploying Ruby apps on AWS’s serverless Lambda platform, and now it supports Rails apps too. You do get two weeks to try it out though and see if serverless Rails is for you.

Tung Nguyen

💡 Lamby is another option to consider in this space.

recursive-open-struct: OpenStructs in OpenStructs in OpenStructs — An OpenStruct subclass that returns nested hash attributes as RecursiveOpenStructs.

Various Contributors