Benoit Daloze
eregon.bsky.social
Benoit Daloze
@eregon.bsky.social
Rubyist, Researcher at Oracle Labs, part of the @GraalVM team, TruffleRuby lead. Expressed opinions are my own.
Reposted by Benoit Daloze
I'm making another attempt to get a `deep_freeze` method added to Ruby. Core folks have rejected proposals for years, until Ractor came along and we got basically the same feature in `make_shareable`. But deep freezing should be its own feature.

bugs.ruby-lang.org/issues/21665
Feature #21665: Revisit Object#deep_freeze to support non-Ractor use cases - Ruby - Ruby Issue Tracking System
Redmine
bugs.ruby-lang.org
November 4, 2025 at 12:18 AM
Announcing ractor-shim, a new gem that reimplements Ractor on top of Thread & Queue: github.com/eregon/racto...

This gem provides the full Ruby 3.5 Ractor API (Ractor::Port, Ractor#{join,value,monitor}, etc) on TruffleRuby, JRuby, and CRuby 2.7 to 3.4.
GitHub - eregon/ractor-shim: A shim to define Ractor by using Thread, if not already defined
A shim to define Ractor by using Thread, if not already defined - eregon/ractor-shim
github.com
October 30, 2025 at 9:01 PM
pkl-lang.org migrated from a ANTLR parser to manual parser, result: twice as fast.
From Islon Scherer at the #GraalVM Community Summit
October 23, 2025 at 7:47 AM
Reposted by Benoit Daloze
I wrote about some of my thoughts on the lessons we can learn from the RubyGems situation and how we can move forward. blog.peterzhu.ca/open-source-...
Open Source is the Most Fragile and Most Resilient Ecosystem - Peter Zhu
Some of my thoughts on the lessons we can learn from the RubyGems situation and how we can move forward.
blog.peterzhu.ca
October 18, 2025 at 3:58 PM
Reposted by Benoit Daloze
Can We Know Whether a Profiler is Accurate?

Spoiler: yes we can! But it took us figuring out a way to work around the fundamental observer effect.

stefan-marr.de/2025/10/can-...

If you're at SPLASH, don't miss our talk at VMIL today and at OOPSLA on Saturday!
Can We Know Whether a Profiler is Accurate?
Measuring causes profiles to change, so is there a way to work around it and know whether a profile is accurate?
stefan-marr.de
October 15, 2025 at 12:41 AM
Reposted by Benoit Daloze
I tried to explain why I don't believe the recent accusations toward my former teammates, as well as how the Ruby and Rails Infra team at Shopify operates and why it can be trusted.

byroot.github.io/opensource/r...
Dear Rubyists: Shopify Isn’t Your Enemy
I’ve been meaning to write a post about my perspective on Open Source and corporate entities. I already got the rough outline of it; however, I’m suffering from writer’s block, but more importantly, t...
byroot.github.io
October 9, 2025 at 2:15 PM
Reposted by Benoit Daloze
Every few months now I re-read this "Who Goes Nazi?" piece from 1941 and am blown away by how it captures the people we are dealing with 80 years later.

harpers.org/archive/1941...
Who Goes Nazi?, by Dorothy Thompson
harpers.org
October 1, 2025 at 11:59 PM
Reposted by Benoit Daloze
First Day: A New Chapter at the JKU

It's Wednesday. Is this important? It's my first day in a new position. So, perhaps the real question is: what's going to be important to me from now on?

stefan-marr.de/2025/10/firs...
First Day: A New Chapter at the JKU
New job and responsibilities: what's now important to me?
stefan-marr.de
October 1, 2025 at 6:45 AM
Reposted by Benoit Daloze
Having met with both sides on the current RubyCentral/RubyGems situation, here's my take:

- RubyCentral have managed this exceptionally poorly in many ways including removing literally the most active member of the RubyGems organisation by mistake who has declined to return
September 19, 2025 at 7:04 PM
Reposted by Benoit Daloze
Hey, #ruby folks! I've been one of the #RubyGems maintainers for the last decade.

Ruby Central has forcefully taken control of the RubyGems organization on GitHub, the `rubygems-update` and `bundler` gems on rubygems[.]org, and more.

You can read the details here: pup-e.com/goodbye-ruby...
RubyGems.org | your community gem host
rubygems.org
September 19, 2025 at 7:51 AM
Reposted by Benoit Daloze
Running native extensions in parallel is a huge performance boost. Running a large internal Rails application, we saw performance roughly double. Very workload dependent, of course, but all of the major DB adapters are implemented as native extensions.

We also added support for the blake3-rb gem.
September 17, 2025 at 4:32 PM
Reposted by Benoit Daloze
GraalVM 25 released today! 🎉

My favorites this release👇
GraalVM 25 is here, with lots of updates for native compilation, GraalPy, GraalJS, and WebAssembly.
Faster and better than ever!🐰🚀
Download: www.graalvm.org/downloads/
Release notes: www.graalvm.org/release-note...
September 16, 2025 at 6:44 PM
Reposted by Benoit Daloze
GraalVM 25 has a lot of great new features for native compilation:

✅ Better developer experience 👩‍💻
✅ Simplified migration 🚀
✅ Even faster and smaller executables with ML 🤖
✅ Enhanced security 🛡️
✅ New tooling 🛠️
Here are my favorite new @graalvm.org features:
September 17, 2025 at 1:09 PM
Reposted by Benoit Daloze
TruffleRuby 25.0 is released! 🚀🎉
It can now run native extensions in parallel, just like Ruby code already ran in parallel in Threads on TruffleRuby!
It also features many compatibility improvements and notably support for custom Digest algorithms.
github.com/oracle/truff...
Release TruffleRuby 25.0.0 · oracle/truffleruby
TruffleRuby is a high-performance implementation of the Ruby programming language. It aims to be fully compatible with the standard implementation of Ruby, MRI. More information is available at htt...
github.com
September 17, 2025 at 3:18 PM
Reposted by Benoit Daloze
We have started the tedious and destined-to-always-lag-behind work of documenting #curl's view of the OpenSSL forks: https://github.com/curl/curl/wiki/OpenSSL-forks
OpenSSL forks
A command line tool and library for transferring data with URL syntax, supporting DICT, FILE, FTP, FTPS, GOPHER, GOPHERS, HTTP, HTTPS, IMAP, IMAPS, LDAP, LDAPS, MQTT, POP3, POP3S, RTMP, RTMPS, RTSP...
github.com
August 28, 2025 at 9:38 AM
Fighting LLM-generated slop with LLM, mmh I wonder how well that works: github.com/github/ai-mo...
August 23, 2025 at 8:27 PM
Reposted by Benoit Daloze
Here we go! Had a great time learning about this with @tenderlove.dev

bernsteinbear.com/blog/linear-...
August 13, 2025 at 3:29 AM
Reposted by Benoit Daloze
How we made JSON.stringify more than twice as fast | Discussion
How we made JSON.stringify more than twice as fast · V8
This post explains our recent effort to improve JSON.stringify performance
v8.dev
August 4, 2025 at 9:20 PM
Reposted by Benoit Daloze
How we made JSON.stringify more than twice as fast https://lobste.rs/s/ueocpa ##browsers ##performance
How we made JSON.stringify more than twice as fast
v8.dev
August 4, 2025 at 2:20 PM
Reposted by Benoit Daloze
Beyond performance work, I deprecated a bunch of APis in the JSON gem, and added others, so I figured it would be a good occasion to talk about API design: byroot.github.io/ruby/json/20...
What’s wrong with the JSON gem API?
As I mentioned at the start of my Optimizing Ruby’s JSON series of posts, performance isn’t why I candidated to be the new gem’s maintainer.
byroot.github.io
August 2, 2025 at 4:19 PM
Reposted by Benoit Daloze
This is excellent. In three minutes she explains how democracies become dictatorships. It's happened so many times, yet in each country, most people said, 'it can't happen here'
#StaceyAbrams explains how to achieve an #autocracy in 10 steps.

We're at step 9.

The military is in our streets. Is our democracy worth the effort to defend it?
July 22, 2025 at 8:07 PM
Reposted by Benoit Daloze
We ran a randomized controlled trial to see how much AI coding tools speed up experienced open-source developers.

The results surprised us: Developers thought they were 20% faster with AI tools, but they were actually 19% slower when they had access to AI than when they didn't.
July 10, 2025 at 7:47 PM
Reposted by Benoit Daloze
It's happened: the trimodal nature of software engineering compensation made it to the Economist!

Disappointingly though, they did not link to the original article (they never do AFAIK), they redraw the image, and do not call it trimodal. Feels like "ripping off" my research, not gonna lie.
July 2, 2025 at 9:53 AM