- Short Ruby Newsletter
- Posts
- Short Ruby News - Edition #56
Short Ruby News - Edition #56
Discover the world of Ruby in this comprehensive newsletter covering week 34 and part of week 33 of 2023. Find code samples, community updates, gems, resources, and thought-provoking discussions.
You can jump directly to a section:
š Our Community: šNew Products & š Events
More content: š š š§ š„ āš¾ (articles, podcasts, videos, newsletters)
Friendly.rb conference is on September 27-28 in Bucharest, Romania. Tickets are already sold out! šHowever, you can still show your support for the conference and market your products to a Ruby audience by becoming a sponsor for just $1250 (and get a conference ticket included).For more information, visit friendlyrb.com/sponsor or write an email to [email protected] Our community would greatly appreciate your support!
š Our Community
šNew Products & š Events
š Ruby Cademy launched Ruby Mastery by RubyCademy
š Friendly.Rb finished the announcement of speakers with The Power of We with Gabriela Luhova - Friendly.rb - Your friendly European Ruby conference
š Nathan H announced a new meetup Elasticsearch 100, Mon, Sep 11, 2023, 7:00 PM
š Euruko announced the list of spearkers for Euruko 2023, starting with the keynote speaker:
š Prathamesh Sonpatki announced that RubyConfIN schedule is public:
š Ruby On Rails announced the speakers, starting with Rails World - 2023 ā Aaron Patterson
š All about Code and Ruby
š Paul Mucur shared ActiveRecord::QueryMethods::WhereChain examples:
š Maciej Mensfeld shared a code sample showing how to use the latest Karafka release:
š Collin shared about starting new IRB sessions from current session:
š Josef Strzibny shared a code sample showing how to load overrides:
š Greg Molnar asked from a security perspective what could go wrong with executing this code:
He also provided a possible solution:
š Matt Swanson shared about organising features by modules in Rails:
He provided a more complete code sample:
š Emmanuel Hayford shared a code sample of a feature that will be present in Rails 7.1
If you want you can read the PR here
š Matt Swanson shared another code sample about chaining Active Record relations:
š Jeremy Smith shared a code sample showing how to Rendering Markdown with Multiple Modes
And if you want to see how this can be used Marco Roth shared a PR for gem.sh where they applied this idea here.
š Ruby Cademy shared quick ways to replace a hash key:
š Matt Swanson shared about using Association Extensions:
You can read here from the Rails guides about this feature.
Rob Lacey shared another code sample about how they used this:
š Prabin Poudel shared a code sample about column_names in Rails:
š Matt Swanson shared a code sample showing how to test multi-user flow with Capybara and Rails:
šAristĆ³teles Coutinho shared two code samples about how to split date:
šNate Berkopec shared an advice about background jobs:
š Marco Roth shared speed improvements for gem.sh after using YARP (you can read the PR here)
š Nate Berkopec shared an advice about setting timeouts:
š Donn Felker shared a tip about testing Sidekiq
š Harrison Broadbent asked about testing frameworks.
You should read the replies (nitter link) as there are is a healthy debate abour RSpec and Minitest. Here are some of them:
š Koichi Sasada shared a performance benchmark for MaNy project (supporting massive number of threads in Ruby):
š Matt Swanson shared a code sample about using Hash#fetch:
š Nate Berkopec shared about how Active Record is doing many things:
Xavier Noria replied with how to think about Active Record:
š§° Gems, Libraries, Tools and Updates
š§° Ruby on Rails published a new release 7.0.7.2 and 6.1.7.6 that fixed a security issue:
š§° John Bachir announced the release of version 2.0 for ruby-clock - A ruby job scheduler which runs jobs each in their own thread in a persistent process
š§° Jeremy Evans announced a new version of Rodauth 2.31.0 Released Ā· jeremyevans rodauth Ā· Discussion #362
š§° Xavier Noria announced a new PR for Rails about Generate config.autoload_lib(...) for new apps by fxn Ā· Pull Request #49032 Ā· rails/rails
š§° Kevin Newton announced a new version of YARP. Read the full changelog here
š§° Vinicius Stock announced a new version for ruby-lsp ā Release v0.8.1 Ā· Shopify/ruby-lsp
š§° Brad Gessler announced a new gem rubymonolith/superview: Create Rails applications entirely from Phlex components.
š§° Koichi Ito announced a a new version of rubocop/vscode-rubocop: The official VS Code extension for the RuboCop linter and code formatter
Thank you for reading Short Ruby Newsletter. This post is public, so feel free to share it.
š¤ Related (but not Ruby-specific)
š¤ Donn Felker wrote about tests:
š¤ Jason Swett shared about codebase quality:
He also shared about testing and locked in:
š¤ Siqi Chen shared that culture, taste, and craftsmanship are irreplaceable and cannot be compensated for through strategy, process, or quality assurance:
More content: š š š§ š„ āš¾
š Newsletters
š Wojtek published a new edition of This Week in Rails - August 25
š Awesome Ruby Newsletter published a new edition Issue 379 - Flipper 1.0 - One Point Oh!
š Greg Molnar published a new edition of Rails Tricks Rails upsert - Tricks Issue 16
š Allison Pike published a new edition of Once a Maintainer: Robby Russell
š§ Podcasts
š§Drew Bragg published a new episode of Code and the Coding Coders Who Code It: Episode 27 - Andrew Atkinson ā āPostgreSQL wizard Andrew Atkinson joins the show to discuss his new book, "High-Performance PostgreSQL for Rails." Andrew talks about the challenges of writing a database book for Rails developers, refactoring prose, and the importance of maintaining a work-book-life balanceā
š§ Content For :Devs published a new episode about #010 Advanced Ruby with Jeremy Evans - content_for :devs ā āIn this episode, we're digging into the Roda framework, and behind the scenes of maintaining super popular Ruby gems on the professional levelā
š§ Remote Ruby published a new episode about Ain't Your Callback Girl ā āIn this episode, Chris, Jason, and Andrew engage in a discussion revolving around the functionality and nuances of generated columns, callbacks, and coding practices in database and Rails applications. They explore the benefits and challenges of these features, and they dive into the complexities of coding testsā
š§ The Ruby on Rails podcast published a new episode about Level Up in Learning with Ariel Fogel ā āAriel Fogel is a software engineer with an enduring soft spot in his heart for Ruby and Rails. Since graduating from Dev Bootcamp, he has found himself driven by finding ways to improve the quality of education for coders and non-coders alike. Brittany and Ariel discuss how engineers can level up in how they learnā
š§ Jason Swett published a new podcast about 193 - Amanda Perino, Executive Director of The Rails Foundation ā āThis week I'm joined by Amanda Perino, Executive Director of the Rails Foundation. We discuss the upcoming Rails World conference in Amsterdam on October 5th & 6th. We also discuss what makes for a great conference experience, learning new languages and studying abroad, cultural differences between the US and Europe, and what's new at the Rails Foundationā
š½ļø š„ Videos
š½ļø Rubber Duck Dev Show published a new episode about Starting a Business With Kota Weaver
Screencasts
š„ Kasper Timm Hansen published a new video about Extending Rails (Gently) (Example) | GoRails
š„ Yaroslav Shmarov published new videos about:
š„ Dean De Hart published new videos about:
āš¾ Articles
Whatās new
Kevin Murphy published an article about Keeping Up With Ruby News All Week Long ā āI read a lot of Ruby news throughout the week. When someone asks me what they should follow, I first suggest that they not follow exactly the same blogs I doā
Rafael PeƱa Azar published a new article about Empowering Ruby in the World of Machine Learning ā āthis is a new one in my now called "Ruby is waaaay more than web development" article series, in which I'm trying to raise awareness in the community that the Ruby language covers a lot more ground than just Web Development and its relation to the RubyOnRails framework. In this post we'll talk about Ruby and Machine Learningā
John Nunemaker published an article about Flipper 1.0 ā āI love Flipper. I want to work on it more ā all the time. So that's why some great friends and I are turning it into a business. We helped build a lot of cool internal dev tools (at GitHub and elsewhere) and we want to unleash them on the world ā starting with Flipperā
Emmanuel Hayford published an article about Secure Your Ruby App with JSON Web Tokens ā āSecuring a web application can mean several things. In this post, we'll discuss a subset of web security that involves authentication using JSON Web Tokens (JWTs) and the Ruby on Rails web application frameworkā
Prasanth Chaduvula published an article about Open Ranges Are Now Supported By The Object#in? Method In Rails ā āIn the upcoming version of Rails, it is possible to check if a date is present in an open date range with Object#in?ā
Alkesh Ghorpade published an article about Rails 7.1 adds support for Array#intersect? to ActiveRecord::Relation ā āRails 7.1 added support for the Array#intersect? method to ActiveRecord::Relation objects. This means that you can now use the intersect? method to check if two ActiveRecord relation objects have any common elementsā
Matt Brictson published an article about Speed up your default Rake task with the multitask -m option ā āI recently discovered that Rake has the ability to run tasks in parallel. For Rails projects with many test and linting tasks, this can be a huge time-saverā
Josef Strzibny published an article about Verifying Paddle Billing webhooks with Rails ā āPaddle recently made a major overhaul of its offering and API. If you need to validate the new Paddle Billing webhooks in Rails, hereās how to do itā
Deep Dives
Mohit Sindhwani published a new article about Ruby Learning by Reversing: Native Gems, Part 5 ā āThe first series of Learning by Reversing examines a Ruby native gem to understand how it works. Part 5 digs looks at the C code needed to interface with the Ruby codeā
Lucas Barret published an article about ActiveRecord Internals : You are not ready for this ā āThis article will demystify Rails by looking deeper into the Rails active record association internalsā
Ivo Anjo published an their presentation and associated slides about about understanding the ruby global vm lock by observing it ā āThe GVL is an extremely important implementation detail, as it can have a big impact on the performance and responsiveness of any Ruby application that uses more than a single thread to do its workā
Steve Polito published an article about A pragmatic guide to building a Rack application from scratch ā āUntil recently, I didnāt really understand what Rack did. I knew it had something to do with Rails, but I was never in a situation where I needed to use it directly. Not only that, but I realized that I didnāt actually know how to make a server-side web application from scratch because I had become so dependent on Railsā
Brad Gessler published an article about Organic Test Driven Development ā āTest-driven development sounds like a really āheavyā, dogmatic way of building applications, but it can be surprisingly organic and lightweight starting with ādoes it run?ā as the first test, followed by more formal unit test verificationā
Jeremy Friesen published an article about Testing a Method Outside of the Application Test Suite to Speed Up Iterations ā āSeveral of those code repositories are applications that run in Docker containers. Their test suite is written in RSpec. That pernicious auto-require of rails_helper means that all invocations of RSpec will boot the entire Ruby on Rails application. Which does not create conditions for fast iterationā
How-Tos
Harrison Broadbent published two articles about A simple Stimulus Tabs Controller ā āIf you're after a simple Stimulus controller to handle tabs in your Ruby on Rails app, look no further. This controller handles toggling between multiple tabs, choosing a default tab, and adding CSS classes to the corresponding buttonā and Add a favicon to your Rails app in 2 minutes
Mario Alberto ChĆ”vez CĆ”rdenas published an article about Working with Rails Engines, Importmap and TailwindCSS for assets ā āRails 7 introduced CSS and JS bundling, along with the Propshaft gem to manage and serve assets. Also, introduced Importmaps and TailwindCSS as options for not having Node as a dependency, but in both cases without any official word on how to make these work with enginesā
Akshay Khot published an article about Practical Stimulus: Building a Counter Component ā āIn this article, we will build a counter component using the Stimulus JavaScript library. This simple example will demonstrate a bunch of useful features of Stimulus such as managing state, handling events, and targeting DOM elementsā
Ben Sheldon published an article about How to isolate I18n configuration in a Rails Engine ā āInternationalizing GoodJob has been a fun creative adventure. I hope that by writing this that other Rails Engine developers prioritize internationalization a little higher and have an easier time walking in these footsteps. And maybe weāll make the ergonomics of it a little easier upstream tooā
Ryan Bigg published two articles about Alpine Linux, Selenium Manager, Chrome and ChromeDriver and Ubuntu, Ruby, Selenium Manager, Chrome and ChromeDriver ā āSelenium, and by extension the selenium-webdriver gem, after version 4.11 come with a new feature called Selenium Manager. This CLI tool will automatically install whatever browser and driver you need to run your Selenium testsā
Josef Strzibny published an article about Overriding Rails engines models and controllers ā āIf youāve ever worked with a Rails engine, you might have come to a moment you needed to quickly override something. But do you know how to override the engine application files from within your Rails application?ā
Sid Krishnan published an article about How to use React just on one page in a Rails app ā āHaving had experience with React, you wonder if it is possible to use React just where it is needed, for your new feature, and continue to use plain old ERB and JS (Stimulus) everywhere elseā
Related
Jon Sully published an article about How to Fix Heroku's Noisy Neighbors ā āIf you've had any kind of production-tier application running on Heroku with a moderate (or higher) level of traffic for the last several years, you've probably experienced Heroku's noisy neighbors issuesāDavid Bryant Copeland published an article about Getting 'Save to Home Screen' to Kinda Work on iOS ā āiOS has a feature on any website called āSave to Home Screenā, which creates an icon that then goes to that site. If you craft your website a certain way, this will launch the site in an app-like mode that is often referred to as a āProgressive Web Appā or PWA. This post will document exactly what you need to do, because itās not documented very wellā
Jim Nielsen published an article about Reloading a Document (and Preserving Query String Parameters) Using Only HTML ā āThe other day I was trying to write some HTML to give the user the ability to reload the document in its exact state by clicking on a link (same functionality as if they hit CMD + R on their keyboard, or clicked āreloadā in the browser UI)ā
Victor Bogo published a new article about Prometheus metrics at 37signals ā āIn this blog post, I will share more about how we use Prometheus to properly ingest, store, and alert based on metrics in a way we can confidently migrate and manage infrastructure and applications on-premā
Please consider becoming a paid subscriber to support this newsletter for just $1.5/week ($6.5/month) and you will receive an ad-free version. 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.
Reply