- Short Ruby Newsletter
- Posts
- Short Ruby News - Edition #86
Short Ruby News - Edition #86
The one with many discussions about code design in Ruby
You can jump directly to a section:
π New Products & π Events
π All about Code and Ruby: π» Code, πCode Design,π‘Around, β€οΈ Why Choose Ruby
π§° Gems, Libraries, and Updates: π New, π§° Updates and π Keep an eye on
π€ Related (but not Ruby-specific)
More content: π π π§ π₯ βπΎ (articles, podcasts, videos, newsletters)
π New Products
π Vladimir Dementyev launched Ruby Warrior running in browser:
π David Copeland launched Sustainable Dev Environments
π Events
π RailsConf 2024 has a flash sale that will end today (Monday 15 April):
π Ruby Kaigi announced the Schedule and CFP for Lightning Talks is now open
π If you plan to submit your talk for a conference check out rubyconferences.org/cfp
π All about Code and Ruby
π» Code Samples
πNicolas Buduroi shared about implementing deep_freeze on Object by using Ractor make_shareable method:
π Julian Rubisch shared two code samples to convert images to webp and create thumbnails from them (check the gist here):
π Lori Olson shared a code sample about sending ebooks to Kindle
π Dima Fatko asked about why to freeze constants in Ruby:
Here are some replies:
Jean Boussier shared a fix for Don't use a mutable constant as Rack response Β· whitequark/rack-utf8_sanitizer@f2bcf86
π Adam Rice shared about the value of PROGRAM_NAME in rails console:
π Joel Drapper shared about how they implemented the efficiency option in Quickdraw:
π Prabin Poudel asked about use cases for using Proc and Lambda in real applications:
Here are some replies:
π Ruby Cademy shared
π Dima Fatko shared a code sample from a feature merged to Rails main β Allow `ActiveRecord::Base#pluck` to accept hash values by fatkodima Β· Pull Request #51565 Β· rails/rails
π Vidar Hokstad shared an explanation about how meta classes work in Ruby:
π Kristian Freeman shared a code sample showing how to use prexied_ids gem:
π Thinking about Code Design
π Zaru shared about the performance improvements gained from upgrading to Ruby 3.3:
π Nate Berkopec shared about caching:
π Ryan Bates asked about what is more straightforward to debug:
Here are some replies:
π Jaredmoody asked about Phlex and vanilla path in Rails:
Joel Drapper replied (you should read the entire thread shard by Joel):
π Gavin Morrice shared about avoiding global state:
Michael Chaney replied that one of the cases is for current user:
π Nate Berkopec shared about making the browser the focus when thinking about performance:
π Ryan Bates shared about Rails engines as not being the right abstraction for a gem:
Gavin Morrice replied, sharing their experience about modularizing a monolith with Rails engines:
π Ryan Bates shared about using class methods over POROs:
π Donn Felker shared about replacing third-party stimulus controller with Hotwire for autocomplete:
π Matheus Richard asked about adding modules to a route:
Here is a possible solution:
π Brad Gessler invited people to think twice before using STI in Rails:
Here are two other perspectives:
π Ross Kaffenberger shared about testing API wrappers:
π Jason Swett asked about the definition of PORO:
Here are some replies:
π‘ Around code (news, findings, books and more - all about Ruby)
πMohit Sindhwani shared about running Rails 7.2 alpha and Ruby 3.3 on regular Window:
π Dhaval Singh shared about learning Ruby:
π David Colby asked about in person Ruby meetups:
Matt Swanson suggested a way to re-start in person meetups:
π Carlos Antonio shared that Devise support for Rails 4.1 and Ruby 2.1 will go away soon:
π Alex Rudall shared their project alexrudall/ruby-openai: OpenAI API - reached 10 million downloads:
π Andrei Bondarev shared about Langchain hitting 1k stars on Github:
π Irina Nazarova shared about Anycable capabilities:
π Ross Kaffenberger shared about the history of naming Capybara:
β€οΈ Why Choose Ruby
β€οΈ Andi / γ’γ³γγ£ shared about Ruby elegance and simplicity:
β€οΈ Andrew Hodson shared about Rails community:
β€οΈ Jared Norman shared about hype cycle and Ruby
β€οΈ Mark Hesketh shared about the stack that makes them happy:
β€οΈ Maciek RzΔ sa shared a quote from Wroclove.rb
β€οΈ Josh Pigford shared about AI-assisted programming working better for Rails:
π§° Gems, Libraries, Tools and Updates
π New Gems and Repos
π Wouter Coppieters published a new gem called crystalruby - Embed Crystal code directly in Ruby
π Samuel Williams published a new gem called Async::Ollama - Provides an interface for accessing the Ollama HTTP interface
You should check the Ollama example PR that Samuel created to show how it works.
π Johny Ho announced a new gem called form_props - The power of Rails forms for React
π RailsDesigner published a new gem called rails_icons - Add SVG icons from multiple libraries, or your own custom icon set, with this one gem
π§° Updates
π§° Stephen Margheim announced a new version of fractaledmind/solid_errors - database-backed, app-internal exception tracker for Rails applications
π§° Heartcombo announced a new version of Devise version 4.9.4
π§° Stephen Margheim announced a new version of GitHub - fractaledmind/activerecord-enhancedsqlite3-adapter: ActiveRecord adapter for SQLite that enhances the default. Back-ports generated column support, deferred foreign key support, custom foreign key support, improved default configuration, and adds support for pragma tuning and extension load
π§° Ben Sheldon shared they updated the documentation for good_job: Multithreaded, Postgres-based, Active Job backend for Ruby on Rails.
π§° Bozhidar Batsov announced a new version of Release RuboCop 1.63 Β· rubocop/rubocop
π Keep an eye on
π Aaron Patterson shared a PR about Optimized forwarding callers and callees by tenderlove Β· Pull Request #10510 Β· ruby/ruby. Read the proposal on Ruby issue tracker
π Jean Boussier shared a PR proposed for Minitest about Werror mode? - Turn warnings into errors Β· Issue #990 Β· minitest/minitest
π€ Related (but not Ruby-specific)
π€ PaweΕ DΔ browski shared about their experience:
More content: π π π§ π₯ βπΎ
π½οΈ Slides
π½οΈ Andrey Novikov shared their slides from RubyConf AU about Threads, callbacks, and execution context in Ruby
π½οΈ Radoslav Stankov shared their slides from Wrclove.rb about Component-Driven UI with ViewComponent Gem
π Newsletters
π Greg Molnar published a new edition of This Week in Rails about A week of fixes
π Ruby Weekly published a new edition about Crystal in your Ruby
π Ruby LibHunt published a new edition about Awesome Ruby Newsletter - Issue 412, Apr 11, 2024 | LibHunt
πHotwire Weekly shared Week 15 - HTML Streaming over the Wire, AnyCable in real apps, and more!
π§ Podcasts
π§ Ruby For All published a new podcast about Coding Campfires β Unplugged Adventures at Rails Camp West with Bobbilee Hartman | Ruby for All | Episode 65
π§ The Bike Shed published a new podcast about The Bike Shed: 422: Listener Topics Grab Bag
π§ Ruby Rogues published a new podcast about Navigating the Changing Tech Landscape with Fabio Akita - RUBY 631 - Ruby Rogues - Top End Devs and about The Power of Turbo Native with Ayush Newatia - RUBY 632
π§ Remote Ruby published a new podcast about Code, Confessions, and Casinos - Sin City Ruby - Remote Ruby
π§ The Ruby on Rails Podcast published a new episode about The Ruby on Rails Podcast Episode 513: Modern Rails Apps Ayush Newatia
π½οΈ π₯ Videos
Screencasts
π₯ Drifting Ruby published a new video about Episode 451 - Windows and WSL | Drifting Ruby and about Episode 452 - Tags from Scratch | Drifting Ruby
π₯ Igor Alexandrov published a new video about Episode #2 β Maybe, open-source personal finance Rails app
π₯ Jason Swett published a new video about An Explanation of Docker and Docker Compose (Plus Live Coding on SaturnCI) and about Figuring Out the Domain Model - Mentorship Session with Josh Cutts
π₯ Chris Oliver published a new video about RORO Sydney β A fireside chat with Chris Oliver β April 2024
π₯ Dean De Hart published a new video about Kamal Traefik Dashboard for Ruby on Rails 7
π₯ Cezar Halmagean published a new video about Building a Property Management System (live stream)
βπΎ Articles
Whatβs new π
Gift Egwuenu published a new article about March 2024 RubyGems Updates
Koichi Sasada published an article about Am I the only one who doesnβt put parentheses around the parameters in Ruby method definitions?
Nithin Bekal published an article about Abstract methods and NotImplementedError in Ruby
paiza.jp published an article about Ruby was said to be dead and Rails was said to be obsolete, but it has come back to life (read the original in JP)
Shun Sugai published a new article about Became a Ruby 3.3.0+YJIT production operation company - translated with Google Translate (read the original in JP)
Siddharth Shringi published an article about Rails 8 adds Rubocop by default to new applications
Ruby Association published a new article about JetBrains Supports the Ruby Ecosystem With Ruby Association Sponsorship
Josef Strzibny published a new article about How I wrote Kamal Handbook in 5 weeks and sold 300+ copies at the same time
RoRvsWild published an article about Super Fast Rails β A promise given is a debt
Jason Zimdars published an article about Modern CSS patterns in Campfire
Stephen Margheim published a new article about SQLite on Rails: Isolated connection pools
How-TOs π
Fiona Lapham published an article about How to Build a Discord Bot in Ruby on Rails
Aestimo Kirina published an article about Account-based subdomains in Rails
Svyatoslav Kryukov published an article about Let there be docs! A documentation-first approach to Rails API development
Kevin Baribeau published an article about Work around Rails schema noise with one weird trick
Dumebi Okolo published an article about Simple Authentication in Ruby on Rails: a step by step guide
Kevin Murphy published an article about Making a (Sidekiq) Batch Recipe
RailsDesigner published an article about Guide to Slots in Railsβ ViewComponent
Alkesh Ghorpade published an article about Maximizing Code Quality with Rails Pre-Commit and Pre-Push Hooks
Youssef Boulkaid published an article about Hands-off eclipse photography with ruby and gphoto
Deep Dives π
Akshay Khot published an article about How I Read Rails Source Code
Mathieu Eustachy published an article about Process management in Ruby
Reply