Short Ruby News - Edition #80

Check out the new section Why choose Ruby! Don't forget the other sections that cover: new tools, a lot of code samples, some excellent discussions, and great advice for developers.

You can jump directly to a section:

πŸš€ New Products & πŸ“… Events

❀️ Why Choose Ruby

πŸš€ New Products

πŸš€ Sundeep Agarwal announced a new version of their book Ruby One-Liners:

πŸš€ Jason Swett launched a live coding every day:

πŸš€ Rafael PeΓ±a Azar (pre)launched Skeletor.IO by RPA (the users will get to choose what they want from many options to generate custom templates):

πŸš€ Rails Designer launched a new UI components Library β†’ RailsDesigner.com

πŸ“… Events

πŸ“… Jeremy Smith asked a hypothetical question about a Ruby on Trails backpacking trip:

πŸ‘‰ All about Code and Ruby

πŸ‘‰ New Rails versions are out:

πŸ‘‰ Ruby On Rails shared a code sample about using perform_all_later:

πŸ‘‰ Xavier Noria shared about block and closures:

πŸ‘‰ Mohammad A. Ali shared a benchmark for running YJIT:

πŸ‘‰ Owais Khan shared a code sample about rendering ViewComponent:

πŸ‘‰Joel Drapper shared a code sample about Hash access and equality comparisons:

πŸ‘‰ Owais Khan shared about configuring VSCode to display ViewComponents:

πŸ‘‰ Benoit shared a code sample about implementing a thread pool:

πŸ‘‰Ayush shared  about an update of the book The Rails and Hotwire Codex

πŸ‘‰ Joshua Wood shared about using LazyVim for developing with Ruby

πŸ‘‰ Naofumi Kagami εŠ γ€…ηΎŽη›΄ε² shared concerns about complexity when building UI with Turbo:

Mike Ray Arriaga shared a code sample about adding a sleep to address loading state delay:

πŸ‘‰ Alireza Bashiri shared a code sample showing how to fix the Ruby 3.3.0 Docker image:

πŸ‘‰Joshua Wood shared a code sample about implementing the debugbar with Phlex:

πŸ‘‰ Josef Strzibny shared about Kamal and using environment variables on CI/CD:

πŸ‘‰ Josef Strzibny shared a rake task that purges unattached Active Storage blobs:

Here is another perspective:

πŸ‘‰ Xavier Noria shared about when to choose Turbo Drive and when not:

Here is a response from Jorge Manrubia, but you should read all the ideas:

πŸ‘‰ Deepak Mahakale shared a code sample about using `t` in Rails views:

πŸ‘‰ Jan Grodowski shared a code sample about using perform_enqueued_jobs:

πŸ‘‰ Kirill Shevchenko shared about ways of setting gem dependency versions:

πŸ‘‰ Nate Hopkins shared about reducing flaky system tests that uses Hotwire:

πŸ‘‰ Ruby Cademy shared a pool about Ruby IDEs:

πŸ‘‰ Matt Swanson asked about defining routes manually when coding with LLM assistance:

πŸ‘‰ Dave Thomas shared an interesting way to namespace methods in Ruby:

πŸ‘‰ Josef Strzibny asked about why choosing PostgreSQL vs MySQL:

Here are some answers:

πŸ‘‰ Xavier Noria shared a tip about pasting code to execute from clipboard:

Schlez added:

πŸ‘‰ Prabin Poudel shared about raising validation error when old and new password is the same when using Devise:

πŸ‘‰ Donn Felker asked about turning off logs in test for solid_queue:

Here are two options:

πŸ‘‰ Marco Roth shared about a new feature for Stimulus LSP:

πŸ‘‰ Adrien shared a code sample for a Stimulus controller for tabbed navigation:

πŸ‘‰ John Nunemaker shared a code sample about guarding against passing nil:

πŸ‘‰ Matheus Richard asked about a benchmark about using Thread vs Fibers:

Here are some replies explaining the difference:

πŸ‘‰ Thiago Araujo shared a code sample showing a lazy generator for Faker:

and they added another example (see the gitst at faker_excluding_generator.rb):

πŸ‘‰ Samuel Williams asked about background jobs:

Here are some replies:

πŸ‘‰ Brad Gessler shared about putting configuration in controllers instead of under config/initializers:

πŸ‘‰ Joel Drapper shared about building a new feature for Phlex (see the new JS library they are building in the Gems section of the newsletter):

πŸ‘‰ John Mc Dowall shared a code sample showing how to display different favicon for development:

πŸ‘‰ Jason Nochlin shared a code sample about serializing an array of ActiveModel::Model instance:

πŸ‘‰ Joe Masilotti asked about how to organize complex link_to options:

πŸ‘‰ Joel Drapper shared about Ruby not including CSV by default:

πŸ‘‰ John Nunemaker shared about tagging the use when using AppSignal:

πŸ‘‰ Mika Henriksson shared about ETL pipeline:

πŸ‘‰ Eric Berry shared about using Tailwind to show what breakpoint is currently in use:

❀️ Why Choose Ruby

❀️ Maple Ong shared about Ruby:

❀️ Emmanuel Hayford shared about the highest number of contributors to Ruby on Rails:

❀️  Rob Zolkos shared about supporting the community:

❀️ γ§γ—。 shared about using Rails for big apps:

❀️ Ebi You shared about understanding the philosophy of Rails:

❀️ Kirill Platonov shared about productivity and developer happiness:

❀️ Rob Bazinet shared about how Ruby on Rails does a lot of heavy lifting:

❀️ Typecraft shared about building apps with Ruby on Rails:

❀️ Dai shared about implementing Turbo Drive:

🧰 Gems, Libraries, Tools and Updates

🧰 Philip Mueller announced a new version of Release 3.2.0 Β· Shopify/packwerk

πŸ†• 🧰 Joel Drapper announced a new JS library morphlite: DOM morphing in < 100 LoC

πŸ†• 🧰 Brad Gessler published a new gem phlex-pdf - Phlex ergonomics for building PDFs

🧰 Samuel Williams announced a new repository async-job-rails-example

🧰 Joe Masilotti announced a new version of Release 7.0.2 Β· hotwired/turbo-ios

🧰  Stan Lo shared a new version of Release v0.4.3 Β· ruby/reline

🀝 Related (but not Ruby-specific)

🀝 Jason Swett shared about creating the wrong abstraction:

🀝 Marc KΓΆhlbrugge shared that building a product is like running a marathon with a backpack:

🀝 Jason Swett shared about OOP and inheritance:

🀝 David Colby shared about how to learn when reading a book:

🀝 Josh W. Comeau shared about internationalization:

🀝 Dima Fatko shared a tip about database performance:

🀝 John Nunemaker shared a screenshot about systems and bugs:

🀝 Kelsey Hightower shared an advice about learning the fundamentals:

More content: πŸ“š πŸ—ž 🎧 πŸŽ₯ ✍🏾

πŸ—ž Newsletters

πŸ—ž Hotwire Weekly published a new edition about Week 08 - New Turbo Native releases, playing sounds with the Audio API, and more!

πŸ—ž Emmanuel Hayford published a new edition of This Week in Rails about Enhanced assert_broadcasts, file support for Logger outputs and more!

πŸ—ž Harrison Broadbent published a new edition about The RailsNotes Newsletter ISSUE #27

πŸ—ž Bhumi published a new edition about When do we use Turbo 8 Page Refresh and Morphing?

πŸ—ž Ruby LibHunt published a new edition about Awesome Ruby Newsletter - Issue 405, Feb 22, 2024

πŸ—ž Ruby Weekly published a new edition about Detecting radiation with Tenderlove

🎧 Podcasts

🎧 The Ruby on Rails Podcast published a new episode about Episode 508: Yjit With Maxime Chevalier Boisvert

🎧 Creston Jamison published a new podcast about Building a 2 Terabyte Database For My Postgres Course

🎧 Robby Russell published a new podcast about Chad Fowler - How Small Can We Make This Problem

🎧 Indie Rails published a new podcast about IndieRails | Ben Orenstein - The Developer-Turned-Founder

🎧 Andrei Bondarev published a new podcast about Langchain.rb (Ruby/AI) Office Hours

🎧 The Tuple Podcast published a new podcast about Josh Pigford - Founder of Maybe.co

🎧 RemoteRuby published a new podcast about Andy Croll - Railsconf - Free Chicken

🎧 Ruby Rogues published a new podcast about Ruby Dev Summit - Amanda Perino

πŸ“½οΈ πŸŽ₯ Videos

Screencasts

πŸŽ₯ Stephen Margheim published a series of video about:

πŸŽ₯ Jason Swett published a series of videos about:

πŸŽ₯ John Hawthorn published a new video about Improving Mastodon’s memory and performance

πŸŽ₯ Equivalent published a new video about Digging into View Transitions with Turbo 8 and Rails

πŸŽ₯ Sam Johnson published a new video CI/CD For Rails’s Kamal Deployments From Scratch pt. 3

πŸŽ₯ Dean De Hart published a series of videos about:

πŸŽ₯ Roland Lopez published a new video about Learn caching performance basics in Ruby On Rails in 8 minutes

✍🏾 Articles

What’s new πŸ†•

Bozhidar Batsov published a new article about Need for Speed: Using RuboCop with Prism

Harrison Broadbent published an article about A Decent Vs Code + Ruby On Rails Setup

Bridgetown published an article about  Road to Bridgetown 2.0, Part 1 (Stuck in Burnout Marsh)

Maciej Mensfeld published a new article about The Art of Forking: Unlocking Scalability in Ruby

Alkesh Ghorpade published an article about Exploring The F Faker Gem A Comprehensive Guide

James Brown published an article about one of my favorite ruby snippets

Dave Paola published an article about Why Are Non Dry Specs More Maintainable?

Rob Lacey published a new article about Ruby 3.3.0 and Resque

Bozhidar Batsov published a new article about Weird Ruby: Nil Conversions

Tom Enebo published a new article about JRuby Prism - A new parser for a new era

Deep Dives πŸ”

Owais Khan published an article about Improving performance in development on a big Rails app

Noel Rappin published an article about  Better Know A Ruby Thing #4: Keyword Arguments

Akshay Khot published an article about How To Generate Random Numbers In Ruby

How-TOs πŸ“

Rafael Montas published an article about Deploy a Rails app to a Docker Swarm cluster on Hetzner

Rob Zolkos published an article about (How I) Deploy Solid Queue With Capistrano

Miles published a new article about Deploying with Kamal

Justin Talbott published an article about PostgreSQL Native List Partitioning In Rails

Kyrylo Silin published an article about Using Overmind With Foreman As A Fallback For Rails 7.1+ Apps

Sven Schwyn published an article about Shrink UUIDs With PostgreSQL or Ruby

Akshay Khot published an article about Speed Up Your Tests Using VCR Gem In Ruby and about Playing Sounds In Rails With The Audio Api β†’ β€œ

Jeremy Friesen published an article about Making Hyrax Factories Available To Hyku And Other Implementations

David Boureau published an article about Rails 7 Pagination With Kaminari Tutorial

Josh Smith published an article about Configuring IRB Autocomplete

Prabin Poudel published an article about Devise Raise Validations Error When New And Old Passwords Are Same

Julian Rubisch published an article about Configuring Incoming Webhook Queues In Bullet Train

JT Dev published a new article about Enum validation in Ruby on Rails 7.1

Stjepan HadjiΔ‡ published an article about Publish/Subscribe With Sidekiq

Related

Aaron Francis published an article about Do literally anything

Taylor Blau published an article about Highlights from Git 2.44

Reply

or to participate.