Blogs
Tejas' Blog - Implementing account-specific rate limits in Rails
We can easily configure global rate limits, but how can we make them dynamic?
In a previous post I explored how to add account-specific IP whitelisting in a Rails/rack app. This post explores similar problem space, this time adding per-account ra...
How to Choose a Gem Wisely (To Prevent a Maintenance Nightmare)
Imagine this scenario: a developer added a pub/sub gem built on top of Sidekiq to handle background event broadcasting in your company’s Rails app. At the time, it was a huge win: instead of building a custom job orchestration system, they could d...
Beyond Enumerable: For Want of Better Windows | baweaver
Enumerable is probably one of, if not the most, powerful features of Ruby. It condenses several useful iteration patterns into more common language and allows us to focus on the problem at hand directly rather than by its component pieces like we ...
My Agent Skill for Test-Driven Development - SaturnCI - Continuous Integration for Ruby on Rails
AI agents tend to be, at least as of this writing, lousy at writing tests. The tests they write are often vague, cryptic, overcomplicated, hacky, disorganized, tautological, performative, perfunctory and downright pointless.
Unfortunately, I don'...
A new Register Allocator for ZJIT | Rails at Scale
Whenever a compiler generates machine code it needs to decide where to put values. Those values usually take the shape of a variable in your function, though the compiler can also compute intermediate values as well. When we need to perform a calc...
The Better Primary Key: A Guide to ULIDs for Rails Developers - DevBlog by Zil Norvilis
In a previous article, I talked about Snowflake IDs. They are great, but they require a bit of configuration because you need to manage “Worker IDs.”
If you want something simpler that gives you the same benefits - secure URLs and fast database s...
Bundlebun bundles Bun, and a tour of asset pipelines and JavaScript runtimes Rails has been through
This post introduces Bundlebun, a gem that packs Bun—all-in-one JavaScript runtime, package manager, and build tool—directly into your Gemfile. No Docker, no curl | sh, no Homebrew required, and everyone gets a JavaScript runtime after bundle inst...
AI-assisted engineers are burning out, is this fine?—Martian Chronicles, Evil Martians’ team blog
We’re more productive than ever. AI allows us to generate code at supersonic speeds, unfold entire modules in seconds, and ship thousands of lines of code. It’s easier to pick up tasks and generate value, even in unfamiliar codebases. But there’s ...