Lambdaカクテル

京都在住Webエンジニアの日記です

Invite link for Scalaわいわいランド

普段はPerlとScalaを書いていますが #rubykaigi 2022に参加してきました / 吸えそうな知見

普段はPerlとScalaを書いて暮らしていて、Rubyを書くのはcapistranoを使うとき・・・という位のWebアプリケーションエンジニア、 id:Windymelt です。株式会社はてなで、はてなブックマークを開発しています。

普段は、関数型テクニックの話をよく記事に書いています。ちょっと見てやってください。

blog.3qe.us

今回、近所の言語の動向も見てみたい!! && 知人エンジニアにRubyistが多い && 今回の開催地は比較的近所 というわけで参加することにしました(三重県津市での開催でした)。

撮影した日はちょっとどんよりしていましたが、二日目以降はよく晴れました

ちなみに自分は後輩を引率したりはしておらず、単独で突入してきました。アーバンライナー(大阪?から出てる特急)便利すぎる。でもさぁ、近鉄に特急料金が必要なのは知らなかったから車内で特急券買う羽目になったぜ!!!

自分の暮らしに生かせそうだなと思った知見

rubykaigi.smarthr.co.jp

自分はこのスケジュールでセッションを見ました。

Brotli圧縮

Google主導で開発されているデータ圧縮フォーマットとしてBrotliというのがあるということを知りました。CloudFrontでもキャッシュポリシーによって適用可能みたい。既存の辞書を使って圧縮するというのが特徴で、特定の構文的パターンが頻出する大きなJSやHTML等でとくに効果を発揮するようです。

Concurrent / Parallel

Concurrent/Parallelまわりの機構の開発が活発な印象を受けました。軽量スレッドモデルは様々な言語にどんどん導入されており、有名所だとGoのGoroutine、Scalaだと Cats Effect といったライブラリでも導入されており、大量のコアを効率良く使って処理をこなしていくというニーズによって今後もしばらくは活発に開発されそうです。

Chrome DevTools Protocol (CDP)

Google Chromeのinspectorを使ってRubyのデバッグをする(!!)という面白い発表があり、「あれってプロトコルさえ書けば自由に使えるんだ」と驚きつつも好奇心が芽生えました。テンプレートエンジンのデバッグに使えないだろうか?と思いました。

TRICK2022

日本のRuby界隈(?)では、面白いコードゴルフ的概念であるTRICKという企画が文化になっているようです。知見ではないけど良い文化だよね。 ちなみに後続の発表でWASMを使ってTRICKで使ったQuineをブラウザで動かしたりしていて天丼感がありつつもちゃんと動いていたので驚きました(エスケープシーケンスも豪快に出力されていましたが)。

静的型検査プラグイン

Rubyには静的型チェッカのプラグイン的なのがあってよしなにやってくれるらしいことを知りました。Perlにも欲しいよ〜

エンコーディング / シリアライズまわり意外と時間取られる

文字コードまわりのRuby内部の話を拝聴して、エンコーディングやシリアライズまわりで時間を取られることって多いんだなとわかりました。我々もうまく回避したい。そして、ボトルネックをまずプロファイリングで発見してから改善して速度を上げていくという実験スタイルが、基本に忠実で良いなと思いました。

JIT Compiler

RubyKaigiってけっこう言語内部の実装の話が多いんですね。YJITというShopifyさんが開発してRubyにマージされたJITコンパイラが、最適化を駆使して高速化を達成しているらしいのですが、それがいかに行われているかというお話があって面白かったです。 例えば、コード中に出現する変数はたいていはモノモーフィックで、つまり実行中に値が変わることはあれど型も変化することはほぼないというデータを元に、一度呼び出されたタイミングで型を記憶して最適化されたコードを吐き出しておく・・・といった話が満載でした。すごい。

WASM

RubyをがんばってWASM化している人がいてすごすぎると思った。そしてWASMはWASIというインターフェイスのおかげで案外なんでもできるようになっているようだ、ということがわかってきた。

RubyKaigi良かった

  • 会場が津駅からちょっと離れていたけど、スポンサー企業様がバスを出してくれた
  • お弁当がおいしかった
    • 肉の弁当は大人気ですぐ払底していました
  • どのトークを聴くかを保存して確認できるスケジュールツールが提供されててめちゃくちゃ便利だった
  • 打ち上げ的な感じでMusic Loungeが提供されてすごく良かった
  • 久しぶりにワイワイ感を味わうことができた

スタッフのみなさま、お疲れ && ありがとう ございました。

津info

ちょうど宿泊したホテルの目の前にバス停があって、たいていのバスはそこに止まる感じだったので便利でした。津駅にもすぐ行けて便利でした。

www.rio-hotels.co.jp

ホテル津センターパレスという所に宿泊しました。小ぶりでしたが、大浴場とサウナと露天風呂があってめちゃ満足しました。脱衣所にアイス冷蔵庫が置いてあって、一人一つまでもらって良いみたい。

写真のコーナー

𝙎𝙐𝙋𝙀𝙍 𝘾𝙊𝙈𝙋𝙐𝙏𝙀𝙍

肉たち。三重の牛たちに感謝・・・

炬燵さん夕食に混ぜてくださりありがとうございました。そしてエモリハウスの方々、Classiの方々ありがとうございました・・・

会場の花壇に咲いている命にも感謝・・・

写真撮影を支えたX-E4。めちゃピンボケしてるけど感謝・・・

技術以外情報

物理開催は良いぞ

インターネットでしか見たことなかったパーソンと遭遇できて良かった。こういう機会があるから物理カンファレンス開催は良いよなぁといったことを考えていました。

ホテルにRubyistがいる

みんなこの話してる気がするけれど、果たして自分が宿泊したホテルにもRubyKaigiのTシャツを着た人がうろうろしていて良かった。

カンファレンステクニクスを完全に忘れている

コロナであまりにもカンファレンスに行かなくなってしまった結果、名刺を持っていくとか、QRコードを用意していくとか自分のアイコンのグッズを身に付けておくといった、物理開催のカンファレンスで使えるテクニックを全部忘れていたのが面白かった(笑い事ではない)。次回こういう機会があったらちゃんとやっていきたい。

あと、最終日の翌日までホテル取っておいたほうが良いことがわかってきた(だいたい打ち上げがあって、遅くなるので)。当日帰るとかなり大変だし、翌日めちゃくちゃくたびれて美容室の予約をすっぽかして電話がかかってきたりするので、気をつけたい。

悲しいなあ

お土産とかもちゃんと選びたいし、ホテルに宿泊すると地域で使えるクーポンがゲットできたりするので、スケジュールはゆったりしておいたほうがよいです。

オチ

どうして・・・

★記事をRTしてもらえると喜びます
Webアプリケーション開発関連の記事を投稿しています.読者になってみませんか?