#736 — January 30, 2025 |
|
Ruby Weekly |
So You Want to Remove Ruby's GVL? — The GVL is a CRuby implementation detail that prevents Ruby code from running in parallel across multiple threads, and there have been many calls over the years to get rid of it in order to improve concurrency and performance. Is it that easy? And would it make much difference? Ruby committer Jean Boussier digs in.. Jean Boussier |
Updating Ruby Under a Microscope: A Look into Hashes — Pat is updating his highly successful 2013 book that digs into Ruby’s internals to meet the modern reality of Ruby 3.x and its many changes. As a teaser, he shares an excerpt diving into how hash tables are implemented. Pat Shaughnessy |
🔥 Make Rails Upgrades Budget-Friendly & Boringly Reliable — FastRuby.io’s monthly maintenance services keep costs low (starting at $4,000/month) and uptime high. The team behind RailsBump.org offers Bonsai for gradual, 0-downtime upgrades — making technical debt remediation feel delightfully boring. Ruby & Rails Upgrades, Made Boring sponsor |
IN BRIEF:
|
Seven Things I Know After 25 Years of Development — Victor, creator of the Ruby Changes documents and many fantastic blog posts, shares some broad insights he’s gained from being a Rubyist and a serving member of the Armed Forces of Ukraine. Victor Shepelev |
Monitoring Action Cable — If you’re ever paged asking why the real-time features of your Rails app are breaking, you’ll have wished you read this technical tale. Stanko K.R. |
Building Rails Apps with Components — Superview is a gem that makes it possible to build Rails apps from the ground-up using nothing but components. Here’s how to automatically render Phlex and ViewComponents for controller actions with Superview. Brad Gessler |
☠️ Feature Creep Kills Great Products — Why (and how) to exercise intentional restraint to boost user satisfaction, operational efficiency, and lasting success. Test Double sponsor |
📄 Build a (Progressively Enhanced) Drawer Component with Hotwire – No JavaScript, just Hotwire, Tailwind, and the View Transition API. Steve Polito 📄 Better Know a Ruby Thing: Singleton Classes Noel Rappin 📄 Things You Might Not Need in Your Tests Matheus Richard 📄 The Mythical 'IO-Bound' Rails App Jean Boussier 📄 Rails Database Migrations Best Practices Francois Buys and Kasper Timm Hansen |
🛠 Code & Tools |
CSS Zero 1.0: A 'No Build' CSS Starter Kit for Rails Apps — Imagine something akin to Tailwind CSS in terms of offering a design system and utility classes but with no build step and fully integrated with Rails 8. There’s an online showcase of some components built with it. Lázaro Nixon |
Puma 6.6.0: Ruby's Fast, Multi-Threaded HTTP 1.1 Server — Now essentially the de facto server for Rack apps, Puma continues to be well maintained with v6.6 offering some benefits for JRuby users, “a few debug/logging/observability related goodies”, and a new Puma Authors |
Horizontal, Vertical, Diagonal? What Even IS Scaling?! 👀 — Up, down, left, right… A+B, A+B?? No no.. scaling isn’t that complicated. Let’s unpack horizontal vs. vertical scaling. Judoscale sponsor |
Hitimes: High Resolution Timer Library for Recording Performance Metrics — Uses different high resolution clock sources on different systems (more on that here). Jeremy Hinegardner |
|
|
📢 Elsewhere |
A quick roundup of some of other interesting updates in the broader developer landscape, in case you've missed them:
|
|