RubyKaigi Day3 at Okinawa

2024-05-18 日本語 /posts/2024/2024-05-18-ruby-kaigi-day3-at-okinawa.jpg

RubyKaigi(at那覇)最終日!昨日は夜のイベントには参加せず、ホテルに直帰して体力回復に専念します(毎晩深夜まで飲める人の体力が羨ましい!)。

まずは恒例のコミッター談義。AとBという選択肢があって、それぞれのユースケースで、それぞれのメリット・デメリットがあって…という分岐が沢山あって、簡単には結論が出ない難しい問題を毎年着実に突破して来ているんだな…というメタなところまでしか理解できませんでしたが、やっぱり素敵なコミュニティだなと、みていて羨ましくなります。

Ruby Committers and the World Frozen string literal RBS in comment remove GVL? Async await defer for ruby https://rubyconf.org/ https://rubycentral.org/

ここから先は通常のセッション。YJITは手元の環境では有効化できませんでしたが、いずれビルドし直して試してみようかな。

YJIT Makes Rails 1.7x Faster

irb(main):001> RUBY_VERSION
=> "3.3.0"
irb(main):002> RubyVM::YJIT
(irb):2:in `<main>': uninitialized constant RubyVM::YJIT (NameError)

RubyVM::YJIT
      ^^^^^^
    from <internal:kernel>:187:in `loop'
    from /Users/lmuser/.rbenv/versions/3.3.0/lib/ruby/gems/3.3.0/gems/irb-1.13.1/exe/irb:9:in `<top (required)>'
    from /Users/lmuser/.rbenv/versions/3.3.0/bin/irb:25:in `load'
    from /Users/lmuser/.rbenv/versions/3.3.0/bin/irb:25:in `<main>'

$ ruby -v --yjit
ruby: warning: Ruby was built without YJIT support. You may need to install rustc to build Ruby with YJIT.
ruby 3.3.0 (2023-12-25 revision 5124f9ac75) [x86_64-linux]

HomebrewとERBはほぼ毎日お世話になってるプロダクト(ライブラリ)です。

Using "modern" Ruby to build a better, faster Homebrew Formula Cask Sorbet Hiperfine

ERB, ancient and future dRuby, Rinda, ERB

あとは RubyWasmKaigi(?!) のお話。

Ruby Mixology 101: adding shots of PHP, Elixir, and more https://ruby-next.github.io/#gist:9c36c59f311b70d208d40dbb70dd4e34

Using Ruby in the browser is wonderful.

最後のまつもとさんの基調講演は相変わらずの自虐ネタ(こんな普通のおじさんと写真撮って楽しいですか?!みたいなのとか)で沸かせつつ、この20年で実現して来たこととこれからのビジョンを語ってくれました。彼と(周辺のエコシステムも含めた)コミッターたちはやっぱり自分にとってヒーローです。

来年は松山だそうで、宮崎からだとどうやって行くんだろう?とか考えちゃいましたが、そもそもゆっくり休みをとって出掛けられるように色々整えておかないといけないですね。今は普通に参加するのがやっと、みたいな感じですが、いつかはスポンサーにも名前を連ねられるくらいになりたいな!

追記(アフターパーティも終えて):

「写真撮ったり、このお酒美味しいね、とか言うのも良いんだけど、やっぱりテックの話をしましょう」みたいなことも仰ってました。AもBも良いんだけど、やっぱCじゃない?みたいな、寛容さの中にある軸というか核のようなものが言語仕様にも表出している気がして、そこがやっぱりRubyを好きになっちゃうとこなのかもしれません。FiberやRactor使ったことないので、使ってみよう。あと、帰りの飛行機で読んでみたPolished Ruby Programmingの中でも retry とか redo とかも使ったことないなと気がつきました。長年やってて色々知ってるようで、実はまだ知らないことだらけ。mruby,picorubyも面白そう。

https://mono-wireless.com/jp/products/twelite-uart/index.html