うなすけとあれこれ

2022年09月15日

RubyKaigi 2022 参加記

発表について

Do Pure Ruby Dream of Encrypted Binary Protocol?

https://slide.rabbit-shocker.org/authors/unasuke/rubykaigi-2022/ (みんなRabbit使おう!)

昨年の発表から方針を変更し、実装をしていく中で、Rubyだとつらいな~と感じた事について話しました。発表内で、「Ractorをやめた」という表現をしましたが、実際にはRactorに依存しない部分もそれなにり書き直しており、そのためコードの外部から見た振る舞いは、昨年からは微々たる進展しかありませんでした。

発表後、バイナリデータをRubyでそのまま扱うことについて、Samuel氏から IO::Buffer の存在について教えていただきました。

@yu_suke1994 have you looked at IO::Buffer?

— Samuel Williams (@ioquatix) September 9, 2022

これはバイナリを扱うことについては既存のString、Integerよりも適していそうではあるものの、その内容に対して演算したい場合にまだまだ機能が不足しているのではないかと感じました。また、発表で用いたString、Integerでの操作を行うベンチマークを IO::Buffer も対象にして実行してみたところ、3つの中では最も遅いという結果になりました。

https://github.com/unasuke/rubykaigi-2022/commit/1e4470d55217d6c8 (これ、experimentalの警告を消す段階で hello_world_upcase_io_buffer のWarming up、Calculatingの結果が消えていますね……ミスです……)

この結果についても会場でSamuel氏と話したところ、演算する過程で都合上 set_valueget_value をしている部分があるのですが、そこでオブジェクトの正当性のチェック処理が走っている1のが原因ではないか、ということを教えていただきました。

若干の燃え尽きだった

ところで、言ってしまえば前回のRubyKaigiからこれまでの間に、もっと多くのコードが書けたはずでした。しかし、昨年の発表の直後に開催されたKaigi on Rails 2021の運営、さらにその後に控えていたCloudNative Days Tokyo 2021での発表と、立て続けにイベントがあったことで若干燃え尽きてしまいました。しばらくプライベートの時間でQUIC関連のコードを書く気持ちになれない期間が続いていました。そもそも趣味プロジェクトだし、差し迫った締め切りというものも存在しないのも大きな要因でしょう。

締め切りを作っていく

なので今後は、もうちょっと自分を追い込んでいこうかなと思っています2。具体的には、Rubyアソシエーション開発助成金2022に応募しました3。50万円という助成金よりは、成果発表をしなければいけないことによって強制的に手を動かす動機ができること、もしかしたらメンターが付くかもしれないということのほうが、今の僕には魅力に感じました。採択されなかった場合も、別の形で締切を生み出す案がうっすらとあるので、ともかくやっていこうと思います。

こっそりお手伝い

そして、実は今回のRubyKaigi 2022において、会場のインターネット設営の準備をお手伝いしていました4

荷物整理終わった #rubykaigiNOC #rubykaigi pic.twitter.com/j1noLwgUHM

— そらは (@sora_h) September 11, 2022

2018年、2019年とhelperとしてやっていたのが一旦なくなったことで、3年ぶりにケーブルを8の字巻きしたり、ケーブルを這わせに会場を駆け回ったりするのはとても懐かしかったです。 そういう訳で、一般参加者T、登壇者T、スタッフTの三種5を手にすることができました。in-personの嬉しいところは、ちゃんとそれぞれの属性に応じたTシャツを手に入れられることにもあると感じました。

Tシャツ3枚

Ruby Music Mixin

本編終了後には、ピクシブさんの主催するアフターパーティーでDJをさせていただけました。これがめちゃくちゃ楽しかったです。

pixiv Ruby Music Mixin

ちなみにこれを聞いたのがこのタイミングだったのですが、クラブイベントの参加も初めてだったようで、それも楽しかったとおっしゃっていただけたのもとても嬉しかったです。

「初めてでしたけど楽しかったです!」って言ってもらえてめっっちゃ嬉しかったよね #rubykaigi

— うなすけ (@yu_suke1994) September 10, 2022

Next Kaigi

来年のRubyKaigiは松本リベンジということですが、実は7月になぜか松本に行っていました。このときは車で行ったので、来年も車で行こうかな?と思ったりしています。

pic.twitter.com/rt2Q750S1B

— うなすけ (@yu_suke1994) July 1, 2022

でも実はそれより先にKaigi on Railsがあるので、まずはそれに向けてがんばっていきます。


  1. https://github.com/ruby/ruby/blob/v3_1_2/io_buffer.c#L1324 

  2. もちろん壊れない程度に 

  3. 三重で何人かにレビューをしていただきました 

  4. helper登録はしていないのでスタッフ一覧にはいません 載りました (2022-09-17) 

  5. あと一種類ですね、ですけど…… 

2022年09月15日