Ruby digest #85: Ruby 3.2.8 Released, Sidekiq 8.0, RuboCop 1.75, Ractors, Solid Queue та багато іншого

Вітання, поважна Ruby-спільното!

​​Знову на зв’язку з найсвіжішим апдейтом зі світу Ruby та Rails! Цього разу нові релізи Ruby, які вже вриваються у продакшн, і гарячі апдейти популярних гемів, що точно варті вашої уваги. Захопливі технічні інсайти чекають на тих, хто хоче копнути глибше, а експерименти з Ractors відкриють нові горизонти у світі багатопоточності. І, звісно, не обійдеться без практичних порад для щоденної розробки — бо крутий код потребує натхнення!

Новини

▪️ Ruby 3.2.8 Released — оголошення про реліз Ruby 3.2.8 із плановими виправленнями помилок та покращеннями стабільності.

Корисне

▪️ Introducing Sidekiq 8.0 — оновлення популярної Ruby-бібліотеки для фонової обробки завдань, що приносить нові функції, покращення продуктивності та оновлені вимоги до середовища.

▪️ The Ultimate Guide to Scaling Sidekiq — глибокий гайд із масштабування Sidekiq у продакшн-середовищі, охоплює налаштування, моніторинг та антипатерни.

▪️ yjacquin/fast-mcp — новий Ruby-гем, що реалізує Model Context Protocol (MCP), спрощуючи інтеграцію AI-моделей у Ruby-застосунки.

▪️rubocop/rubocop — оновлення RuboCop із новими правилами, підтримкою Ruby 3.5 і технічними покращеннями.

Цікаве

▪️ The future of AI is Ruby on Rails — міркування про те, як Ruby може взаємодіяти з AI-технологіями, з оглядом поточних викликів і потенційних напрямів розвитку.

▪️ JavaScript for Rails Developers is Coming Soon — анонс нового освітнього ресурсу, який допоможе Rails-розробникам краще розуміти й використовувати JavaScript у своїх проєктах.

Статті й туторіали

▪️ What’s The Deal With Ractors? — стаття аналізує, чому Ractors у Ruby попри потенціал для паралелізму рідко використовуються на практиці через обмеження та складність інтеграції.

▪️ A Tale of 3 Aliases — порівняння трьох способів створення синонімів у Ruby: alias, alias_method та alias_attribut, з поясненням їхніх відмінностей та випадків застосування.

▪️ Decorating arrays with SimpleDelegator — пояснення, як за допомогою обгортки на базі SimpleDelegator розширити поведінку масивів без зміни їхньої сутності.

▪️ Seeds...of Destruction! — застереження про небезпеки неправильного використання seed-даних у Rails, що може призвести до проблем із продуктивністю та цілісністю даних.

▪️ Migrating from Sidekiq to Solid Queue — досвід переходу з Sidekiq на нову вбудовану систему фонових задач Solid Queue у Rails 7.1 з аналізом переваг і викликів.

▪️ Understanding the insertion sort algorithm in Ruby — покрокове пояснення, як реалізувати insertion sort на Ruby з акцентом на навчання алгоритмів через практику.

▪️ Better Know A Ruby Thing: Method Lookup — cтаття пояснює, як у Ruby відбувається пошук методу для об’єкта, включно з порядком перевірки класів, модулів і використанням super.

▪️ Imagine: Rails 8 Solid Trifecta: Cache, Cable, Queue — порівняння нових вбудованих можливостей у Rails 8: кешування, WebSocket-підключень та фонових задач як альтернатива стороннім рішенням.

▪️ An Opinionated Guide to Configuring Rails on Heroku — практичний гайд з налаштування Rails-застосунку в Heroku з урахуванням продуктивності, безпеки та зручності обслуговування.

▪️ Ruby Debugging Tips and Recommendations in 2025 — добірка надає сучасні поради та рекомендації щодо налагодження Ruby-коду, включно з інструментами, фреймворками та реальними прикладами.

▪️ Ruby, Ractors, and Lock-Free Data Structures — вступ до використання Ractors разом із безблоковими структурами даних у Ruby для побудови продуктивного багатопотокового коду.

▪️ Building an always-on (ruby) production profiler — розбір підходу до побудови профайлера, який працює постійно у продакшн-середовищі без великого впливу на продуктивність.

▪️ How to create value objects in Ruby — the idiomatic way — пояснення, як створювати об’єкти-значення у Ruby зрозуміло, чисто й відповідно до прийнятих практик мови.

▪️ Simple Declarative Presence for Hotwire apps with AnyCable — демонстрація того, як реалізувати функціонал присутності користувачів у реальному часі в Hotwire-застосунках за допомогою AnyCable.

▪️ Rails 8 Assets: Deep dive into Propshaft — докладний огляд Propshaft, нової системи керування асетами в Rails, з поясненням її архітектури, переваг та відмінностей від Sprockets.

▪️ A Practical Guide to Postgres Isolation Anomalies and How To Tame Them — детальний посібник, що досліджує аномалії ізоляції в PostgreSQL та способи їх усунення, зокрема через налаштування рівнів ізоляції транзакцій.

▪️ Running JavaScript after a Turbo Stream renders — стаття, що пояснює, як запускати JavaScript-код після завершення рендерингу Turbo Stream, використовуючи події або Stimulus-контролери.

▪️ Using PostgreSQL database constraints — стаття, що досліджує, як застосовувати обмеження на рівні бази даних для забезпечення цілісності даних у Rails-застосунках.

Подкасти

Drifting Ruby

▪️ Conditional Queue
▪️ Embeddings
▪️ Confetti
▪️ Chat Agent
▪️ Classification Models

Remote Ruby

The Ruby on Rails Podcast

RWpod

Для гарного настрою

Підписуйтеся на Telegram-канал «DOU #tech», щоб не пропустити нові технічні статті

👍ПодобаєтьсяСподобалось9
До обраногоВ обраному1
LinkedIn
Дозволені теги: blockquote, a, pre, code, ul, ol, li, b, i, del.
Ctrl + Enter
Дозволені теги: blockquote, a, pre, code, ul, ol, li, b, i, del.
Ctrl + Enter

Автор статті неймовірний молодець! Я захоплююсь тим як він регулярно пише статі і займається ресьорчем для нас ( і для себе звичайно)). Дякую вам ☺️

Дякуємо за відгук 💛 Дмитро справді робить супер-роботу)

Підписатись на коментарі