Hi everyone, I’m Lewis from Money Forward, currently working as a Backend Engineer, focusing on reducing tech debt in our codebases. This year I got to attend RubyKaigi 2025 in Matsuyama along with other members from the Money Forward team. I’d like to share the highlights of my trip, including my favorite talks and experiences from the Money Forward booth.

Experiencing the culture of Ruby
You may feel that Fun is not a particularly exciting title for the blog but I chose it deliberately because fun is a core part of Ruby’s identity as a programming language. At RubyKaigi, you truly get to experience how deeply fun is ingrained in the community and culture.
Many of the talks shared stories of developers whose cool projects and contributions had come from having fun exploring an area they were passionate about. For example, the opening keynote followed @ima1zumi’s contributions to improving character encoding in Ruby:

I found this talk inspiring as it showed how her own interest in character encoding eventually led her down the path of becoming a core committer and improving Ruby for everyone! She also shared lots of interesting knowledge about how encoding works, which blew my mind.
Did you know about this?
"🧑🧑🧒🧒".chars
=> ["🧑", "", "🧑", "", "🧒", "", "🧒"]
ref: Ruby Taught Me About Under the Hood
There was also the segment Ruby Committers and the world, where the core Ruby team shared their opinions on various topics asked by the community. One thing that stood out to me was when features or changes were being discussed, developer happiness was always mentioned as a consideration. A certain change may bring about greater performance but it would restrict the creative freedom of Ruby, making it less fun to use. I think it is amazing that our community continues to uphold these values even after 30 years!
Trick
Another highlight for me, showcasing Ruby culture at its peak, was the Trick contest where developers compete to abuse the language and create the weirdest programs possible. The winners are immortalized with their submissions added to the core Ruby library, the ultimate trophy!
I won’t attempt to express how funny and strange these programs are but I highly recommend you take a look at them here. My favourite was a painting program that creates art from IRB’s syntax highlighting:
ruby entry.rb great-wave.txt | ruby color.rb

Now that may not seem too crazy, but the entry.rb
program which creates the art also contains its own art when you view the code with syntax coloring:
cat entry.rb | ruby color.rb

Keep in mind that keywords, literals and symbols may only be used in certain places where the artist wants color to appear so it is very impressive to me. I want to know how long it took to write…
Favorite Talks
At Money Forward, currently the focus on my work is modularizing our legacy systems so they are easier for us to change and build upon. I got to hear many talks related to this topic from a variety of different backgrounds so I’ll share my favorite which was Koichi Ito’s Rubocop: Modularity and AST Insights.
This talk gave a history on how developers have developed custom rules for Rubocop which involved relying on certain implementation details that were not intended to be used that way. It also dived into the struggles of the Rubocop team needing to maintain the Parser gem which powers Rubocop’s backend. After that, we got to learn about how Rubocop was reworked to solve this with modularity so they could easily adopt a modern parser instead.
It was very interesting for me to see the parallels in my own work despite their project being a static analyzer and ours being web services. In both, we are working towards a modular design to improve systems that are becoming harder and harder to change over time.
Aside from that, here are some other talks I found interesting:
- A side gig for RuboCop, the Bookworm code crawler
- A look into how Rubocop’s parsing engine is used at Meta to analyze complicated config maps.
- Inline RBS comments for seamless type checking with Sorbet
- Learn about the use of Sorbet at Shopify and moving to a simpler comment based system for typing.
- Modular Garbage Collectors in Ruby
- Presents how creating an interface for GC in Ruby allows us to try more modern GC strategies and allow developers to change GC based on their use case.
- Optimizing JRuby 10
- Showcases examples of recent optimizations and performance benchmarks, JRuby is so fast.
I’ll also give a special mention for best entrance to the closing keynote by Matz which saw him slowly arise from underneath the stage. The conference hall went wild!

You can find the full list of talks on the RubyKaigi website here.
Money Forward’s Booth
Lastly I want to mention my experience getting to work with the other Money Forward members in running the booth. I’ve attended a few conferences but this was my first time helping with a booth, I had a great time getting to know new faces from all over Japan and helping represent the company. It was also a good opportunity to meet Ruby developers from all kinds of backgrounds and introduce them to what we do.

My favorite part of our booth was the Ruby Method Chain Game. Participants needed to take a string and transform it into the string "RubyKaigi"
by writing Ruby code. However each person could only write a single method at a time, so the community needed to work together to solve the problem! Some people would try and introduce chaos which would need to be “bugfixed” by whoever came next. I think it was a great way to bring Money Forward’s “Let’s make it together” culture to RubyKaigi.

Let me share my favorite contribution which was hilarious but not very helpful:
"RubyKaigi".tr(*%W[i \u0130])
This code replaces each i
with a latin variant İ
. As evil as this may be, developers were able to overcome it as each day finished with a successful result!
Closing Thoughts
All in all, I had a great time in Matsuyama attending RubyKaigi. Getting to talk with Rubyists from all over the world as well as listening to the many interesting talks left me feeling inspired to go and write some code. I also enjoyed being able to meet new faces from Money Forward and get to know people from outside of my usual team. Next year’s RubyKaigi will be held in Hakodate, Hokkaido so let’s do it again soon!