Short Ruby News - Edition #83

The one where we talk about new Ruby syntax, split the Gems and Updates into 3 categories: New, Updates, and Keep an Eye on, and a lot of code samples and good code design discussions.

You can jump directly to a section:

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

🀝 Related (but not Ruby-specific)

[Sponsor ⬇] RailsDesigner - get a 50% discount

Ever wished to ship your Rails apps faster and still turn heads? Meet Rails Designer β€”thΓ© UI component library for Rails apps. Built with ViewComponent. Designed with Tailwind CSS. Enhanced with Hotwire.From Avatars to Dropdowns, Navbars to Modals, Hotkeys to Notificationsβ€”and we’re always adding more. Each component is Rails-optimized and fully customizable, melding with your project as seamlessly as pineapple dares to dance on pizza (hey, we don't judge!).Unlock a 50% launch discount: grab one of the final seats for just $49 and make your Rails projects the talk of the town. Dive in at railsdesigner.com

πŸš€ New Products

πŸš€ Gregory Brown launched their Beginner’s Guide to Ruby project

πŸš€ JosΓ© Anchieta launched Sportical

πŸ“… Events

πŸ“… Rails Conf announced the official program. You can check it out at Speakers

You can read more about the speaker’s lineup in the RubyCentral article.

πŸ“… Rails Camp USA shared about the available ticket for West.RailsCamp.us/2024

πŸ“… Euruko shared that the registration will open on 22nd March:

πŸ“… Tim Riley shared that Ruby in Common is almost sold out:

πŸ“… Balkan Ruby announced the change of venue and extension of Early Bird tickets:

πŸ“… Vladimir Dementyev shared about OSS Expo at BalticRuby

πŸ“… Madison+ Ruby announced registration open for Madison Ruby: Your Ruby Community

πŸ‘‰ All about Code and Ruby

πŸ’» Code Samples

πŸ‘‰ Stephen Crosby shared a code samples about limiting N+1s via Proposal: Prevent activerecord access 

πŸ‘‰ Garrett Dimon shared a quick reference sheet about Rails generators a companion for their new book: Frictionless Generators

πŸ‘‰ Sam Kennedy shared a code sample about using the exception_notification: Exception Notifier Plugin for Rails to post messages in Campfire:

πŸ‘‰ Nate Hopkins shared a tip about how to use plain Ruby inside factory bot:

πŸ‘‰ Matt Swanson shared that `find_each` will remove any order on a query in Rails:

πŸ‘‰ Hans Schnedlitz shared a code sample showing how to merge a list of hashes into a bigger flat one:

An alternative to this is using Ruby merge:

πŸ‘‰ Ruby Cademy shared a tip about using delegate_missing_to:

πŸ‘‰ Erwin Kroon shared a code sample and asked what will return:

πŸ‘‰ Dima Fatko shared a code sample showing how to use zip to transform an array:

πŸ‘‰ Nate Hopkins shared a code sample (see the gist at Get the SQL for an insert statement from ActiveRecord) about generating an insert statement for an Active Record model:

πŸ‘‰ Joel Drapper shared a code sample showing how they propose to work with Phlex without calling `render`: (see the feature proposal here)

πŸ‘‰ Thomas Galibert shared a code sample showing how they used SQL COALESCE in Rails:

πŸ‘‰ Gregory Brown shared a code sample implementing a small Sinatra like DSL:

πŸ‘‰ Ruby Cademy shared a code sample showing how to use minmax_by:

πŸ‘‰ Julian Rubisch shared how they are modeling Announcements power pack for Bullet Train:

πŸ‘‰ Ruby Cademy shared about Time#utc and Time#getutc:

πŸ‘‰ Mika Henriksson shared a Kamal configuration for building and deploying from local machine:

πŸ“ Thinking about Code Design

πŸ‘‰ Greg Molnar asked about refactoring a Rails code:

Here are some of the replies:

πŸ‘‰ Thiago Araujo shared about when to use let in RSpec:

πŸ‘‰ Jeremy Smith asked about list of gotchas when rendering HTML for Turbo Streams:

πŸ‘‰ Jess Brown asked about a flickering problem with Turbo Drive and shared a video describing the problem:

Among the solutions suggested:

πŸ‘‰ I shared a code sample with a multi-line end-less method and asked how we feel about it:

Taking into consideration that I asked this question, it is hard for me to pick some replies. You should read the replies on Twitter and Mastodon:

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

πŸ‘‰ Amanda Brooke Perino announced that there will be a new Rails tutorial created this year:

πŸ‘‰ Jim Jones shared about how the Rails Turbo 8 might remove the need to use turbo frames in some places:

πŸ‘‰ Matheus Richard shared a warning found in a Readme:

πŸ‘‰ Steven R. Baker shared they are building a product with the same license as ONCE for organizing cards on a wall:

πŸ‘‰ Marc KΓΆhlbrugge announced they are selling their project Story AI build with Ruby on Rails:

πŸ‘‰ I shared a thread about the history of the endless method: what proposals were submitted along the years to deal with removing some `end` keywords. Here is the first part of my thread. You can read it on Twitter or Mastodon:

❀️ Why Choose Ruby

❀️ John Gorriceta shared about how supportive Rails community is:

❀️ Jess Brown shared about how they are impressed by Ruby community generosity:

❀️ Daveyon Mayne shared about how easy it is to set up a single-page app landing with Rails:

❀️ Iheanyi Ekechukwu shared why they like Rails:

🧰 Gems, Libraries, Tools and Updates

πŸ†• New Gems and Repos

🧰 Updates

🧰 Avo announced a new version of Avo - Content Management System for Ruby on Rails

🧰 Denis Defreyne announced a new release for Nanoc Β» Release notes

🧰 Bozhidar Batsov announced a new version of Release RuboCop 1.62.1 Β· rubocop/rubocop

🧰 Nate Hopkins announced a new version of turbo_boost-commands gem that fixes a Potential for arbitrary method invocation

🧰 Julian Rubisch announced a new version of Release 1.4.0 Β· stimulusreflex/futurism

πŸ‘€ Keep an eye on

πŸ‘€ Fable Tales submitted a bug on Ruby issue tracker about calling new has regressed allocations over past few ruby releases

🀝 Related (but not Ruby-specific)

🀝 Prem Sichanugrist asked about adding β€œno AI generated code will be accepted” to an open-source contribution guide:

πŸ‘‰ Josh Pigford asked about what choice of IDs

Here is one of the replies:

🀝 Xavier Noria shared about functional programming:

🀝 Nate Hopkins shared about naming:

🀝 Konnor Rogers shared 

🀝 Adam Wathan shared 

🀝 Jason Swett shared 

🀝 Dave Thomas shared 

🀝 Ben Orenstein shared a video with an advice about how to approach projects:

An good quote from the video is shared here by Justin:

🀝 Christian Findlay shared 

🀝 Dave Paola shared 

🀝 I shared:

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

πŸ—ž Newsletters

πŸ—ž Ruby Weekly published a new edition about Turbocharging Puma with Thruster

πŸ—žRuby Libhunt published a new edition about Awesome Ruby Newsletter - Issue 408, Mar 14, 2024

πŸ—ž Ruby On Rails published a new edition of This Week in Rails about Active Record Basics Guide Refresh, Encrypted Attributes Re-Optimization, and more...

πŸ—ž Hotwire Weekly published a new edition about Week 11 - Turbo Morphing Deep Dive, Turbo Streaming Modals, and more!

πŸ—ž Sajjad Umar published a new edition about Ruby on Rails - March 2024

🎧 Podcasts

🎧 Jason Swett published a new episode about 213 - Adrian Marin, Founder of Avo - The Code with Jason Podcast

🎧 Founder Quest published a new podcast about Insights Into Our Marketing Playbook | FounderQuest | Episode 10

🎧 The Bike Shed published a new episode about The Bike Shed: 418: Mental Models For Reduce Functions

🎧 Maintainable Software Podcast published a new episode about Irina Nazarova - Investing in Innovation: The Consultancy’s Guide to Growth

🎧 The Ruby on Rails Podcast published a new episode about Episode 511: WebAssembly with Benjamin Eckel

🎧 RemoteRuby published a new episode about Struggles and Strategies-Dev Dilemmas

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

Screencasts

πŸŽ₯ Tomas Valent published a new video about Ruby on Rails Delegated types + Turbo frames (Hotwire) examples

πŸŽ₯ Sam Johnson published a new video about Make your app faster: Understanding HTTP caching

πŸŽ₯ Joe Masilotti published a new video about Turbo Native live coding

πŸŽ₯ Jason Swett published a new video about: 

πŸŽ₯ Ruby Rogues published a new video about SQLite on Rails

πŸŽ₯ Kasper Timm Hansen published a new video about Riffing on Rails: Recurring Reports modeling

πŸŽ₯ John Hawhorn published a new video about Pairin' with Aaron: Hacking on Vernier

πŸŽ₯ Thoughtbot published a new video about Improving Rails Test Suite Performance (continued)

πŸŽ₯ Jeffrey Chupp and Jeff Dwyer published a new video about Live pair programming: Building Rate Limits In Ruby

πŸŽ₯ Dean De Hart published a new video about Rails Kamal Deployer for Game Hosting

✍🏾 Articles

What’s new πŸ†•

App Signal published a new article about AppSignal's 2024 Ruby Event Sponsorships

JoΓ«l Quenneville published an article about How to approach a reduce problem

BalΓ‘zs Kutil published an article about Handling forks in threaded code in Ruby

Ahmed Nadar published an article about Meta or not to Meta programming in Ruby

Artur Roszczyk published an article about about Today, I would avoid metaprogramming at all costs

Cristian Molina published an article about Experimenting with Modern UI Alternatives in Rails

Martin Emde published a new article about Password Reset Vulnerabilities, Hacker One and Humility

Deep Dives πŸ”

Sammy Steele published an article about How Figma’s Databases Team Lived to Tell the Scale

RΓ©my Hannequin  published an article about Numeric data types in Ruby and when to use them

Daniela Baron published an article about Efficient Database Queries in Rails: A Practical Approach

Akshay Khot published an article about Understanding Ruby defined? Keyword

How-TOs πŸ“

Rails Designer published an article about Flash Messages (notifications) in Rails Apps

Julian Rubisch published an article about Execute Third Party Code in a Rails App

Ayush Newatia published an article about Turbo Streaming Modals in Ruby on Rails

Harrison Broadbent published a new article about Using Rails debugger/rdbg with VS Code

Aestimo Kirina published an article about Let's build a Hanami app

Goulven Champenois published an article about Rspec tips and tricks

Dmitry Gutov published an article about Using dry-validation with Grape

Matt Polito published an article about Using a hash of data for string replacement in Ruby

Sergey Tsvetkov published an article about Payload and parameters validation in Rails

Jack Flannery published an article about Test Driving a Rails API - Part One

PaweΕ‚ Pacana published an article about How to get burned by 16 years old hack in 2024

Ivan Ivashchenko published an article about Ruby on Rails containerization example

Bill Tihen published an article about Rails 7.1.x API Exploration

David Boureau published an article about How to benchmark Ruby code

Alkesh Ghorpade published an article about Boost Your Ruby on Rails Application Performance with Bullet Gem

Related

Karl Oscar Weber published a new article about From layoff to $5k MRR in one month

Reply

or to participate.