- Short Ruby Newsletter
- Posts
- Short Ruby News - Edition #73
Short Ruby News - Edition #73
Discover what's new in Ruby 3.3, merged PRs for Rails 7.1, and plans for Rails 8 and Turbo 8. This edition covers the last two weeks of 2023 and the first week of 2024.
You can jump directly to a section:
π All about Code and Ruby (Ruby 3.3.0, Rails 8 and more)
More content: π π π§ π₯ βπΎ (articles, podcasts, videos, newsletters)
[Sponsor β¬] reinteractive.com
The reinteractive Application Code Review is a deep dive into your application, providing you a complete window into the state of your app.
π New Products
π Hans Schnedlitz launched Data Dead Drop
π Stan Lo shared that Yuta Saito created a new Ruby Playground
π Hasumi Hitoshi announced the new website for PicoRuby Introduction | PicoRuby Documentation
π Thoughtbot launched Introducing Superglue: React β€οΈ Rails
π Events
π Friendly.rb shared that the tickets are on sale at friendlyrb.com and that all videos from last year are now available:
π Euruko shared the new location for EuRuKo 2024:
π All about Code and Ruby
π Ruby 3.3.0 was released on 25 December 2023
Here are some resources about this release:
Victor Shepelev published an extensive and well-documented review of all the changes in Ruby 3.3 Ruby 3.3 Changes
Maxime Chevalier-Boisvert and Aaron Patterson published an article about Ruby 3.3βs Yjit: Faster While Using Less Memory
Apoorv Tiwari published an article about Ruby 3.3 Fixes Duplicate Keyword Argument Warning Bug
Yusuke Endoh and Takashi Kokubun published an article Ruby 3.3 NEWS (JP) (translated via Google Translate β Ruby 3.3 NEWS)
Junichi Ito published an article about You can see it with the sample code! The main new features and changes of Ruby 3.3 (JP) - here is an English version available via Google Translate
Takashi Kokubun published an article about Why you should enable YJIT now in Ruby 3.3 (JP) - here is the English version translated via Google Translate
Mohit Sindhwani published an article about Ruby 3.3 on Windows: Day 0 - install and Hello World
π Jean Boussier shared that Shopify monolith is running on Ruby 3.3.0
π Aaron Patterson invited us to use jemalloc:
π MatouΕ‘ BorΓ‘k shared about performance gains with Ruby 3.3:
π Nate Berkopec shared a feature of Ruby 3.3 [Feature #19437] Add marking and sweeping time to GC.stat by peterzhu2118 Β· Pull Request #7304 Β· ruby/ruby
π Rails 7 releases and Rails 8 plans and releases
Rosa GutiΓ©rrez announced the release of SolidQueue and wrote a great article about it at Introducing Solid Queue
π Jorge Manrubia shared more Rosaβs work and features found in SolidQueue:
π David Heinemeier Hansson announced they are already running millions of jobs every day through Solid Queue:
π Adrian Marin announced an UI in Avo for SolidQueue - Rails App Template - Solid Queue
π Vincent Rolea shared a tip when migrating to SolidQueue:
Other resources to read or watch:
Chris Oliver published a video about How To Use Solid Queue In Rails With Active Job (Example)
Kyle Keesling published an article about Migrating from Sidekiq to Solid Queue
Zain Butt published an article about Moving To Solid Queue From Sidekiq
Ben Sheldon published an article about Solid Queue First Impressions: Nice!
Rails 8
David Heinemeier Hansson announced a series of topics/PRs about Rails 8 and Github Milestone for Rails 8
importmaps-rails changes: Drop the bundled shim, Pinning should just always download, Preload all by default:
He also shared they plan to launch Action Notifier:
zzak merged Add rubocop-rails-omakase to new Rails applications by zzak Β· Pull Request #50486 Β· rails/rails
A placeholder for discussing Add basic authentication generator Β· Issue #50446 Β· rails/rails
π Stephen Margheim shared about Rails renaissance in 2024:
DHH replied with:
There are a couple of articles talking about the new features in Rails 8 or about Turbo 8:
Harrison Broadbent published an article about Here's what's coming in Rails 8
Lucas Dohmen published an article about Sneak Peek On Rails 8
Brad Gessler published a new article about 8 Turbo 8 "Gotchas"
Zilvinas Kucinskas published a new article about Turbo 8 Page Refreshes (+ Morphing) Explained at Length
Yaroslav Shmarov published a new video about Rails #156 Turbo 8 Morphing in real life
Drifting Ruby published a new video about Episode 436 - Turbo 8 | Drifting Ruby
π Ruby On Rails shared a tip about image_tag, audio_tag and image_tag:
π Samuel Williams shared performance benchmark for that falcon - A high-performance web server for Ruby
π Xavier Noria shared a preview of their new book:
π Vidar Hokstad shared a code sample showing a RB-tree balance function:
πJason Garber shared a behavior of class IO - Documentation for Ruby 3.2
π Xavier Noria shared about coding rules:
He continued with:
π Deepak Mahakale shared a tip about using to_fs instead of strftime:
π David Heinemeier Hansson shared the Gemfile for Once:
π Andrei Bondarev shared a thread with results from the Ruby AI survey. Here is one of the posts from the thread:
π Nate Berkopec shared a discussion about the default Puma thread count. Read the entire discussion on Github. It is a good debate with great arguments: Set a new default for the Puma thread count Β· Issue #50450 Β· rails/rails
π Jesper Christiansen shared a tip about doing redo for Rails migrations:
π Mike Coutermarsh shared how to scale web apps with Rails:
π Leanpub shared there are discounts on two books: Build A SaaS App in Rails 7 and Gradual Modularization for Ruby and Rails
π Ruby Cademy shared a tip about using Rails acts_like? method:
π Facundo Espinosa shared about the process of updating gem versions:
π Maciej Mensfeld shared a code sample about exactly once transaction in Karafka:
π Matt Swanson shared a tip for simplifying assertions:
π Dima Fatko shared a tip about using Bumbler: Track the load progress of your Bundler-based projects to improve boot time:
π David Heinemeier Hansson shared a code sample about implementing Ratelimiter:
π Facundo Espinosa shared how to use outdated and audit importmap commands:
π Dima Fatko shared a performance tip about Speedup activerecord tests by fatkodima Β· Pull Request #47499 Β· rails/rails
π Hans Schnedlitz shared a code sample based on Diceware - Wikipedia
π Ruby On Rails shared a tip about mailer callbacks using before_deliver and after_deliver:
π Marc KΓΆhlbrugge shared an image about database tables:
π John Nunemaker shared a code sample for a Storage used in Telemetry in Ruby Part 1: Metrics and Storage
π Matheus Richard shared a code sample showing how you can define constants inside constants:
π§° Gems, Libraries, Tools and Updates
π π§° θΌζεΌ¦δΉ announced a new project hanami-lambda: Hanami Lambda is a gem that provides a way to run hanami application on AWS Lambda.
π§° Brooke Kuhlmann announced a new version for Milestoner
π π§° Mike Ray Arriaga announced a new library stimulus-inline-input-validations - Watch the Screencast for Stimulus Inline Input Validations. Here is one of the examples of how this library might work:
π π§° Kevin Newton announced a new gem parser-prism: A prism backend for the whitequark/parser gem
π§° Petrik De Heus shared a PR about Add `explain` support for methods like `last`, `pluck` and `count` by p8 Β· Pull Request #50482 Β· rails/rails
π§°Postmodern announced the release of version 0.5.0 Β· postmodern/command_kit.rb
π§° Camilo announced the release of version 1.0.0 for standard-rails - A Standard Ruby plugin that configures rubocop-rails
π π§° Ryan Kulp announced a new gem methodz - Supercharge Ruby "methods()" helper
π π§° Franck StΓ©phane Ndzomga published a new gem mistral_rb - An Easy-to-Use Mistral API Wrapper for Ruby Developers
π§° Takashi Kokubun shared they finished the implementation of Implement `it` by k0kubun Β· Pull Request #9199 Β· ruby/ruby
π§° Vladimir Dementyev announced a new version of Release 1.0.0 Β· ruby-next/ruby-next
π§° Kevin Newton announced that prism backed stree is coming soon:
π§° Nate Hopkins announced a new version of TurboBoost Commands - see the PR here and he shared a video walkthrough:
π§° Andrei Kaleshka announced a new version of Phantom migrations status rake task by ka8725 Β· Pull Request #35 Β· widefix/actual_db_schema
π§° Gene M. Angelo, Jr. announced a new version of dsu- dsu is little gem that helps manage your Agile DSU (Daily Stand Up) participation
π π§° Niklas HΓ€usele announced a new version of email_error_reporter: Report your Rails errors via email
π π§° Matheus Richard announced a new gem code_picture: Transform your code into pixel-art - read the article at Turn Your Code Into Pixel Art
π§° Stephen Margheim announced a merged PR to Rails about Allow overriding SQLite defaults from `database.yml` Pull Request #50460 Β· rails/rails
π π§° Borja Garcia De Vinuesa OrdovΓ‘s announced a new version ofrails_session_cipher: a Ruby gem providing an efficient and secure way to encrypt and decrypt Rails session cookies using AES-256-GCM cipher
π§° θΌζεΌ¦δΉ announced a new version of boxing - The zero-configuration Dockerfile generator for Ruby.
π§° Thomas Cannon shared a script about Tiptap document renderer using Phlex
π§° Cameron Dutro announced a merged PR to view_component addressing CVE-2024-21636 - Ensure Html Output Safety By Camertron Β· Pull Request #1950 Β· View Component/View Component
π π§° Dewayne Van Hoozer published a a new gem called aia - AI Assistant (aia) a Ruby Gem for using genAI on the CLI
More content: π π π§ π₯ βπΎ
Ruby Conf published the conference videos at RubyConf 2023 (San Diego)
Blue Ridge Ruby published the conference videos about Blue Ridge Ruby
Friendly.rb published the conference videos at Friendly.rb 2023 - Bucharest September 27 & 28
π Newsletters
π zzak published a new edition of This Week in Rails about Omakase RuboCop, Brakeman, Ruby 3.1+, allow_browser, rate_limit, an...
π Nate Berkopec published a new edition of The Ruby/Rails performance newsletter about When You Should Ignore GC
π Hotwire Weekly published a new edition about Week 01 - Welcome to 2024!
π Emmanuel, Greg, Vipul, Wojciech, and Zzak published a new edition of This week in Rails about This year in Rails, a summary of 2023
π Ruby Weekly published a new edition New Year, New Ruby
π Awesome Ruby Newsletter published a new edition Issue 398 - Inheritance in Ruby, in pictures
π RubyRadar published a new edition about First One of the Year
π§ Podcasts
π§ Kelsey Hightower published a talk on Twitter Space about Scheduled: On-Premises with DHH
π§ Ruby For All published a new podcast about Teaching Code, Shaping Futures β John Crepezzi on Ruby, Bootcamps, and AI
π§ Ruby Rogues published a new podcast about Unraveling Ruby's AI Journey with Alex Rudall - RUBY 619
π§ The Rails Changelog published a new podcast about 017: A deeper dive into Zeitwerk with Xavier Noria
π§ Adrian Marin published a new episode of Friendly Show about Season 1 Finale
π§ Indie Rails published a new podcast about IndieRails | Ayush Newatia Unplugged - Writing Code and Writing Prose
π§ Ruby Rogues published a new podcast about Turbo 8 Unpacked: Cutting-Edge Features, Open Source Wins
π§ The Ruby on Rails podcast published a new episode about Ruby For All Crossover!
π½οΈ π₯ Videos
Screencasts
π₯ Jason Swett published a new video about SaturnCI - Building Two Independently-Scrollable Panes
π₯ Ken Greeff published a new video about Construction Manager - Part 2
π₯ Joe Masilotti published a new video about Daily Log code deep dive - Authentication
π₯ Nate Hopkins published a video about a preview of ActiveRecordETL (see it on nitter) and about a preview of ActiveRecord Forge (see it on nitter)
π₯ Andrei Bondarev published a new video about Live coding Langchain.rb Assistants
Talks
π½οΈ Gavin Morrice published a new video about REST for Rails Engineers
π½οΈ Kevin Menard published a new video about BlueRidgeRuby2023: Making Ruby Fast(er) - Kevin Menard
π½οΈ Jenny published a new video about RubyConf 2023 - Demystifying the Ruby package ecosystem by Jenny Shen
π½οΈ Montreal.rb published a new video about Ruby Talk 2023/12 Building Llm Powered Applications Andrei Bondarev and about Anatomy of a Payment - Michel Jamati
π½οΈ Wei Zhe published a new video about When Neovim meets Ruby on Rails - ror.nvim
βπΎ Articles
Whatβs new π
Kyle Keesling published an article about Migrating from Sidekiq to Solid Queue
Apoorv Tiwari published an article about Rails 7.1 Introduced Validate Option For Enums
Philip Mueller published an article about The Mystery Of Railsβ <Code>Lib/</Code> Folder
Stan Lo published an article about Unveiling the big leap in Ruby 3.3βs IRB
Brandon Keepers published an article about How To Make Web Analytics Valuable For Rails Apps
Stephen Margheim published a new article about How (and why) to run SQLite in production
Amanda Perino published a new article about Ruby On Rails &Mdash; Reflecting On 2023: Rails Foundation's Inaugural Year
Stephen Margheim published a new article about SQLite Quick Tip
Jake Zimmerman published an article about Abstract Singleton Class Methods Are An Abomination and Inheritance In Ruby, In Pictures
Rafael PeΓ±a-Azar published an article about Forging The Future Of Blockchain Development (With Ruby)
Deep Dives π
Alkesh Ghorpade published an article about Conquering Code Clutter A Guide To Rails Concerns
Felipe Vogel published an article about Coming to grips with JS: a Rubyist's deep dive
John Nunemaker published an article about Telemetry in Ruby Part 1: Metrics and Storage
Akshay Khot published an article about Why You Need Strong Parameters In Rails
How-TOs π
Erik Minkel published an article about Deploy An App With SQLite, Active Storage And Kamal
Rob Zolkos published a new article about Debugging production ActionMailbox issues in development
Luan Gonçalves published an article about This Is The Way⦠The Callable Way The Miners
Joe Ferris published an article about Route Based Scaling On Kubernetes For Rails Monoliths
Harrison Broadbent published an article about Edit Rails Credentials using VS Code
Dave Kimura published a new article about Self Hosted Github Actions Runner
PaweΕ Pacana published a new article about Repository implementation on ActiveRecord
Josh Smith published an article about Connecting Debugger To Rails Applications
Web Crunch published a new article about Best Practices for Naming Models in Ruby on Rails
Hans Schnedlitz published a new article about Continuous Deployment with GitHub Actions and Kamal
MichaΕ ΕΔcicki published an article about From Celluloid To Concurrent Ruby: Practical Examples Of Multithreading Calls Blog Visuality
MichaΕ Dulat published an article about How A Simple Http Header Mismatch Led To Cache Poisoning
Prasanth Chaduvula published an article about Automate Fly Postgres Database Backup & Store To S3 Bucket With Git Hub Actions
Related
Salvatore Sanfilippo published a new article about LLMs and Programming in the first days of 2024
Miles published an article about Looking back on 2023
Reply