Short Ruby News - Edition #46
Discover the world of Ruby in this comprehensive newsletter covering week 23 of 2023. Find code samples, community updates, gems, resources, and thought-provoking discussions.
You can jump directly to a section:
More content: 📚 🗞 🎧 🎥 ✍🏾 (articles, podcasts, videos, newsletters, books and slides)
💸 For only $1.5 per week (just $6.5 a month), you can become a paid subscriber and contribute to the success of the flourishing Ruby community we all adore while receiving an ad-free version of the newsletter!!
👐 Our Community
👉 All about Code and Ruby
🪧 Have you considered inviting your company to sponsor this newsletter? If you are using Ruby on Rails, I think your company is a perfect fit :)
You can send the sponsorship packages info to your marketing, HR, or product management teams.
I'm happy to assist you with drafting an email. Simply send me a message at firstname.lastname@example.org I'll do my best to draft an email for you to send inside your organization.
As a valued reader, your support is crucial for this publication to continue providing new posts. By becoming a subscriber, whether free or paid, you not only receive the ad-free version but also contribute to the sustainability of my work
There are discussions in there about code loader, conventions, single table inheritance, working with components, forms and meta-programming.
Here are two code samples from the thread, but you should read it all to understand what they do and the context:
Here is the list of recommended gems, but I think you should open the thread and read it all as Josef also explains why they recommend each gem:
But it seems they are using Sinatra and Active Record based on this job.
🤞 I imagine that if you have read this so far, you find value in this newsletter.
This is a free publication that relies on the support of its readers. If you'd like to stay updated on new posts and help me continue my work, please consider subscribing for free or choosing a paid subscription.
🧰 Gems, Libraries, and Updates
🧰 Ronin Rb announced the release of multiple projects ronin-support 1.0.2, ronin-repos 0.1.1, ronin-payloads 0.1.2, ronin-db 0.1.1, and ronin 2.0.2. Read the article announcing all these updates
🧰 DragonRuby announced an update about Mid-year Update: Quacks, Steam Distribution, Sound Synthesis, and Pixel Arrays
🧰 Nate Hopkins announced a new version of model_probe: ActiveRecord schema visualization and model organization made easy
🧰 Drifting Ruby announced that academic email list has been updated swot: Identify email addresses or domains names that belong to colleges or universities. Help automate the process of approving or rejecting academic discounts
Please consider becoming a paid subscriber to support this newsletter for just $1.5/week ($6.5/month). Your contribution aids growth and maintains the quality of ShortRuby for everybody while receiving an ad-free version:
If you consider upgrading and want more information, please read Why to subscribe to paid
🤝 Related (but not Ruby-specific)
More content: 📚 🗞 🎧 🎥 ✍🏾
📚 Books & Slides
In celebration of our 20th Anniversary, we’ve selected 20 amazing articles posted to our blog from over the course of our 20 years, and compiled them into a beautiful 78 page PDF book. View a Sample PDF
🎧 Creston Jamison published a new episode of the Rubber Duck Dev Show about The Making of Avalon in Dragon Ruby with James Stocks. Just a reminder that June is the DragonRuby month at RDDS and if you want to get to know DragonRuby you should also check the Code with Chris series
🎧 The Ruby On Rails Podcast published a new episode about Episode 473: Personal Branding & Strongly Held BBQ Opinions with Cody Norman
📽️ 🎥 Videos
📽️ Yaroslav Shmarov and Adrian Marin published a new episode of Friendly Show E2 Adrian and Yaro visited RailsSaaS Conference in Athens, Greece
Steve Polito published an article about Are you absolutely sure your `has_one` association really has one association?: “The Rails has_one API has an unexpected limitation: It does not prevent multiple records from being associated to the parent record.”
Takashi Kokubun published an article about Monitoring YJIT in Production “Do you use an app performance monitor like NewRelic or Scout, or check your daily performance graphs? Here’s how you can make sure YJIT is doing what you want when you monitor”
Julian Rubisch published a new challenge for the Hotwire Club Challenge 4: Turbo Drive - Form Activity Indicators “In this challenge we will take an in-depth look at the lifecycle around Turbo Drive form submissions. We will leverage the several events Turbo emits during a form submission to display an autosave activity indicator”
Andrei Kaleshka published an article about Optimize Rails app performance with ChatGPT “We experimented and found out how ChatGPT is good with code optimization. We saw how it transforms Ruby code into performant SQL. The results were great”
Benito Serna published an article about What to do when you need a button_to within a form in Rails “Imagine that you have a form to update a record (let’s say a product record) and inside the form, you are showing a list of images, and each image needs a button to remove it. You tried to use button_to but it doesn’t work because in html you can have form within a form. What do you do?”
Stefanni Brasil published a new article about 4 Strategies To Remove Dead Code from your Ruby App “It’s easy to believe that just because a feature is available, it is going to be used someday. But let’s face it: some features in production will go completely unnoticed and unused forever, but you still have to maintain them. How much does it cost to carry all this dead code around?”
Dr Nic Williams published an article about Can we add a dark mode toggle to Jumpstart Pro/Rails? “How can we support dark and light CSS modes, using both system preferences and a dark mode switcher on our Jumpstart Pro apps? Or any Rails + Tailwind CSS + Stimulus JS app”
Adrien Poly published a step by step guide for Deploying a Rails App with MRSK on Hetzner: A Beginner's Guide “With this guide, I'll walk you through the process step by step that I used to create and deploy your first Rails application with MRSK on a Hetzner VPS”
Matt Brictson published a new article about The 3 Vite plugins I use on every new Rails project “I’ve completely switched away from Sprockets and Webpacker and am using Vite for my current Rails projects. Here are the three plugins I like to add on top of the standard Vite-Rails setup”
Sawincp published a new introductory article about Ruby and Object Oriented Programing “For today's topic we will discuss the Ruby programming language and how it's object-oriented approach makes it fun and happy for programmers to use”
David Haley published an article about The 80% abstraction - A method for simplifying large monoliths “Perfection protects the future but costs time & money, and is risky besides: the future is elusive & ever-changing. Speed protects the now but risks unnecessary complexity or even rework as we add features. Let’s explore that tradeoff, and how we get to monolithic software in the first place”
Julia Evans published a new article about Some blogging myths. They talk about 8 myths: you need to be original, you need to be an expert, posts need to be 100% correct, writing boring posts is bad, you need to explain every concept, page views matter, more material is always better, everyone should blog.
Paweł Dąbrowski published an article about Redis - a clear breakdown that contains: “starting with some basic usage instructions, an explanation of the data structures, through the deployment process and handling Redis in production, to a deep dive to understand how Redis is working”
Please consider becoming a paid subscriber to support this newsletter for just $1.5/week ($6.5/month). Your contribution aids growth and maintains the quality of ShortRuby for everybody:
If you consider upgrading and want more information, please read Why to subscribe to paid.