#​700 — April 25, 2024

Read on the Web

Together with  Dragonfly

Ruby Weekly

Autotuner: Speed Up Your Rails App with GC Tweaks — You can get some serious performance boosts if you tweak Ruby's garbage collection settings, but there are a lot of them, and it’s easy to get lost. Autotuner is a new tool from Shopify that can provide suggestions on how to best tune things based upon actual data collected while your app is running.

Peter Zhu

Ruby 3.3.1 (and More) Released — Due to the discovery of an arbitrary memory address read vulnerability when user-supplied data is provided to Ruby’s regex compiler, releases of all maintained Ruby lines are out including 3.3.1, 3.2.4, 3.1.5, and 3.0.7. (This is also the final 3.0 release as 3.0 is now EOL.)

Yui Naruse

Redis with Wings. Better Performance. Less Overhead — Dragonfly Cloud is a fully managed in-memory data store that delivers better performance at a significantly lower cost than Redis-based solutions. Start your free trial today.

Dragonfly sponsor

The Future of Ruby in the Age of AI — Obie (long-time Rubyist and author of The Rails Way) is bullish on Ruby’s future alongside AI, and lays out a bold case for why he thinks Rubyists have a comfortable spot in what’s to come.

Obie Fernandez

DHH: Rails 8 is Going to be a 'Leap Forward' in Deployment Ease — Kamal 2, auto-configuring SSL via Let’s Encrypt, single host multi app support, HTTP/2 support through Thruster, and more are all promised along with “Heroku-like ergonomics” wherever you choose to deploy your apps.

DHH on Twitter

📄 Articles, Tutorials & Videos

▶  Hacking on YJIT: A Livestream — Aaron ‘tenderlove’ Patterson and Maxime Chevalier-Boisvert are both prolific Ruby contributors, so if you have the time, it’s great to see them chat and code.

Aaron Patterson

Fly.io ❤️ Kamal — Sam Ruby is researching changes for the Rails 8 Agile Web Development with Rails book and the forthcoming updates to Kamal and other deployment improvements are high on his list.

Sam Ruby (Fly)

Meta's New Llama 3 AI Chat Sucks at Ruby? — While dogpiling on big tech is fun, Justin saves us the time to evaluate Meta’s offering by asking it three questions and comparing the answers to GPT4. (Spoiler: GPT: 3, Meta: nil)

Justin Searls

Pressure Kills Cognition: Budgets Shrink, But Scope Doesn’t 😱 — Been told to do more with less? Talk to Test Double about how to deliver with fewer people without losing quality.

Test Double sponsor

Preventing Timing-Based Enumeration Attacks with authenticate_by — While Rails 7.1’s authenticate_by doesn’t guarantee a constant time for authentication, the timing for valid vs invalid states is much less obvious.

Andres Chacon

📄 From a Lorry Driver to Ruby on Rails Developer at 38 – An interview with Pedro David Garcia Lopez, a Rubyist who made a major career change aged 38. Akshay Khot

📄 Should You Use Rails or Hanami? – Yes! 😏 I’m not sure this adds much to the discussion, but getting more Hanami on the radar is always a good thing IMHO. Aestimo Kirina

📄 Shipping Rails Logs with Kamal and Vector Roel Bondoc

📄 How to Route an Incoming URL to a Rack App in Rails Akshay Khot

🛠 Code & Tools

TurboConfirm 2.0: Upgrade data-turbo-confirm to Support Custom Dialogs — If you’re building a modern Rails 7.1 app, this upgrades Turbo’s data-turbo-confirm feature with custom dialog support and the ability to customize things further. v2.0 brings more examples to the README, native <dialog> support, and the ability to invoke it directly from app code.

RoleModel Software

Inexpensive and Efficient: Get Your Ruby & Rails Upgrade Done — Don't risk out of date Ruby & Rails versions. Get a free security assessment and discuss how our incremental upgrade service — CodeCare Shield — can improve the speed, security and stability of your app.

reinteractive/CodeCare® Shield sponsor

Groq-Ruby: A Ruby Client for a Super Fast LLM PlatformGroq is an interesting AI platform that uses its own custom hardware to run models at atypically high speeds. If you want to get Llama or Mixtral output at hundreds of tokens per second, it’s worth a try, and Dr Nic’s library makes it easy. (Groq has OpenAI API compatibility so you can use an OpenAI client with it too, but Groq-Ruby provides better abstractions.)

Dr Nic Williams

JSON::Stream 1.0: Streaming JSON Parser — A JSON parser built around a state machine that generates events for each state change in a memory efficient way – a bit like a classic XML SAX parser.

David Graham