#565 — August 12, 2021 |
✍️ I wouldn't normally do this, but last week's issue was so strong that if you missed it, you should step back and check it out :-) We covered stuff like Stripe's Ruby compiler, the Fukuoka Ruby Award, Ruby's future debugger, and even a new Nokogiri release. This week is somewhat quiet in comparison! :-) |
Ruby Weekly |
Opal 1.2: The Ruby to JavaScript Compiler Goes Ruby 3.0 — Well, almost. Opal is a long standing and interesting project that lets you build front-end experiences for the Web in the language you already know and love. This is a significant release. Want to play? Try it live here. Opal Team |
Ruby's Hidden Gems: Bullet — Bullet provides a way to monitor your app’s database queries to find inefficiencies (N+1 queries, unused eager loading..) you can resolve. Fabio Perrella |
Troubleshoot Ruby App Performance with End‑To‑End Tracing — Datadog’s APM generates detailed flame graphs to help you identify bottlenecks and latency. Navigate seamlessly between Ruby app traces, logs and metrics to troubleshoot application performance issues fast. Try Datadog APM free. Datadog APM sponsor |
QUICK BITS:
|
▶ Discussing Ruby JIT and MJIT — Curious about how just-in-time compilation factor into the future Ruby performance story? Takashi Kokubun (aka k0kubun) has spent a lot of time in the JIT weeds and joins the Rogues to explain the ups and downs. Ruby Rogues Podcast podcast |
▶ Hotwire Turbo Replacing Rails UJS — Rails UJS wasn’t the most-loved part of the framework, but it did supply some cool interactions out of the box, so wouldn’t it be nice to use the new hot(wire)ness to get the same results? Drifting Ruby |
|
📕 Articles & Tutorials |
Kubernetes & Rails: A Definitive Guide — A production-focused guide that covers domain names, secrets, logging, background and cron jobs, migrations, and other topics that will start you down the path to Kubernetes deployments. Marco Colli |
Building a Programming Language in Ruby: Part 2 — In this second part of a three-post series (here’s part one again), the ‘Stoffle’ programming language is completed to a runnable (but simple) stage where functions, loops, variable scope, and other concepts are put into the code. Alex Braha Stoll |
A Guide for Preloading Associations in Rails — While Benito does cover the basics, he also explains many of the more esoteric methods to preload nested and other associations. Benito Serna |
React on Rails: Building a Simple App — Learn how to create a React app from scratch and integrate it with a Rails back-end via webpacker. Honeybadger sponsor |
An Object-Oriented Example — Noel wants to push OO patterns and design so he creates and defends a class abstraction that results in more, but cleaner, code. Noel Rappin |
Five Turbo Lessons I Learned the Hard Way — Turbo is hot out of the oven, which means parts of it (and its docs) may be a bit ‘raw.’ David Eisnger |
▶ Object Modeling and Testing Techniques with Lee McAlilly — A discussion on how to decide where to put your code, the benefits of good naming conventions, and how testing can help you figure out what to do and how to do it. Rails with Jason Podcast podcast |
▶ Load Testing Rails Apps with JMeter ft. Milap Neupane — There’s a blog test on the topic if you prefer. Apache JMeter is an open source Java(!)-based app for load testing of functional behavior in apps. Ruby Rogues Podcast podcast |
🛠 Code & Tools |
FastImage: Find the Size or Type of an Image From Its URL, Quickly — Somehow it’s been six years since we linked this, but it’s still getting releases. The idea is it uses small byte range scoped HTTP requests to grab as little of an image to figure things out. Stephen Sykes |
Resque 2.1.0: The Redis-Backed Ruby Background Job Library — It’s the one that isn’t Sidekiq, and this is its first release since 2018. Resque |
Send Logs from Your Ruby and Ruby on Rails Applications to LogDNA LogDNA sponsor |
Statesman 9.0: A State Machine Library — Takes a different approach to most other state machine libraries by having you define state behavior in separate classes that are then instantiated from within your other classes. This week’s release adds Ruby 3 support. GoCardless |
pusher-fake: A Fake Pusher Server for Development and Testing — If you’re using Pusher to add real-time mechanisms to your app, this may come in handy during development. Tristan Dunn |
Elasticsearch Integrations for ActiveModel/Record and Rails — v7.2.0 just dropped. Elastic |
|