Short Ruby News - Edition #28

Briefly about everything happening in Ruby world - week 5 of 2023 (web version)

You can jump directly to a section:

πŸ‘ Our Community

More content: πŸŽ₯ 🎧 πŸ—ž (articles, podcasts, videos, and newsletters)

πŸ€— Founding Members supporting this newsletter

You can support keeping this newsletter free and sustainable for ~1.5$ per week (actually 6.5$/month) if you can afford it:

Read Why to subscribe to a paid plan for a longer explanation.

If you are looking to hire a Ruby or Rails Developer, I recommend checking RailsDevs.com (referral link). I invite you to use the referral link for RailsDevs.com so you can support this newsletter (it does not cost you anything extra).

πŸ‘ Our Community

πŸ‘ Robby Russell shared why Ruby on Rails is great for small teams:

πŸ‘ Gabriel Arcangel Zayas shared how they find Ruby:

πŸ‘ Adrian Marin shared they want to organize a European Ruby conference:

πŸ‘ Hanami Mastery shared they plan to host a Q&A with the Hanami Team for their 50th episode. If you want to ask questions, send it via this form

πŸ‘ Justin Jackson shared in a thread that he is still on the team full stack web dev and talked about new companies using Rails:

He also shared possible advice (from a marketing/PR perspective):

πŸ‘ Andrew Culver announced The Rails SaaS Conference happening in Athens/Greece on 1-2 June 2023:

πŸ‘ Victor Shepelev announced he added the Ruby 3.2 changes to RubyReferences - a fantastic resource for discovering what’s new in the Ruby language:

πŸ‘‰ All about Code and Ruby

πŸ‘‰David Stosik shared a riddle about why adding a month might change the timezone:

You should read the threads about this on ruby.social and Twitter. More ideas and strange behavior are happening when working with dates.

In case you want the solution, here are two good answers:

This is explicitly stated in Ruby documentation, and you can see how Rails is using Date#Β» here:

πŸ‘‰ Justin Searls asked about a tool to use git bisect over a Rails app and see where some behavior was introduced:

He then shared the solution he found by using the following two scripts (links to their Gists)

πŸ‘‰ De Silva shared a piece of code that makes use of checking if a class is part of the descendants of another one:

πŸ‘‰Adarsh invited the community to submit talks about Mastodon this year at RailsConf:

πŸ‘‰Justin Collins shared a benchmark about using explicit block params:

πŸ‘‰Alexandre Ruban shared how to define methods in Ruby using meta-programming:

He showed the second way of creating new methods using the class_eval with heredoc and explained why add __FILE__ and __LINE__ there:

πŸ‘‰ Greg Molnar shared a better explanation of what regroup does in Rails 7.1:

πŸ‘‰Jean Boussier shared the result of running a load test on a small app with GVL instrumentation enabled:

πŸ‘‰Acceis asked a question about spotting vulnerability in a code:

πŸ‘‰Matt Swanson shared a code showing how to build a feature flag at the account level:

πŸ‘‰ Eric Berry shared a piece of code about setting initialising an array before adding an element:

There are a couple of replies in the thread. Here are two interesting solutions:

πŸ‘‰ Chris Oliver shared a code sample about how JumpStartRails uses the new built-in API client generator:

πŸ‘‰Greg Navis shared how to use the hstore column type from PostgreSQL in Active Record:

πŸ‘‰Eric Berry asked about what to use for complex queries:

There is a good thread discussing Arel and what happened to Arel after being part of Rails and becoming private API.

Here is a comparison between Arel and Sequel:

And later on the thread, there is a good discussion about how to use Sequel. Here is a short reply:

/u/collinmarco asked about what extensions people use for Ruby on VS Code:

Among the recommendations are:

If you have read so far and you like the content, maybe you take into consideration sharing this and subscribing:

🧰 Gems, Libraries, and Updates

🧰 Avo released version 2.25, bringing data attributes to table headers and more bug fixes. Read the change log 

🧰 Hanami announced the release of Hanami 2.0.3

🧰 Nate Berkopec recommended a gem called Bumbler for finding slow-loading gems in projects that are using Bundler:

🧰 Mike Perham :Sidekiq: shared that the new Bundler 2.4 has very nice improvements. Read the changelog β†’ Bundler: Bundler v2.4: new resolver, gems with Rust extensions, and more 

🧰 Nate Berkopec shared a new gem released by John Nichols rubyatscale/singed:

🧰 Ben Sheldon announced a release of bensheldon/good_job that now supports batches. To read more about this, read the following two PRs: Support for Batches? #417 and Implement batch functionality #691

🧰 Pawel Osiczko published an updated fork of real-world rails, a project that brings together 100+ active, open-source Rails apps.

🧰 JRuby announced the release of version 9.3.10.0 with compatibility and performance fixes. Read the change log

🀝 Related (but not Ruby-specific)

🀝Jason Swett shared a simple way to decide whether to tolerate a piece of duplication or not:

🀝Drew Bragg asked about how to organize tech debt:

Here are some of the responses received, but there are a lot of good ideas in the thread:

🀝Kelsey Hightower shared an answer about giant monoliths effectiveness:

A more nuanced reply worth considering from Luca Guidi:

🀝 Thiago Ghisi shared a thread about pair programming good practices:

More content: πŸŽ₯ 🎧 πŸ—ž

πŸ“š Books

πŸ“š Noah Gibbs announced their book Rebuilding Rails - Understand Rails by Building a Ruby Web Framework now supports Purchasing Power Parity:

πŸ“š Josef Strzibny announced that Deployment from Scratch now supports Purchasing Power Parity:

πŸ—ž Newsletters

πŸ—ž Greg Molnar shared a new edition of This Week in Rails Week 05: Spring is here? written by zzak

πŸ—žοΈ Ruby Weekly published a new edition: Rusty gem skeletons with Bundler 2.4

πŸ—ž Ruby Radar published a new edition Ruby Radar #88 - Conferences Galore!

πŸ—žοΈ Ruby LibHunt published a new edition of the Awesome Ruby Newsletter

Podcasts

🎧 Andy Croll shared the final episode from the current season of Chats in the Cupboard with Vaidehi Joshi β†’ Listen to Talk about Talks

🎧 Avdi Grimm shared a podcast where he talked about building and running this training and consulting business  Running a training business for Ruby developers

🎧 Ruby for All published a new episode: Favorite Ruby Methods: Part 1

Videos

Talks

πŸ“½οΈ Adrian Marin shared a video where he shows how to use Avo to build amazing Admins for Rails 

πŸ“½οΈ Dave Kimura published the video version of This Week in Rails - Feb 3rd, 2023

πŸ“½οΈ Jason Swett published two new episodes of Code With Jason Meetup about:

πŸ“½οΈ Rubber Duck Dev Show published a new episode with Amir Rajan about Game Development in DragonRuby With Amir Rajan

Screencasts

πŸŽ₯ Yaroslav Shmarov published two new videos:

πŸŽ₯ Deanin published two new videos:

πŸŽ₯ The Ruby Learning Center published two more videos streamed by Brandon Weaver for the two classes that are running now:

What’s new

Ruby Lib Hunt shared an update from Ruby Central about Ruby Shield Update - Winter 2023

How-Tos

Deep Dives

More general

πŸ€— Founding Members supporting ShortRuby

Read more about what is a Founding Member or about Why pay for ShortRuby newsletter

Reply

or to participate.