見出し画像

初めてリアルの技術カンファレンスに参加した(RubyKaigi2023参加レポ)

こんにちは!
普段はtoC向けWebサービスのフロント、バックエンド領域のアプリケーションエンジニアをしてる @hideki_okawa です。半年ほど前に現職に転職をしてから、バックエンドではRubyを書いています。

今回は、5月11日(木) ~ 13日(土) に長野県松本市で開催された RubyKaigi 2023 に参加してきたので参加レポを書いていこうと思います🏯

実は、リアルの技術カンファレンスに参加することが初めてで、初参加なりの感想など、これから参加していく方の参考になることが書けるんじゃないかと思います!

なお、リアルでの参加は2日目からなので、2日目からの感想がメインになります。

RubyKaigi参加への期待

RubyKaigiに参加するにあたって2つの期待をしていました。

  1. トップの話を聞くことで刺激を受ける

  2. 他社のRubyistと話をする

1 トップの話を聞くことで刺激を受ける

最初に「トップの話を聞くことで刺激を受ける」についてですが、当初は「業務で直接役立つ情報をインプットしたい」と考えていました。

しかし、YouTubeで RubyKaigi 2022 のセッションを閲覧したところ、「Rubyの〜を使って〜しました」のような事例紹介というよりも、Ruby言語の内部実装の話がメインとなっていることを知りました。

つまり、Rubyの話だけではなく、内部で使われているC言語や場合によってはアセンブラも解説に出てくるわけです。さらに、セッションは英語だったりもするので余計にハードルが上がります。

そんな感じで内容が非常にテクニカルなので、「業務で直接役立つ情報」を得ることは早々と諦めました。
そして、「能力の限界を越える話に食いつくことで能力の上限を引き延ばす」「新しい概念をインデックスとして頭の中に構築する」ことを意識しました。

この辺の話は、STORESのCTOである 藤村さん が語っていてとても勇気づけられました。

2 他社のRubyistと話をする

どうせなんで 他社のRubyistと話してみたい!!! と考えていました。
実際にどうなったかは後半の方で書いていきます。

印象に残ったセッション

ここでは、印象に残ったセッションをいくつか紹介できればと思います。理解が曖昧だったりするので、具体的な内容は後日公開される動画やスライドをご覧ください。

Implementing "++" operator, stepping into parse.y

Implementing "++" operator, stepping into parse.y - RubyKaigi 2023

登壇者: @coe401_ さん
スライド: Implementing "++" operator, stepping into parse.y - Speaker Deck

実は到着して最初に聴いたセッションがこのセッションでした。

このセッションでは、Rubyにおけるインクリメント("++")をどう実装するかということが語られました。

Rubyにインクリメントがない理由や、インクリメントを実装する方法として、"++" を Integer#succ に置き換える作戦や、"++" を "+1" に置き換える作戦などが提案されました。

解説の中ではparserの実装について丁寧な説明があり、最初に聴いたセッションとしてはよかったのではと思っています。(それでも理解が追いついていないのですが・・・😭)

また、@coe401_ さんのプレゼン能力がとても高く、初っ端の「Rubyにインクリメント演算子やデクリメント演算子がほしいと思ったことがありますか? 私はそこまでないです。」で爆笑したことが印象的ですw

Revisiting TypeProf - IDE support as a primary feature

Revisiting TypeProf - IDE support as a primary feature - RubyKaigi 2023

登壇者: @mametter さん

IDEサポートを含む TypeProf v2の開発についてです。静的型付け言語からプログラミングの世界に入った自分としては非常に気になる話でした。

まずは、Ruby 3.0.0-preview2  から静的型解析ツールとして開発されたTypeProfが現状あまり使われていないという話から始まりました。
理由としては、ユーザーの使いやすさの向上にあまり寄与していないからで、具体的には

  • 遅すぎる

  • IDEサポートが実用性に欠ける

などが理由であると分析していました。IDEサポートが実用性に欠けるのは、後付けでサポートをしてしまった背景もあるようです。

これらの課題を解決するために TypeProf v2 の開発が行われています。セッションでは実際に TypeProf v2 のデモが行われました。

デモの様子

デモでは型注釈をメソッドに記述し、メソッドにホバーしたら型情報が表示されたり、型が合わない場合にエラーになるデモが行われました。
速度面も問題なさそうで、使ってみたい!!!!と非常に期待度が高まりました。

他にも、処理を高速化するために採用しているデータフローグラフのアルゴリズムの説明やこれからの課題が述べられました。
2023年中には実用的なものとしてリリースするということで、今から楽しみです!!

(他のセッションについてもまた後で追記するかもです。)

Rubyistとの交流について

主に交流を行ったのは、企業出展のブースとビアバッシュです🍺🍺🍺

ブースとスタンプラリー

RubyKaigiではスポンサーをしている企業がブースを出展しており「中の人」と実際に話すことができました!!

スポンサーの中には、自分が実際に使っているサービスを運営している企業もあり、お話を伺うことができて非常に面白かったです。

↓ 実際の雰囲気(写真を撮り忘れたのでお借ります)

また、スタンプラリーも開催されており、スタンプを貰うことをきっかけに会話することができました。(ありがた過ぎる仕組み・・・!!)

学びとして、もらった名札で自分の所属を示すことで、会話が広がることがありました!
(運よく自分の所属している企業もRubyKaigiのスポンサーをしていたので、多くの方が知ってくれていました。)

ビアバッシュ🍺🍺🍺

今回はSmartHRさんのビアバッシュに参加させて頂きました!

SmartHRも普段に利用しているサービスで、Rubyやサービスについて、エンジニア組織についてもお話を伺うことができて面白かったです!

あとは、たまたまセッションで隣になった人と会話したりすることもありました!

期待を満たすことはできたか

最初に、大きく2つのことを期待していると書きました。

  1. トップの話を聞くことで刺激を受ける

  2. 他社のRubyistと話をする

これらの両方の期待を満たすことができたと思います!

「トップの話を聞くことで刺激を受ける」という点においては、どのセッションにおいても自分の理解出来る範囲を大きく超える概念がどんどん襲いかかってきて、能力の限界を引き上げてくれたように思います。(気持ち的に)

普段の業務で困難にぶつかっても「あの時に聞いた話よりは圧倒的に簡単だな」と思えるような気がしています。

次に、「他社のRubyistと話をする」という点においても、ブースやビアバッシュなどで話をすることも出来ましたし、Twitterアカウントも交換することができました!

今回は2日目からの参加で、RubyKaigiをフルで楽しみ切れたの感じはしませんでした。
来年こそは全日程参加したい!スポンサーとしてブース出展したい!という気持ちになりました!

感謝!!!!

最後に、運営チームの皆様、登壇者の皆様、ブース企業の皆様、関係者の皆様、本当にお疲れ様でした!ありがとうございました!!


この記事が気に入ったらサポートをしてみませんか?