Short Ruby News - Edition #105

Discover new Ruby launches, code samples, and gems. Highlights include Kamal 2 insights, Ruby coding tips, and AI tools for Rails.

In this edition, we tried to link some of the Twitter threads via Threadreaderapp, so you can read them without accessing Twitter. 

You can jump directly to a section:

πŸš€ Launches & πŸ“… Events

πŸ‘‰ All about Code and Ruby: πŸ’» Code, πŸ“Code Design,πŸ’‘Around, ❀️ Why Choose Ruby

🧰 Gems, Libraries, and Updates: πŸ†• New, 🧰 Updates

🀝 Related (but not Ruby-specific)

[Partner β¬‡] friendlyrb.com

When: 18-19 Sep 2024 πŸ“…Where: Bucharest, Romania πŸ‡·πŸ‡΄Join us for two days of inspiring talks, networking with 100+ peers, and fun outdoor activities! ✨As a co-organizer of the Friendly.rb Ruby Conference, I wrote about "Why You Should Join Friendly.rb in September 2024" Experience a friendly atmosphere and amazing speakers. Enjoy a relaxed schedule, deep dives into Ruby, Rails, and Hanami, and a unique group activity on September 20th. Connect with 130 passionate Ruby developers.Register now at friendlyrb.com

πŸš€ Launches and discounts

πŸš€ Web Crunch shared Hello Hotwire , a free course with premium build-along modules for developers looking to dive into Hotwire using Ruby on Rails. Read the launch thread here

πŸš€ Alex Rudall launched a GitHub repo about companies using Ruby as their main backend language. If you work at a company that uses Ruby, submit a PR to add it.

πŸ“š ι”δΊΊε‡Ίη‰ˆδΌš announced the publishing of mruby handbook translated in English:

πŸ“… Events

πŸ“† Events happening this week if you want to attend (source: RubyConferences):

πŸ“… Ruby Conf shared the program for the conference rubyconf.org/schedule

πŸ“… Euruko shared about the conversation between Matz and Jose Valim moderated by Dave Thomas:

πŸ“… Ruby Conf India also announced their CFP being open 

πŸ‘‰ All about Code and Ruby

πŸ‘‰ David Heinemeier Hansson shared a benchmark of running Rails on a Hetzner bare metal server:

πŸ‘‰ David Heinemeier Hansson announced that Kamal 2.0 release is getting close:

πŸ’» Code Samples

οΈπŸ’» Nate Hopkins shared a code sample about how they are using pattern matching:

οΈπŸ’» οΈPeter Solnica shared a tip for gem creators to prevent state leaks between test runs

οΈπŸ’» Nate Hopkins an example about using pattern-matching for data transformation:

οΈπŸ’» Brad Gessler recommends async-websockets if you're working with WebSockets in Ruby

οΈπŸ’» Cj Avilla shared on how to fix failing system tests for missing host for action mailer on rails 7.2 upgrade

He also shared a use-case for Ruby pattern matching in ActionText

οΈπŸ’» Nate Hopkins shared a code sample about how they are using numbered block params:

οΈπŸ’» Ruby Cademy shared how Rails overrides Range#=== to support range comparisons.

They also shared different approaches to performing multi-line assignments in Ruby

Here is how to conditionally install your gems using install_if

οΈπŸ’» Haseeb Annadamban shared an easy way to load DB dump in development environment

πŸ’» Bradley Schaefer shared a code sample about how they are approaching configuration:

οΈπŸ’» Ebi You... shared a code sample about how they are using phlex:

πŸ’» Ashok Gautham Jadatharan shared a code sample in their article about running bash and ruby:

οΈπŸ’» Victor Shepelev explained why the assignment still proceeds when the method/label does not exists:

πŸ’» John Mc Dowall shared a code sample showing how they are using Dry::Validation gem:

οΈπŸ’» Jon Kinney shared their VIM config for transforming hashrockets to 1.9 syntax:

πŸ’» Gelsey Torres published a code sample showing How to Create a Custom Gemfile for Development

πŸ’» Josef Strzibny published an article about Introduction to Minitest Mocks where they shared some code samples about how to use mocks in Minitest:

πŸ“ Thinking about Code Design

οΈπŸ“ RoRvsWild shared a benchmark on the performance of Array#sort! vs SortedArray (read the entire thread here):

οΈπŸ“ Michael Chaney shared a way to enhance the usage of Common Table Expressions (CTEs) with ActiveRecord in Rails, particularly around the use of the WITH clause in SQL queries.

οΈπŸ“ Nate Hopkins shared his thoughts about pattern-matching:

He later added:

οΈπŸ“ Lucian Ghinda asked about using case vs if/else when implementing a simple status logic. Read the entire thread with various proposals.

οΈπŸ“ Prabin Poudel asked about how to approach waiting for elements to appear in system tests:

Here are some replies:

οΈπŸ“ Steven Aguilar asked about the best way to handle front-end in Rails:

Here are some recommendations:

πŸ’‘ Around code (news, findings, books, and more - all about Ruby)

οΈπŸ’‘ Matt Swanson shared his experience with Rails front-end while integrating third-party libraries

πŸ’‘ Konstantin Vinogradov shared a visible correlation between new stars and active contributors of GitHub repos created in recent years, grouped by their languages

πŸ’‘ Vladimir Dementyev shared about the update of their book:

πŸ’‘ Scott Carleton shared on Reddit about how they are using Jupyter notebook with Ruby. Check this short GIF where they share an example

❀️ Why Choose Ruby and Rails

❀️ Jason Leow shared his experience how it is different and uncomplicated with mature tech like Rails.

❀️ Madis Námme speaks about the elegance of Ruby

❀️ Marc KΓΆhlbrugge shared about how they got started with Ruby on Rails:

️❀️ LÑzaro Nixon shared a tab bar with just 25 lines of JS and CSS. Read the full thread here

❀️ Marc KΓΆhlbrugge shared about why LLMs will work great with Ruby on Rails:

❀️ Ebi You... shared about Ruby on Rails not being represented in developer surveys and products:

🧰 Gems, Libraries, Tools and Updates

πŸ†• New Gems and Repos

🧰 Updates

🧰 Vitaly Slobodin announced a new version of the Ruby extension for zeddotdev (check this documentation for how to configure running tests for various Ruby test frameworks)

πŸ‘€ Keep an eye on

🀝 Related (but not Ruby-specific)

🀝 Tyler Hillery shared about β€œallballs” in postgres

🀝 Nate Berkopec tells us to stop abusing the app cache!

🀝 Lucian Ghinda shared a thread about detailed Git commit messages. Dive in and you will find something useful.

🀝 Study Every Day shared a thread about how they are working with spikes:

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

πŸ—ž Newsletters

πŸ—ž Ruby On Rails published a new edition about Last call for Luminary nominations, SQLite3 full-text search and more!

πŸ—ž Ruby Weekly published a new edition about RubyKaigi direct to your living room

πŸ—ž Hotwire Weekly published a new edition about  Week 35 - New Hotwire Course, Hotwire for the Terminal, and more!

πŸ—ž Awesome Ruby Newsletter published a new edition about Issue 432 - Ruby's official documentation just got a new look

🎧 Podcasts

🎧 Remote Ruby published a new episode about Mike Dalessio on HTML parsing & sanitization and SQLite - Remote Ruby

🎧 The Ruby on Rails Podcast published a new episode about Episode 522: Mentoring Junior Devs with Adam Cuppy

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

πŸŽ₯ Dave Kimura published a new video about Episode 471 - Dark Mode about Dependent Fields with Hotwire

πŸŽ₯ Yaroslav Shmarov published a new video about SupeRails | Mention users with TributeJS | SupeRails #186

πŸŽ₯ Chris Oliver published a new video about Contribution I made to Rails this week

✍🏾 Articles

What’s new πŸ†•

πŸ†• Jp shared a new article in his concurrency series - The Thread API : Concurrent, colorless Ruby

πŸ†• Brooke Kuhlmann published an article about Ruby Modules

πŸ†• Matheus Richard published an article about Wrap your dependencies

πŸ†• Dmitry Tsepelev published a new article about How to test graphql-ruby responses

πŸ†• Hrishi Mittal published an article about The 80/20 Rule of Rails performance - DEV Community

πŸ†• Julian Rubisch published a new article Betterstimulus | Form Submits

πŸ†• Augusto Lopes published an article about Learn Ruby and TDD at the same time

πŸ†• G Hewitt published an article Water Intake Program in Ruby

πŸ†• Igor Alexandrov published a new article about Odd Ruby return values | Ruby & Beyond

πŸ†• Rails Designer published an article about Launch a Turbo Modal with URL Params Using Stimulus

How-TOs πŸ“

πŸ“ Gelsey Torres published an article about How to Create a Custom Gemfile for Development - FastRuby.io

πŸ“ PaweΕ‚ Urbanek published an article about Easy to Overlook PostgreSQL Performance Issues in Rails Apps

πŸ“ Shiivam Agnihotri published an article about Puppet - From Beginner to Advanced : Day 33 of 50 days DevOps Tools Series

πŸ“ Michael Chaney published a new article about Moving From auto_strip_attributes to normalizes

Reply

or to participate.