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
3 коментарі
Додати коментар Підписатись на коментаріВідписатись від коментарів