Rails Foundation Contributing Member
Ruby on Rails consulting from engineers who work deep in Rails.
Saeloun helps teams modernize Rails applications, improve performance, untangle production issues, and ship product work with a senior Rails and React team in Boston and Pune.
- 604+
- engineering articles
- 2019
- founded in Boston
- Rails
- Foundation member
Latest Rails, React, and engineering articles
Field notes on framework changes, performance, upgrades, testing, and product engineering.
Rails 7 now consistently renders button_to
Rails 7 introduced a config that helps button_to consistently render out to the button HTML tag.Rails 7 Retry Jobs Indefinitely
Rails 7 adds :unlimited option to retry_on attempts, allowing jobs to retry indefinitely until the failure is resolved.ActiveStorage Raises PreviewError
Before this update, a failed preview generation would result in a 0-byte file being created – leading to disastrous outcomes in the views.Rails 7 Faster Logger with class_attribute
Rails 7 utilized Ruby's cache for cvars to improve ActiveRecord::Base.logger performance 7x. Let's deep dive into this!ActiveRecord Column-Based Type Casting
Rails 7 now harmonizes results of ActiveRecord::Calculations.average by applying column-based typecasting.Ruby 3.1 Adds Integer.try_convert
Ruby 3.1 adds try_convert for Integer to convert objects via implicit to_int method, returning nil if undefined.React 18 Suspense Improvements
React 18 delays committing everything inside the Suspense boundary (the suspended component and all its siblings) until the suspended data resolves.Rails 7 Adds Absolute Cache Expiry
With the introduction of expires_at to Rails Cache it is now possible to set absolute timestamps for cache expiry.Rails 7 belongs_to Change Tracking
Rails 7 adds association_changed? and association_previously_changed? methods for belongs_to associations.React 18 adds automatic batching
React 18 adds out-of-the-box performance improvements by doing more batching by default.