EuRuKo 2026 - Day 1
September 17, 2026
Similar to my Euruko conference visit last year, this conference had again a couple of "firsts" (however different ones) for me:
- This was my first visit to the city of Brno - big recommendation from my end!
- The first conference I visited completely on my own time and budget. My job has nothing to do with Ruby (and little with programming for that matter) but I enjoyed last year's Euruko so much that I decided to take this trip since it was close to my home town and easily reachable by train.

The first day was quite packed and featured many interesting sessions that I looked forward to.

Opening

As always (as I had learned last year) the conference was officially opened by sounding the "Euruko Gong".
Keynote
In good old Euruko tradition (as I had learned last year) - the famous "Matz" opened the conference with his keynote.

He spoke about how AI has changed his life and daily activities forever and the question he asked himself what (if any?) role Ruby ("a language for humans") still had in this world.
However, an interesting AI coding experiment - implementing a simplified version of Git in different languages - revealed that Ruby is not only good for humans but also for AI coding agents. The Ruby implementation turned out to be cheapest and fastest.
Matz then spoke about his new project Spinel - a Ruby
AOT (ahead of time compiler) he had developed (and still is) with the help of AI.
Spinel is really fast but does not allow for metaprogramming or dynamic constructs like
eval hence it would not support e.g. Rails. Interestingly, in combination with another
Ruby open source project - the Roundhouse transpiler - this was made possible and allowed
for significant speedups and memory improvements in Rails applications.
Stacking Boxes

"What’s Ruby Box?" could have been the title of this session. I asked myself the same question initially having not heard about this feature yet.
Apparently, it's a new (still experimental) feature in Ruby 4.0 that allows developers to load apps or libraries into process in isolation.
As someone with a history in .NET this gave me a bit of "AppDomain PTSD" but the demos and code in the session (e.g. monkey patches for specific versions of libraries, mocking and tests, blue/green deployments) looked quite interesting and easy to use.
From C to Ruby
Having read and thoroughly enjoyed Fabien Sanglard's Doom "Black Book" and as a general avid retro-gaming nerd, this session was right up my alley.

Chris Hasinski presented his Ruby port of Chocolate Doom and the challenges he had experienced along this way.
Interestingly, the talk also focussed a lot on the topic of benchmarking and the role this doom port played in there. Different Ruby implementations (along with different JITs) had been tested with this Doom port and TruffleRuby turned out to be the big winner here.
If you want to try it out and give it a look, it's just a
gem install doom away.
Running Native Extensions and Ruby Code in Parallel Threads

Benoit Daloze from DataDog one of the maintainers of TruffleRuby gave this interesting section on performance and parallelism. Working with the DataDog Ruby Profiler he had excellent insight into this topic and showed his research and improvements on threading in TruffleRuby.
This session was also the first time for me to hear and learn about Ractor - the actor-model implementation in Ruby.
JRuby Past, Present, and Future

Charles Oliver Nutter the actual mastermind and driver behind JRuby was looking back on the last 20 years of this project of his. I always enjoy these kind of nostalgic and retrospective-style sessions and this one did not disappoint. It was also interesting to learn how relevant JRuby actually still is for enterprise customers and how much work and effort he is still putting into this project to make sure it keeps improving.
What lies beneath your Ruby app

Ivo Anjo (from DataDog) had done a fantastic session on profiling Ruby applications at last year's Euruko. It had even been my favorite session, if I remember correctly.
For this talk he had chosen a slightly lighter topic that he summarized as
"What is the ruby command after all?".
From high-level (text input) to low-level (opcodes), he explained how Ruby code gets parsed, interpreted, and - depending on the circumstances - even JITed.
It was a solid session explaining rather basic concepts that - at least IMHO - Ruby developers should actually know anyway. But I guess in times like this where AI makes throwing together all kinds of applications really easy, passing on such knowledge is more important than ever.
Yoga / Stretching

This was the second yoga and stretching break of the day. I had ignored the first one that day and had done so at last year's Euruko as well.
This time I decided to give it a try and guess what: after a whole day of sitting it actually feels good to move and stretch your body. Who would have thought 🙈.
How to Ship 1000+ Commits to a Rails monolith daily

Hana Harencarova from GitHub gave the closing keynote of the first day.
She started the session by giving some interesting insights into GitHub's CI process in the form of numbers (e.g. number of CI checks, lowest/highest number of commits per day, ...).
Then she spoke about the practices established at GitHub around CI, deployment and feature shipment. For example:
- Making changes easy to review (small PRs, good descriptions, screenshots, …).
- Heavy usage of feature flags.
- Use of "Review Labs", which are branch deployments of new features working on real data.
- CI Checks
- Different deploy targets (canary, staff cloud, 2%, 5%, …) combined with monitoring that allows for automated roll-back on e.g.
5xxissues. - Observability (DataDog, Sentry)
Lightning Talks

People from the audience got a chance there to speak for 4-5 minutes about a topic of their choosing. I recognized a couple of speakers from last year's Euruko and it was mostly pitches of personal projects - but I guess that was probably expected. I watched most of these talks but left a bit early after this dense, but exciting day.