#586 — January 13, 2022 |
Ruby Weekly |
How a Routine Gem Update Ended Up Creating $73k of Accidental Subscriptions — The creators of a SaaS product noticed odd behavior after a seemingly innocuous update that exposed a major code smell in their source. I love this kind of transparency about production issues from our community, but it’s also a good example of being careful about your dependencies as the ground could move from beneath you.. Julien Khaleghy |
Benchmarking CRuby, MJIT, YJIT, JRuby and TruffleRuby — A comparison of various Rubies across multiple benchmarks (such as optcarrot, erubi, and others) showing that TruffleRuby is very much in a league of its own, sometimes 33x faster than the next Ruby. As always, take benchmarks with a pinch of salt and run your own when you need to. Benoit Daloze |
Secure Redis Hosting from RedisGreen — The latest Redis features, instrumented and scaled with the tools teams need as they grow. RedisGreen sponsor |
▶ RubyConf 2021: A History of Compiling Ruby — Chris (perhaps best known for his work on TruffleRuby) gives us a look into the surprising number of Ruby compilers, the approach taken by each, which compilers are still interesting, and the future of compiling Ruby. You'll learn something here! Chris Seaton |
Homebrew, Rosetta, and Ruby — Aaron has been working on some projects recently that depend upon x86 but he’s now rolling on Apple’s new M1 CPU.. what to do? Set up a development environment that uses Apple’s Rosetta to bridge the gap, including with Ruby. Aaron 'tenderlove' Patterson |
IN BRIEF:
|
|
📕 Articles & Tutorials |
Creating and Testing gRPC Server Interceptors in Ruby — gRPC hasn’t made too much headway in the Ruby community, so Ilija helps us take a smart first step by providing an approach to unit and integration testing server interceptors (think, middleware). Ilija Eftimov |
Simulating Geolocation with Capybara and Headless Chrome — Not something a lot of people will need to do, but a nice writeup of something tricky. We love helpful posts like this. Karl Entwistle |
DHH: 'I Won't Let You Pay Me for My Open Source' — This loooong essay began life as DHH’s RailsConf 2019 keynote but resonates well today in the environment of paying for open source and maintainers sometimes burning out or struggling to find business models for their work. David Heinemeier Hansson |
Complete Peace of Mind Rails Hosting — If you need hands-off, rock solid hosting for your Rails app, OpsCare is for you. We keep your app running, 24 hours a day, 7 days a week with a worldwide team. OpsCare by reinteractive sponsor |
Ruby SDK Code Generation using Smithy — The AWS SDK For Ruby team has unveiled smithy-ruby, a toolchain to create Ruby SDKs based on Smithy-defined models. Smithy is a language for defining services and SDKs in an environment agnostic way to make interoperability easier. There are a few moving parts but this post does a good job of explaining. Matt Muller (AWS) |
Explained: Pawan Dubey |
'That's Not a Memory Leak, It's Bloat' — Because inefficient code isn’t necessarily the same as broken code. Sudara Williams (Engine Yard) |
Losing Your Way with the Safe-Navigation Operator — The safe-navigation operartor ( Domhnall Murphy |
How Ruby's Jason Swett |
Single Attribute In-Place Editing with Rails and Turbo
|
Rails 7 Adds Better Support for Custom Enum Types in Postgres
|
🛠 Code & Tools |
A Ruby Implementation of Wordle, the Word Guessing Game — Play a CLI-based Ruby clone of the game that everyone, on Twitter at least, seems to be playing. 🟩 🟩 🟩 🟩 🟩 Jonathan Thom |
ruby-oembed: An oEmbed Consumer Library for Ruby — oEmbed is a type of URL-specific metadata numerous Web sites support (such as when linking to YouTube videos or tweets). Magnus Holm, et al. |
Single Cov 1.7: Actionable Code Coverage — Catch coverage issues before making PRs or easily add coverage enforcement for legacy apps. Michael Grosser |
Shortcut Puts the Agile in Agile and the “Can” in Kanban Shortcut (formerly Clubhouse.io) sponsor |
Inline SVG: Embed SVG Documents Into Rails Views and Style Them with CSS — Works with Rails 5 through 7 and adds helper methods that can read and display SVG documents via Sprockets or Webpacker as appropriate. James Martin |
Faraday 1.9.3: A Flexible HTTP Client Library — Where Faraday differs from many other HTTP client options is how it supports multiple backends and has a middleware concept for processing the request/response cycle. v1.9.3 adds back Ruby 2.4 support which was dropped before. Olson, Hobson, et al. |
Ruby on Jets 3.1: A Ruby Serverless Framework — GitHub repo. Tung Nguyen |
ruby-macho: Pure-Ruby Library for Parsing Mach-O (macOS and iOS Executables) Files
|
|