Creează un cont pentru a te abona la acest blog și a-i urmări articolele pe pagina Lectură.
-
Taking Flight
The plan in Keep the Gems ended with "Falcon and Ractors last, once each request is cheap enough that the server model is what matters."
-
Whole Routes in a Box
Yesterday's post ended with Roundhouse's futamura target at 1.00× Rails on the Lobsters benchmark, and a ceiling for it of 2.5–3×.
-
What a JIT Can't Know
In 2023 Shopify's Rails at Scale team turned Lobsters into a Rails benchmark for YJIT: a real application, real routes, a fake-data database, SQLite in memory, so that work on the JIT would be measured against Rails as people write it rather than against a
-
Many Keepers
DHH opened Rails World by saying what he believes, plainly, and betting his company on it.
-
Keep the Gems
Tobi Lütke ported ONCE Campfire to Ruby 4 without Rails: Falcon serving from worker Ractors, plain modules over SQLite, and message passing between Ractors instead of Redis.
-
Resolvers Have Types Too
In The Browser Half I looked at the part of a Hotwire app where nothing checks anything: the strings that wire Stimulus controllers to each other and to Ruby.
-
Generated Rails
Hifumi generates a complete Rails application from a natural-language prompt.
-
The Browser Half
In As If I compared two ways of making Campfire fast: compiling the Rails app with Roundhouse, and porting it by hand to Rust, as 37signals did with once-campfire-rust.
-
Rust is the answer to the wrong question
The below was 100% written by a human.
-
Nokogiri, Loofah and Crass, Compiled
I built these for Roundhouse, which compiles Rails applications, and Campfire needs all three: Action Text sanitizes every message through rails-html-sanitizer, which is built on Loofah, which is built on Nokogiri and Crass.
-
As If
Yesterday, in Partly in the Right, I asked where the information comes from when an agent produces a result, and what checks it.
-
Partly in the Right
I'm speaking at Deccan Queen on Rails in Pune, October 8–11.
-
Pencils Down, Notation Up
I watched the opening keynote at Rails World 2026 expecting a talk on "Shaping the Future of Ruby on Rails."
-
Campfire, Three Rubies
Three days ago I ran the five-endpoint blog fixture through a 2×3 — stock Rails and Roundhouse's emitted Ruby, each on CRuby+YJIT, JRuby and TruffleRuby — and the result inverted June's: Graal rewarded stock Rails 3.4× and the emit only 1.8×, because a ru…
-
Campfire, One Short
For anyone arriving cold: Roundhouse transpiles Rails applications to other languages; Campfire is Basecamp's MIT-licensed chat app and the one I use to find out what that takes; and Spinel is Matz's ahead-of-time Ruby compiler, so the thing that comes out
-
Two JITs, Opposite Signs
Three months ago I put the same small Rails application through a 2×2: stock Rails and Roundhouse's emitted Ruby, each on CRuby+YJIT and on JRuby.
-
Roundhouse Released
Five months ago, yesterday: Initial commit: typed IR, Ruby round-trip, Rust struct emit.
-
Spinel at Your Fingertips
For anyone arriving cold: Spinel is Matz's ahead-of-time Ruby compiler.
-
Terminals That Outlive the Laptop
This is a work in progress.
-
Campfire, Dockerized
For anyone arriving here cold: Roundhouse transpiles Rails applications to other languages, and Campfire — Basecamp's MIT-licensed chat app — is the one I have been using to find out what that takes when the app pushes as well as responds.
-
Campfire, Buffered
Two days ago I published a fragment cache and a sentence I was pleased with: one of our processes beats their eight.
-
Campfire, Cached
Two days ago I published a benchmark page whose headline was that Rails wins, and ended the post by naming what would change it: The six-times gap is a fragment cache, and that is the next real piece of work: Campfire's own cached: true partials, served f…
-
Campfire, Measured
Four days ago Campfire chatted, and I wrote that the sockets would get measured "when the measurement can't quietly lie."
-
The Hidden 4GL
Deccan Queen on Rails is October 8–11 in Pune, and I've been asked what I'm bringing.
-
Continue the Argument
The recording of There Is No Server is up.
-
Campfire Chats
Four days ago Campfire compiled, linked, and booted, and I called it a floor.
-
Campfire Boots
Three days ago I wrote that when Campfire builds — "and it will build, then break, then build again".
-
Campfire on Spinel
Roundhouse now has four applications in flight.
-
Standing Behind the Numbers
Six days ago I published a ledger that didn't flatter: the compiled Lobsters served ten of twenty-six routes, thirty-nine of 354 of its own tests passed, and the benchmark page opened with a banner declining to stand behind its own timings.
-
What Happens After You IPO?
Go look at rubyonrails.org right now.
-
Rails on Roda
Two days ago I ended a post deliberately in mid-air: the Roda spike's results were sitting in front of Jeremy Evans, and whether it lived, died, or got tweaked was his call to make, not mine.
-
You Can't Rewrite Your Way Out of Big-O
Spinel is Matz's ahead-of-time Ruby-to-C compiler, and this month it acquired an unusual asset: a 40,000-line application it could not compile.
-
Roda on Spinel
At RubyConf on Thursday I argued that there is no server — that Rails is a declarative spec, the compiler is the query planner, and the deployment target is the execution plan.
-
There Is No Server
At noon today, Pacific time, I'll open my RubyConf talk on the Main Stage in Las Vegas by asking a few hundred people to take out their phones.
-
Three Compilers, One Concern Each
In the talk, the tenth rung of the ladder gets a single line and a "hold that thought": typed Ruby ─▶ Spinel ─▶ C ─▶ machine code That rung is three compilers standing on each other's shoulders: Roundhouse turns a Rails application into the subset…
-
Dynamic Dispatch
send is the method that isn't supposed to compile.
-
A Bigger Fixture
Every performance number in this series so far has come from a single application: the quintessential Rails blog demo, five endpoints, modernized with Turbo and Tailwind.
-
Mastodon on Spinel
The posts in this series so far have described machinery — an oracle, an IDE, a flow analyzer — and gestured at a destination.
-
Flow Analysis for Rails
Live Types for Rails made an observation: the type inference Roundhouse builds because transpilation demands it — what class is @status, what does this scope return, can this be nil — is worth having on its own.