- Short Ruby Newsletter
- Posts
- π Short Ruby News - Edition #26
π Short Ruby News - Edition #26
Briefly about everything happening in Ruby world - week 3 of 2023
Excited about the future
π I activated subscriptions for the newsletter. I want to keep the newsletter free for everybody; thus, I donβt have a unique offering for people who decide to pay a subscription.
Do you like this newsletter and can afford to become a paid subscriber for 5$/month?
In that case, you get nothing different except the pleasure of knowing that youβre supporting the Short Ruby News to keep publishing the free edition weekly and pay for some of the tools I use to create this newsletter. And, of course, my gratitude for your big gesture!
I can help you write an email for your manager/leader to expense your subscription from your learning budget, so please reach out to me at [email protected]
If you are already a free subscriber and want to update, you can click on Upgrade your subscription. If you are not a subscriber, you can subscribe as free or paid or just read the newsletter on the web.
You can jump directly to one of the following sections if you like:
π Our Community
More content: π₯ π§ π (articles, podcasts, videos, and newsletters)
π Our Community
π John Hawthorn announced the release of Rails 7.0.4.1, 6.1.7.1 and 6.0.6.1 to address security vulnerabilities:
π Zach Holman shared a slide from a pitch describing the value of Rails:
π Jeremy Smith announced he is organising a regional Ruby conference:
Visit blueridgeruby.com to find out more and if you have a proposal visit Call for Proposals. You can also follow @[email protected] to be up to date with the conference news.
π ConfFreaks released all the videos from RailsConf 2022 on their channel. Of course you could already watch them on Ruby Central channel: Rails Conf 2022
π Collin Donnell announced the first episode of a new Ruby podcast Rooftop Ruby
π Korny Sietsma asked where someone can refresh their Ruby on Rails skills in 2023:
Here are some suggested resources:
π Andrea Fomera shared that there are over 1500 people that signed up for Learn Hotwire by Building a Forum
π All about Code and Ruby
π Joel Drapper shared a thread about how phlex-rails is patching form_with to work with Phlex and there is also a nice discussion about how to output raw HTML:
π Marco Roth shared an update of phlexing.fun announcing a series of improvements:
The source code is available at: marcoroth/phlexing
π Brandon Weaver shared a proposal he wrote in 2021 about pattern matching in Ruby:
Read the document here.
π Olle shared the Ruby Google Summer of Code Ideas List for projects in 2023:
π Brooke Kuhlmann shared an update for their Hanami demo application:
π Joel Drapper shared a thread about how to work with Basic Object in Ruby:
You should read the entire thread. I just want to underline the announcement Joel made in that thread:
π Nate Berkopec shared how they speed up Rails system tests at GustoHQ:
He describes the problem:
And then the solution:
π Joel Drapper shared a technique to configure something on the current class and its children:
π€ Jamie McCarthy replied with a possible alternative:
πMoses Gathuku shared a code sample showing how to set default value for attributes in Rails >= 6.1
π Steve Polito shared a code sample about the anything keyword in RSpec:
π Steve Polito shared a code sample showing how to use signed_id to confirm user emails in Rails:
You can explore the full example on this Github repository
π Greg Navis shared a thread with code samples showing transform_keys and transform_values in Ruby:
π Kevin Newton shared a code sample about how Ruby parsed identifiers:
π Greg Navis shared a code sample showing how compare_by_identity works for hashes in Ruby:
Read the thread as it has a lot of code samples showing why this happens and how it works.
You should also read this code sample from Josh Cheek reply along with the link to the Ruby docs:
πBenjamΓn Silva H. shared a code sample showing a trick in Rails to initialize a new record:
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 published a new update for their content management system and admin for Rails: Read the changelog for v.2.24.0
π§° Andrew Kane shared a code sample from their gem polars-ruby
π§° Sam Ruby published a new gem called dockerfile-rails with the purpose to:
Provides Rails generators to produce Dockerfiles and related files. This is being proposed as the generator to be included in Rails 7.1, and a substantial number of pull requests along those lines have already been merged. This repository contains fixes and features beyond those pull requests.
π§° Joel Drapper shared a PR for Phlex - Don't capture blocks when yielding showing a 4% performance improvement by not capturing the yiel block.
π§° John Hawthorn shared a PR he submitted to Rack making it use Ruby 3.2 caching Regexp: Make RFC2183 work with Ruby 3.2's caching Regexp
π§° Jim Gay published a new gem called polyfill-data that brings the new Ruby 3.2 Data class to earlier Rubies.
π§° Andi published a new gem called file_exists that brings back the File.exists? and Dir.exists? that were removed in Ruby 3.2
π§° StanisΕaw Pitucha published a new project that helps with finding the source of Ruby memory leaks: HeapLeak
π§° Stanislav Katkov shared an update for pbbuilder gem where he added fragment caching.
π§° Jean Boussier published gvltools 0.1.0 a set of GVL instrumentation tools
π§° Mike Perham announced the release of Sidekiq Pro 7.0.6. Read the changelog
π§° Julian Rubisch published a new gem julianrubisch/solder: Simplistic UI State Management for Rails Apps using Hotwire and Caching
Persist and restore ephemeral attributes of HTML elements using the Rails cache store and StimulusJS. In short, this plugin will persist UI state changes a user makes on a per-element basis.
π§° Andrew Kane published a new gem Mapkick - Create beautiful JavaScript maps with one line of Ruby
π§° Simon Chiu announced they updated their Rails template Code-With-Rails/rails-template, a Rails application template to set up Rails apps with Docker already set up.
π§° Greg Navis published a new gem called transient_record:
transient-record is a gem to define temporary tables and Active Record models for testing purposes. It's a great tool for testing generic Active Record code and libraries.
π§° Nate Hopkins shared a gem that helps identify a model by an URI: rails/globalid
π§° LΓ‘zaro Nixon shared a PR for Active Record that will help with generating tokens: Add `ActiveRecord::Base::generates_token_for` by jonathanhefner
π§° Andrew Kane announced the release of Chartkick 5: Create beautiful JavaScript charts with one line of Ruby with support for Chart.js 4
π§° Dhairya Gabhawala shared a gist showing how to extend Trix editor functionality: Rails & Trix: Add Underline, Superscript, and Subscript
π€ Related (but not Ruby-specific)
π€ Brandon Weaver asked about how to test E2E React flows:
Here are some replies:
π€ Postmodern asked about donation tiers for Open Source projects:
Here are some replies worth reading:
There were also two resources shared:
π€ Noel Rappin shared an update about Programming Ruby 3.2 book:
π€ Tobias Petry shared a code sample showing how to use the new feature from PostgreSQL to create custom column types:
π€Piotr Kafel shared about the number of tests at Shopify:
π€ Lewis Youl shared a code sample showing how outlets API works in Stimulus JS:
π€ Rob Zolkos shared that it is an easy win to build teams concept from the beginning:
More content: π₯ π§ π
Newsletters
π Greg Molnar published a new edition of This Week in Rails: Active Record regroup, CurrentAttributes name restrictions and more!
πDavid shared a new edition of their newsletter Weekly bookmarks - Issue #34
ποΈ Ruby Weekly published a new edition: Ruby for game development is not joke
ποΈ Ruby LibHunt published a new edition of the Awesome Ruby Newsletter
π Ruby Radar published a new edition Ruby Radar #86 - All Bangers
Podcasts
π§ Jason Swett published a new episode 171 - Smart Testing Practices with Rich Steinmetz - The Code with Jason Podcast
π§ Content For :Devs published a new episode #003 - Screencasting tips! - content_for :devs
π§ Ruby For All published a new episode about The Database Wizard with Andrew Atkinson | Ruby for All | Episode 26
π§ Ruby Rogues published a new episode with Gavin Morrice about Boosting Your App's Performance
π§ Remote Ruby published a new episode about Finding Ruby, Scaling a Business on Rails, and Public Speaking with Nadia Odunayo
Videos
Talks
π½οΈ The Rubber Duck Dev Show published a new episode Teaching Young Developers, with Melissa Amaya
π½οΈ Ruby Weekly shared a video from Brett Chalupa showing resources to use for Game development in Ruby: Ruby for game development? Is this a joke?
π½οΈ Andrew Culver shared the video of Joe Masilotti's talk about Why Are We Afraid to Hire Junior Rails Developers?
Screencasts
π₯ Yaroslav Shmarov published a new video about Ruby on Rails #103 Simple Omniauth without Devise
π₯ Dave Kimura published a new video about Rails Docked
π₯ Brandon Weaver published two new class sessions from the Ruby Learning Center:
π₯ Deanin published a new video about Wiki On Rails | Ruby On Rails 7.1 Tutorial
Articles
Whatβs new
Avo published an article analysing the differences between Avo and Rails started kits
Josef Strzibny published an article about Active Record become method: What is ActiveRecord becomes from Rails
Stephen Taylor Witte shared an article written by Vladimir Dementyev and Travis Turner from Evil Martians about Gemfile of dreams: the libraries we use to build Rails apps
Big Binary published a new article Rails 7.1 allows using aliased attributes with insert_all/upsert_all
Matt Swanson published a new article about Writing better Action Mailers: Revisiting a core Rails concept. You should also read this article by Stephen Margheim about Why parameterized objects in Rails are so powerful
Emmanuel Hayford published the third part of this series about An Overview of Rails 7.1 Features
Greg Molnar published a new article about Server-Side Request Forgery in Rails
Lucian Ghinda published an article about In defense of Ruby's short-hand syntax
How-Tos
Karol Bak published an article about Signed URLs with Ruby
Test Double shared an article written by Ali Ibrahim about Get Bootboot to work on Rails 4.x in deployment environments with Docker
FrΓ©dΓ©ric PlantΓ© published an article about A powerful search feature with what Rails provides out of the box
The Ruby Dev shared an article written by Kane Hooper about Creating an AI email parser using Ruby and OpenAI (GPT-3)
Evgeniy Demin published an article about Uniqueness validation does not work since the beginning of Ruby on Rails.
Kojix published an article exploring Polars in Ruby: Tried Polars in Ruby
Peter Berkenbosch published an article about How to use ULID primary keys in Rails
Lucian Ghinda published an article about Refactoring instance variables to local variables in Rails controllers
Deep Dives
Kevin Murphy published a new article about Evaluating More Coverage in Ruby 3.2
Denis Defreyne published a new article about Avoiding bugs in Ruby code using the state pattern
Ryan Bigg published a new article about The method method
Shopify Engineering shared a new blog post published on their blog written by Maxime Chevalier about Ruby 3.2βs YJIT is Production-Ready
Davide Santangelo published a new article about A "Shallow" Dive into Memory Leaks in Ruby
More general
Planet Argon shared an article about 5 Best Ruby IDE for Ruby on Rails Development
Reply