MENU

WHAT IS Fusic DOING?Fusicってなんしようと?

RubyKaigi2022が3年ぶりにオフライン開催となったので参加してきた! #藤澤、山路(直)レポ

2022.10.25

イベントレポート

2022年9月8日(木)〜 10日(金)の期間に

プログラミング言語「Ruby」の大規模カンファレンスである「RubyKaigi2022」が

三重県津市で開催されました!

今回、Fusicからは3名のメンバーが参加してきました!


参加メンバー

技術開発第二部門

- 部門長/プリンシパルエンジニア 山本 光彦

- エンジニア 藤澤 亮平

- エンジニア 山路 直人


充実したコンテンツでの多くの学びやRubyを通した様々な人との出会い、

そして美味しいご当地飯など(笑)、大変楽しんだようです!

当記事ではRubyKaigiの雰囲気についてレポートします。

技術的な話は、当社のTech Blogに掲載しますのでそちらもお楽しみに!


それでは、レポートスタート!

================================================


こんにちは。藤澤です。


今回は、当社がゴールドスポンサーとして協賛しているRubyKaigi2022に

山本、藤澤、山路(直)の3人で参加してまいりました!

RubyKaigiのオフライン開催はなんと3年ぶり!

偶然にも、最後のオフライン開催は当社オフィスがある福岡での開催だったので、

参加者の中には福岡の事をよくご存知の方も多く、話題には尽きないといった感じでした。


わたし自身、RubyKaigiに参加するのは初めてでした。

全てのセッションがとても有意義でしたが、

その中でも特に印象に残ったセッションについて触れていこうと思います。

(登壇者のみなさま、お疲れさまでした!)



前日、前入り

初日のスタートが午前10:50という事もあり、

当日出発だとスタートに間に合わないため、前泊することに。


津駅到着!!




三重県には人生で初めて足を運んだこともありワクワクしておりました!
この日はラーメンを食べました。美味しかった、、




1日目(2022年9月8日)


印象に残ったセッション(1日目AM)


- Ruby meets WebAssembly

1日目午前の最初のセッションはRuby meets WebAssemblyというセッションでした。

Ruby3.2 からWebAssembly (WASM)をサポートするということで、
どういったケースで使用するのか、どのように実現されているのかといった話を聞くことができました。
後半のレイヤーの低い話にはまだまだついていけない部分があったので、
これからもっと精進する必要がありそうだと感じました。
聞いていてRubyの将来がワクワクするセッションでした!

セッション前の会場の様子



お昼御飯

お昼は、お弁当をいただきました。
掛け紙にRubyKaigiロゴが記載されているお弁当がとても新鮮でしたので、パシャリ!
三重県の名産、松阪牛もとても美味しかったです!




印象に残ったセッション(1日目PM)

- Making *MaNy* threads on Ruby

Rubyで大量のスレッドを扱う事ができるようにしようぜ!といったプロジェクトの話です。
GolangやErlangなどのように M:N Threads を実現していく試みが行われているようです。
Rubyのスレッドにおける過去の仕様から未来の構造まで知ることができました。
実際に実現したら、Rubyでマシンのリソースを最大限利用できる未来がくるのかも?
リリースされるのが待ち遠しくなっている今日この頃です!

夜ご飯

セッションが終了した後は、参加者の方々と一緒に夜ご飯を食べました!
海鮮がとても美味しかったです!




2日目(2022年9月9日)


印象に残ったセッション(2日目AM)

- Make RuboCop super fast

普段業務で使用するRuboCop。
RuboCopコマンドが大幅に改善されることやなぜ改善できたのかという話を聞くことができました。
特に印象的だったのは、RuboCop 1.31 から導入されたServer Optionです。
RuboCopをデーモナイズすることで1からプロセスを起動して処理を実行するのではなく、
プロセスを常駐させることで、これまでの850倍の速度改善が行われたという内容が印象的でした。

これはすぐに業務でも生かされるなぁと感じました!
使用する機会があれば、実際に試してみようと思います。


お昼御飯

2日目は、カレーをいただきました。
私にとってのカレー弁当史上、一番美味しかった!
RubyKaigi2022は、お昼御飯のバラエティがとても豊かで毎日のお昼ご飯が楽しみでした(笑)




印象に残ったセッション(2日目PM)

- Packet analysis with mruby on Wireshark - dRuby as example

業務やプライベートでお世話になっているWireshark。
未対応のプロトコルのパケットをキャプチャしたことがなかったため
ディセクターという概念を私は知らなかったのですが、
未対応のプロトコルのキャプチャをしたい場合は、ディセクターというものを自作する必要があるそうです。
dRubyのパケットをキャプチャするためのディセクターを自作しやすくするため
Wireshark拡張を作成したという内容でした。

普段業務では、Ruby on Rails としてのRubyを書く事が多いため
mRubyやdRubyについては触ったことがなかったのですが
公開されているスライドを参考にしながら
ハンズオン感覚でやってみたいなぁと感じました。

Rubyの実行速度は向上しているにも関わらず、
Rubyアプリケーションの速度はあまり変化がないという現状から
Rubyが本当に改善されているのか疑問視されていることに向けたセッションでした。

このセッションでは、Rubyの速度が本当に改善されていることを、
Rubyのランタイムを多く使用しているFluentdの動作速度によって確認しました。
同時にRuby自体の速度がRubyアプリケーションの速度に対して影響が小さいのは、
DBとの接続など別の要因が多いためだという説明もされていました。

結果的に実際Rubyの速度が大幅に改善されていることは証明されましたが、
他の言語(PythonやPerlなど)と比較すると遅く、改善が求められているという言及もありました。

わたしたちのようなRubyアプリケーションを作成するエンジニアの
裏の努力を垣間見ることができる良い機会だと感じました。


晩ご飯

この日は、様々な会社の若手の方々とご飯を食べる会があったので、
参加者の方々とご飯を食べに行きました!
三重県の日本酒はとても美味しかったです……!





3日目(2022年9月10日)


印象に残ったセッション(3日目AM)

- error_highlight: user-friendly error diagnostics

これまでのエラーハイライトの問題点を挙げつつ、
Ruby3.2 からどうのようにしてエラーハイライトが改善されたかについてや
改善する上で難しかった内容について触れられていました。

Ruby3.2 では、ArgumentErrorやTypeErrorの例外発生時に
どこで例外が発生したのか下線が出るようになっています。
また、Ruby on Railsのエラーページにも対応してくれるようになります。

改善する上で、Exception#message の実装の変更を行う事を検討していたそうですが
影響範囲や非互換問題が存在するため
Exception#detailed_message というメソッドが新たに用意されたといった内容でした。

デバックがより楽になるこのメソッドも、
Ruby3.2 の目玉機能の1つではないでしょうか。


お昼御飯

3日目のお昼ご飯!
ようやく確保できた、松阪牛のサーロインステーキ丼。
とても美味しかった、、




印象に残ったセッション(3日目PM)

- The Better RuboCop World to enjoy Ruby

より良いRuboCopの設定におけるTipsが述べられたセッションでした。
ジュニアエンジニアは先輩の作成したRuboCopがいつでも正義だと信じ、
アプリケーションの状況に合わないRuboCopのルールに従って粗悪なコードを記述してしまいがちです。
それに対する解決法の一例として、確実に強制されるべきルールと
参考程度のルールのふたつのRuboCopを作成するという方法が挙げられました。

わたし自身、特例の場合、コメントアウトを使用して特定のコードのみルールを適用しないという方法を取ってきましたので、
上記の方法を適用してみたいと考えています!


感想


藤澤

今回、初めてRubyKaigiに参加しました。
コロナ前にも他のカンファレンスに参加したことがありましたが、
ここ2年はコロナによってオンライン参加のみでした。
そういったこともあって、今回のカンファレンスは、
コロナ前に参加していたオフラインカンファレンス以上の興奮と直接交流することの楽しさを実感しました。
このカンファレンスで受けたたくさんの刺激を
業務やプライベートの学習に生かしていきたいと考えています。
Rubyistの皆さん!次は長野の松本でお会いしましょう!!


山路(直)

私にとって、初のRubyKaigiに現地で参加できたことが何より嬉しいことでした。
現地に行くことによって、会場の空気感を感じることができ
また、セッション後の他社のエンジニアの方との関わりの中で、多くの刺激を受けることができました。
ありがとうございました。