Tutorials

Return an Enumerator When Your Collection Has Multiple Traversals
Unlike an array where usually there’s only a single way you’d want to traverse it, binary trees have many common ways of being traversed. Let’s say you’re building a binary tree object and you want to support the 3 classic depth-first traversals:P...

How to use Dev Containers with Rails (Example) | GoRails
One of the toughest hurdles we see in Rails is just getting started. Learning how to install Ruby using a version manager, installing and running databases, as well as other dependencies for compiling gems or image processing can be quite a pain.T...

Rails 7.2 Adds Support For Devcontainer. | Saeloun Blog
A development container (or dev container for short) allows us to use a container as a full-featured development environment.It can be used to run an application, to separate tools, libraries, or runtimes needed for working with a codebase, and to...

Turbo Streaming AKA Broadcasting over Web Socket explained
This episode is complementary to the previous one ( • 🔥 Hotwire, Turbo Drive, Frames and St... )We discuss and show examples Turbo Streaming AKA Broadcasting. At the end we point one important aspect that you must be aware of in multi-user/mult...



Persistent Redis Connections in Sidekiq with Async::Redis: A Deep Dive. - DEV Community
Async is a composable asynchronous I/O framework for Ruby. It allows you to do things concurrently using Fibers. Since 3.0, Ruby has a fiber scheduler and Ruby core supports it. This means you can have non-blocking I/O without much effort, for exa...

Event sourcing for smooth brains: building a basic event-driven system in Rails
Event sourcing is a jargon filled mess that is unapproachable to many developers, often using five dollar words like “aggregate root” and “projections” to describe basic concepts.While the high standards of “full event sourcing” might recommend bu...

The librdkafka Supply Chain Breakdown: rdkafka Darkest Hour
We all make mistakes, and fundamentally, the havoc caused by this incident was due to a flaw in the design of rdkafka-ruby. While the disappearance of librdkafka from GitHub was unexpected, this article aims to clarify and explain how rdkafka-ruby...

Add a “X is writing…” with Rails and Turbo | Rails Designer
Apps that rely heavily on text messaging (like Slack, Whatsapp and Telegram) often implement some kind of indication or status if the other party (in the chat room) is typing.This kind of UX might be useful for engagement or set expectations. Base...