#​645 — March 16, 2023

Read on the Web

Together with  Cloud66 logo

Ruby Weekly

Understanding the Rails Router — The routing of requests is a fundamental feature of most webapp frameworks and Rails’ router has become particularly powerful over the years. Akshay digs deep into it here.

Akshay Khot

Awesome Ruby: A Curated List of 900+ Libraries and Tools — Every year or two, we link to this epic, categorized collection of (useful!) Ruby goodies. It continues to be updated frequently with new entries added (like VideoInfo, just today) and you’re encouraged to contribute your own projects too.

Marc Anguera Insa

Blue/Green Deployments for Rails on Any Cloud — Deploy Rails applications hassle-free on any cloud and in any region with full database support, custom traffic rules, zero-downtime deployments, blue/green and canary releases, WAF, and more. Try it today for free, and get $100 in credits with the code: RubyWeekly100

Cloud 66 sponsor

🤗  Little Gestures Make Our Tools and Community Better — Sometimes it’s the little things that can make an ecosystem, community, or tool more welcoming to people who are just getting started, says Brad. I agree. Keep Brad’s thoughts in mind when working on your own tools or community resources.

Brad Gessler (Fly)


📕 Tutorials, Articles, and Videos

A Closer Look at Ruby 3.2's WASI Integration — Some background on the relevance WebAssembly and WASI followed by a look at the technical details and processes including the provision of a virtual file system and the addition of context switching. It’s early days but shows a lot of promise.

Faraaz (deepsource)

Automatic Preloading in Rails: The Dream That Came True? — The ar_lazy_preload gem tries to resolve N+1 problems in Rails by enabling auto-preloading for your queries. In this post, Evgeniy digs into the problem and explains why “this is very important and would help you avoid many pitfalls.”

Evgeniy Demin

Need to Upgrade Rails? Don’t Know How Long It Will Take? We Can Help 🚀 — Get a roadmap by the experts: We wrote the book on Rails upgrades and ran the last 3 upgrade workshops at RailsConf.

FastRuby.io | Rails Upgrade Services sponsor

Translating XML/Epub with DeepL and ChatGPT — The author maintains two gems for translating documents and shares a little of what’s involved and how ChatGPT isn’t ready to replace DeepL for translation just yet.

Mark Chao

▶  Using ChatGPT to Write an AWS Cognito + Sinatra Integration — Continuing on the AI-in-development theme, it’s early days for this sort of thing but the initial results are promising. (5 minutes.)

Lucas Luitjes

🤖 If using ChatGPT to write Ruby code intrigues you, Deanin has ▶️ a 15-minute screencast on using the just unveiled GPT-4 to work on a Rails app too.

Assigning a Default Value to an Attribute in Active Record — No callbacks like before_validation involved, but using attribute instead.

Andy Croll

Working with Markdown — A quick introduction to both Redcarpet and Kramdown for rendering Markdown to HTML.

Aestimo Kirina

Get APM Insights into Your Ruby Apps in Less Than 4 Minutes

Scout APM sponsor

A Generalized User-Local Container for UI State in Kredis
Julian Rubisch

How to Click Links in Rails Mailers When Writing Tests
Steve Polito

▶  Discussing the Ruby Language Server with Vinicius Stock
Remote Ruby Podcast podcast

🛠 Code & Tools

Coltrane: A Music Theory Library with Added CLI — Generate chord progressions for various music genres and see how to play them on different instruments. Find the progression of chord sequences. Dig up scales after providing some chords. There’s a lot to enjoy here.

Pedro Maciel

VideoInfo 4.0: Get Video Info From Dailymotion, Vimeo, Wistia, and YouTube URLs — If you’ve got Dailymotion, Vimeo, Wistia or YouTube video URLs and want to grab useful metadata about them..

Thibaud Guillaume-Gentil

Fixed Price Monthly Code Maintenance and Upgrades for Rails Apps

reinteractive Pty Ltd sponsor

Moneta 1.6.0: A Unified Interface to Key/Value Stores — Supports a variety of systems (about 20 in all – including Redis, Memcached, SQLite, a simple in memory store, PStore, and even Active Record) and aims to offer consistent behavior across them with full configuration of the serialization process and atomic operations.

Mendler, Katz, and Pharo

Railsochrome: Print Logs from Ruby in the Chrome Console — Billed as an ‘experimental’ solution for now, it relies upon a browser extension to let your Ruby/Rails app pass things into Chrome.

Igot Kasyanchuk

Prosopite: Rails N+1 Query Auto-Detection with Zero False Positives — A library that monitors SQL queries and looks for various patterns that imply N+1 queries are going on.

Mpampis Kostas


Software Engineer (Backend) — Join our "kick ass" team. Our software team operates from 17 countries and we're always looking for more exceptional engineers.
Sticker Mule

Find Ruby Jobs with Hired — Hired makes job hunting easy-instead of chasing recruiters, companies approach you with salary details up front. Create a free profile now.

😍 More Good Performance News..

Good news for Ruby performance continues to roll in.