- Short Ruby Newsletter
- Posts
- π Short Ruby News - Edition #100
π Short Ruby News - Edition #100
Stay up-to-date on the latest launches, events, code samples, videos, and articles in the Ruby world. Don't miss out on what's happening in our community!
This is a fantastic milestone for the Short Ruby Newsletter - 100 editions. I took some time to describe how I feel about it in a short post.
You can jump directly to a section:
π All about Code and Ruby: π» Code, πCode Design,π‘Around, β€οΈ Why Choose Ruby
π§° Gems, Libraries, and Updates: π New, π§° Updates
More content: π π π§ π₯ βπΎ (articles, podcasts, videos, newsletters)
π Launches and discounts

π Kasper Timm Hansen launched their newsletter My Intro to Domain Modeling with riffing: The Bike Shed & RailsConf talk


π Events
π Y Combinator and Evil Martians are organizing a Ruby Meetup at the Y Combinator San Francisco HQ on 13th August. Register here to participate

π Helsinki Ruby Brigade announced call for their next meetup β Give a talk


π Y Combinator is having a Ruby Meetup on August 13 in its San Francisco HQ
π All about Code and Ruby
π Nagachika announced a new version of Ruby released: Ruby 3.2.5 Released - read the full release notes

π» Code Samples
π» Peter Solnica speaks on why one should never use to_hash as a method for dumping object to a hash

Here is Lucianβs take on the same:

π» Victor Shepelev shared a thread and wrote a deep dive about the Range Ruby class:

οΈπ» Matt Swanson shared a code sample from their product (you should also read the article they wrote about Event sourcing for smooth brains: building a basic event-driven system in Rails)

π» Lucian Ghinda shares a thread about Hash Value Omission feature in Ruby. You can read the full article about this feature here.

οΈπ» Michael Chaney shared a code sample about object oriented programming:

οΈπ» Haseeb Annadamban shared a code sample about connecting to different roles in Rails:

οΈπ» Lucian Ghinda shared how to use hash value omission to access keyword arguments that is labeled like a Ruby reserved keyword:

οΈπ» οΈRuby Cademy shared a tip to combine the `Singleton` module and `Concurrent::Hash` to create a thread-safe configuration manager in Ruby.

They also shared a tip on `Array#extract_options!` method:

Yet another tip on ActiveRecord::SpawnMethod#merge

οΈπ» Haseeb Annadamban shared a tip on how to add temporary query methods to an ActiveRecord::Relation object

οΈπ» Marian PosΔceanu shared a common mistake made while trying to avoid N+1 queries

οΈπ» Nate Hopkins shared a gist about a simple template rendering: Simple Template Rendering Β· GitHub

οΈπ» Haseeb Annadamban shared Let's Start Using Rails Attributes API:

οΈπ» Ruby Cademy shared about using Singleton and Concurrent Ruby to build a thread-safe counter in Rails:

π Alazycoder shared about using Tracepoint:

π Thinking about Code Design
οΈ οΈπ Nate Berkopec shares about fixtures being faster than factories in CI test suites.

Alexandre Ruban added:

οΈπ Chris Oliver shared how to handle passing arguments to before/after/around callbacks

οΈπ Ross Kaffenberger shared about Turbo and breaking out of Turbo frame:

Matt Swanson replies with suggesting a solution:

π‘ Around code (news, findings, books, and more - all about Ruby)
π‘ Tobi Lutke shared about LLM benchmarks should include Ruby and offered to sponsor efforts to include Ruby:

π‘ David Heinemeier Hansson shared that 37signalβs HEY has adopted Solid Queue, bidding its farewell to Resque:

β€οΈ Why Choose Ruby
β€οΈ Donn Felker shared about how they are using Ruby on Rails:

β€οΈ Elisa shares why she feels people shouldnβt move away from rails after she experiments with Node:

β€οΈ Jose Farias shares his love for Rails and I bet you agree too.

β€οΈ Onur ΓΆzer shares his take on the most underrated features of Rails

β€οΈ Donn Felker shared how much more productive he was with Ruby.

β€οΈJason Leow shared how much they love Rails:

β€οΈ Ivan Morgillo shared about building PWAs with Rails:

β€οΈ Tim Abdulla shared how productive one can be with Rails:

β€οΈ Charles Oliver Nutter shared about benefits of using JRuby:

π§° Gems, Libraries, Tools and Updates
π New Gems and Repos
π Nate Hopkins announced a new gem hopsoft/fmt: A simple template engine based on native Ruby String formatting mechanics

π Ian Ker-Seymer published a new gem called nicetest - offering a CLI, pretty assertion diffs, pre-configured reporters, focus checks, and colorful backtrace filters for seamless test running

π Andres Chacon published a new gem oas_rails - Rails engine for generate automatic interactive documentation in your rails APIs

You should also read the article introducing this new gem Generating Documentation for Your Rails API: I Build My Own Tool
π§° Updates
π§° Stephen Margheim announced a new feature added to Rails - Ensure SQLite transaction default to IMMEDIATE mode (you should also read Stephen's article about this: SQLite on Rails: Improving concurrency)

π§°James announced a new version of mocha - A mocking and stubbing library for Ruby

π§° Jeremy Evans announced a new version of Rodauth 2.36.0 Released Β· jeremyevans/rodauth - GitHub

π§° Vinicius Stock shared a new Ruby LSP feature.

π§° Chris Oliver announced a new version of Revise Auth

π§° Postmodern announced a new release of Ronin - a Free and Open Source Ruby Toolkit for Security Research and Development. It includes a lot of new libraries:

π§° Andrei Kaleshka published a new version of actual_db_schema - Wipe out inconsistent DB and schema.rb when switching branches. To do that, install this gem and use the standard rake db:migrate command

π Keep an eye on
π Dima Fatko announced a PR for Rails about Support batching using custom columns by fatkodima Β· Pull Request #52384

π Nao Yonashiro submitted a new bug in Ruby tracker about Memory allocation for gsub has increased from Ruby 2.7 to 3.3

π€ Related (but not Ruby-specific)
π€ Matheus Richard shared about using ARIA selectors with Tailwind:

π€ James Potter shared a code sample about sending simple alerts to Telegram:

π€ Donn Felker shared What PWA Can Do Today

π€ Donn Felker shared about βdry promotionsβ:

More content: π π π§ π₯ βπΎ
π Okura Masafumi shared their slides about How NOT to make your DSL terrible
π Marco Roth shared their slides about Developer Tooling For The Modern Hotwire & Rails Era - RedDotRubyConf 2024
π Hasumi Hitoshi shared their slides about A Beginnerβs Complete Guide to Microcontroller Programming with Ruby
π Newsletters
π Ruby Weekly published a new edition about How Ruby's IDE experience continues to improve
π Ruby On Rails published a new edition about Model Missing Attributes, SQLite Immediate Transactions, and CVV/CVC Parameter Filtering by default
π RubyCentral published a new edition about July 2024 Newsletter
π Awesome Ruby Newsletter published a new edition about Awesome Ruby Newsletter | 427
π Hotwire Weekly published a new edition Week 30 - Inline Saving, Stimulus Image Gallery, and more!
π§ Podcasts
π§ Indie Rails published a new podcast about IndieRails | Back in the Saddle
π§ The Bike Shed published a new podcast about The Bike Shed: 434: Git and GitHub Workflows
π§ Remote Ruby published a new podcast about There is no A in JSON
π§ The Ruby on Rails Podcast published a new podcast about Episode 520: Backend Accessibility with Hilary Stohs-Krause
π§ Thoughtbot published a new podcast about CFP season and tips for having your talk selected for a conference.
π½οΈ π₯ Videos
π₯ Irina Nazarova shared the videos from the SF Bay Area Ruby Meetup in July @ Cisco Meraki by Evil Martians
π₯ Nick Taylor published a video about All Things Rails
Screencasts
π₯ Pascal LalibertΓ© published a new video about Working in Stimulus, generating some HTML markup with `document.createElement`...
π₯ Drifting Ruby published a new video about Soft Limits and about Kanban from Scratch
π₯ Chris Oliver published a new video about Adding Honeybadger Insights To The RubyGem (Example)
π₯ Graceful.Dev published a new video about How are "methods" and "messages" different in Object-Oriented programming and a teaser about the Endless Methods in Ruby
π₯ Lukasz Reszke published a new video about Hotwire, Turbo Drive, Frames and Streaming. Long Live Server Side Rendering π with SPA experience and about Turbo streaming (aka broadcasting)
π₯ Jet Brains Ruby Mine published a new video about RubyMine Inspections Overview: Improve Ruby Code Quality
π₯ Jason Swett published a new video about Reorganizing My Tests, Fixing Active Build Link Bug - Live Coding on SaturnCI and about Implementing Auto-Scroll for Terminal Output
βπΎ Articles
βοΈ Stan Lo published an article about Mastering Ruby Code Navigation: Major Ruby LSP Enhancements in the First Half of 2024
βοΈ Matt Swanson published an article about Event sourcing for smooth brains: building a basic event-driven system in Rails
βοΈ Pierre de La Morinerie published an article about Exploring Rails codebases: Writebook
βοΈ Andrew Atkinson published a new article about Whatβs Coming in Ruby on Rails 7.2: Database Features in Active Record
βοΈ Stan Lo published a new article about Mastering Ruby Code Navigation: Major Ruby LSP Enhancements in the First Half of 2024
βοΈ Thoughtbot published a new article about RailsConf 2024 highlights
βοΈ Alexandre CalaΓ§a published a new article about Efficient Ruby Coding: A Guide to Immediate and Non-Immediate Objects
βοΈ Haseeb Annadamban published a new article about Building Custom Generators in Rails
Whatβs new π
π Mohammad A. Ali published a new article about LiteCluster: Replicated, leaderless, ACID compliant & high availability SQLite
π Mati published an article about Inline Save and Add Another with Rails and Hotwire | Rails Designer
π Greg Navis published a new article about Micro-interactivity without Stimulus | Greg Navis
π Steven Wanderski published a new article about DoList: A free and open source alternative to Todoist
π΅οΈ Deep-Dive
π΅οΈ Victor Shepelev published How it became like this? Ruby Range class
π΅οΈ Jake Zimmerman published an article about Generic methods cannot have non-generic defaults in Sorbet
π΅οΈ Alexey published an article about Persistent Redis Connections in Sidekiq with Async::Redis: A Deep Dive
π΅οΈ Lucian Ghinda published an article about Understanding Hash Value Omission in Ruby
How-TOs π
π Michael Chaney published an article about Adding A Confirmation Interstitial On Create in REST
π Rails Designer published an article about Inline Save and Add Another with Rails and Hotwire
π Hugo published an article about a guide to generate PDFπ using Prawn in your Rails project
πAhmed Nadar shared a quick tip for cleaning comments and empty spaces in your Gemfile.
π Hrishi Mittal published an article about How to build an image gallery in Rails with Stimulus
π Darya Sharkova published an article about How to use Stimulus in your Rails apps with RubyMine
Reply