#572 — September 30, 2021 |
Ruby Weekly |
Proposal to Merge YJIT Into CRuby / MRI — YJIT is a just-in-time compiler used by teams at Shopify and GitHub offering decent benchmark gains over vanilla CRuby. Its background was explained in this post back in June. This proposal is to merge it now to start getting core team feedback and prepare for an eventual 3.1 or 3.2 release, and Matz has already given the process his thumbs up. Ruby Issue Tracking |
Stimulus 3 + Turbo 7 = Hotwire 1.0 — DHH formally announces Hotwire 1.0, calling it the “ideal stack for front-end development” since it powers HEY, Basecamp 4, and JavaScript in Rails 7 as the industry benefits from “conceptual compression.” "HTML Over The Wire is the way," says David. There's also a specific Stimulus 3 release post too. David Heinemeier Hansson |
Try Scout’s New Error Monitoring Feature Add‑On for Free — Scout APM uses tracing logic that ties bottlenecks to source code so you know the exact line of code causing performance issues in minutes. See for yourself why Scout is a Ruby developers’s best friend with a free 14-day trial, no credit card needed. Scout APM sponsor |
Stamping Out Overflow Checks in Ruby — If you like digging into the weeds of optimizations and Ruby implementation details, you should read this post about stamps, masking, and how to squeeze a bit more performance out of TruffleRuby under certain conditions. Chris Seaton |
QUICK BITS:
|
|
📕 Articles & Tutorials |
More Ruby Magic — Noel walks us through a code experiment around interpreting dates using natural language that may not be overly useful but is kinda fun anyway. Noel Rappin |
Multi-Factor Authentication for Rails with WebAuthn and Devise — An introduction to setting up multi-factor auth in a Rails app leaning on the W3C WebAuth standard in particular. Petr Hlavicka |
Exploring Ruby’s Scott Bartell |
Crunchy Bridge: Fully Managed Multi-Cloud Postgres — Crunchy Bridge users experience performance improvements, better developer workflow and seamless migration. Crunchy Data sponsor |
Lessons Learned in a Major Rails Upgrade: Tooling — The last post in a three-part upgrade series discussing the gems, scripts, and other tools that Invoca used to manage parallel versions and complete their large upgrade. Luan Vieira (Invoca) |
Custom Form Handling with Turbo — Turbo will be a default part of Rails from Rails 7, replacing Turbolinks and rails‑ujs. Ollie Haydon-Mulligan |
▶ Discussing Prettier, Parsing and Regex with Kevin Newton — Kevin Newton, a staff engineer at Shopify, talks about RubyKaigi, his Prettier plug‑in, and more. The Ruby on Rails Podcast podcast |
Code Golf: Conditionally Add To an Array — It’s not the code golf you might be expecting, maybe more code course management. Kevin Murphy (Gnar) |
▶ Discussing Using Docker with Ruby with Huzefa Biyawarwala Ruby Rogues Podcast podcast |
Rails 7 Replaces |
🛠 Code & Tools |
QUICK RELEASES: Google Auth Library for Ruby 1.0 |
Code2flow: Generate Call Graphs for Dynamic Languages — Including JavaScript, Python, Ruby and PHP. Turns your source into ASTs, finds function definitions, where those functions are called, and turns that into diagrams. Scott Rogowski |
offline-sort: Sort Large Data Collections with Limited Memory Usage — Given an Salsify |
A Better Way To Index Your Postgres Database: pganalyze Index Advisor pganalyze sponsor |
Ahoy Email 2.1.0: Email Analytics for Rails — Add the ability to track the emails you send from your Rails apps (log of what was sent, plus opens and clicks), as well as add UTM params to links included in them. Andrew Kane |
Unsubscribe 1.0: Offer an Auto Unsubscribe from Emails in Rails — The idea is explained in this tutorial. Steve Polito |