ねこものがたり

いちにちいっぽ

東京Ruby会議12に参加しました

イベントページ

regional.rubykaigi.org

全体的な感想

東京(概念)で地域Ruby会議あるということで参加!会場が駅から30秒くらいの近さで大変よかったです。

チーフオーガナイザーの @osyoyu のことは、うっすらインターネット上では知っていて、とちぎRubyの勉強会 拡大版で「この人が @osyoyu さんか〜」と認知した記憶。

イベントは前夜祭も開催されることになったけど、私が参加できたのは本編だけでした。前夜祭のあった金曜日、めちゃくちゃ仕事を頑張っていたので偉かった。 前夜祭に参加できていたらクリエイティブコーディングのワークショップに参加したかったです😞あとは「LTで @makicamel の話がめちゃくちゃよかった」とX上でも見かけたし何人かと「前夜祭行けなかったんですよー」「@makicamel のLT聴けてないの?」と話になったくらいには良い評判を耳にしたので、直接聴けたらよかったな。

イベント当日、ブースも地域Ruby会議としてはかなり規模が大きかったし、「お年玉です」と言ってもらった1000円札チョコは嬉しかったし、公式がアンチボッチランチを企画しているのは素敵だなと思ったし、なんというか全体的にウェルカムな姿勢を感じてありがたくてほっこりしました。ただ、私はプリクラは撮れなかった。ランチ以上にぼっちにプリクラは厳しい。*1

本編トークの感想

Keynote by @jhawthorn

GitHubのスケーリングとアーキテクチャについての話(だったはず)。 GitHubほどの、巨大且つ長年動いているプロダクトで、中の人も剛腕な開発者揃いだと、平民の私には真似できないようなことをしているのではないかというイメージがあるのですが「GitHubに入社してコードを見てみたらふつうのRailsアプリで驚いた」と言っていたのが印象的でした。トークのうちDBのスケーリングの話が私個人の今の関心ごとでもあったので、後に「この機能のDBのアーキテクチャはどうなっているの?」という質問を直接したのですが「やっていることはよくある手法だよ」という回答をいただいて、「課題解決のために必要な真っ当なことを愚直にやってるってことなのかな」という感想を持ちました。 その時の会話はそれで終了したのですが、時間が経ってみて、「最初からスケーリングすることを見込んだアーキテクチャにしてたの?」ということを聞いてみたらよかったなと思っています。レプリケーションとかシャーディングとかって、現実の状況としてある程度データが膨らんできてそれによる問題が発生したらその解決策として取り入れるものというのが私の認識ではあるのだけど、「その問題が発生した時にアーキテクチャ変更をするリソースが確保できるのか」という課題が別途あると感じていて、いつどうなったら何に取り組むか・あるいは取り組まないかというのを参考事例として聞いてみたらよかったなーと今は思ってます。その場でその疑問が出てこなかったのが悔やまれます。

チーム名は忘れたけれど、RubyRailsのアップデートとかやっているチームにいると話していたように思っていて、そのチームがそのあたりも担っているのかしら...??(色々聞き逃している気がするのでスライドが公開されたら見返したい)

全てが同期する! Railsとフロントエンドのシームレスな連携の再考 @tompng

Railsとフロントエンドの同期は自分にとってかなりタイムリーなトピックで、「どうやるといいんだろうー」って考えている最中だったので先行事例を知りたくて聞きに行きました。 聞いたところで実は全然わからなかったので、GitHub - tompng/ar_sync: ActiveRecord-JavaScript Syncをとにかく一回使ってみようという感じ。 いますぐ仕事で導入するかはともかく、「バックエンドでデータが更新されたらフロントにはできるだけリアルタイムで反映したい」という話はめちゃくちゃよくある話だと思うので、何がどうなったらどうすることができるのかわかっておきたい。そんな感想。(何もわかってないけど楽しいね)

Writing PDFs in Ruby DSL @coord-e

PDFも関心あるトピックなので聞いててかなり面白かったです!発表を隣で聞いていた @nukumaro22 と軽く感想を言い合っていたのだけど、「いいPDFのライブラリってないかな」とか「PDF生成処理をもっと速くしたい」とかっていうのがお互いの具体的な関心事で、そのどちらにも応えてくれるのがこの発表の内容だなーと思いました。 デモがあったのですが、特にPDFに表示する中身をシュッと書き換えたらすぐにPDFに反映されるのが大変素晴らしかった✨

混沌とした例外処理とエラー監視に秩序をもたらす @_morihirok

  • エラー監視混沌とするのわかる!
  • あれこれコードに変更が入ってく中で例外が握り潰されちゃったとかいうコードもみたことある!
  • エラー通知がオオカミ少年になるのもわかる!!!

とか色々頷きまくっていました。

StandardError握りつぶし禁止Copという過激警察の件は「えーやだなー」って思いました。基本的に「StandardErrorをrescueしない」は大賛成だけど、UIを含めてハンドリングしたい場合もあると思っている派。そのためにStandardErrorをrescueしてエラー監視ツールに通知を送る、は選択肢の1つにあるのでは派(そんな派閥があるかは知らない) 議論してみたいね😈

ゼロからの、2Dレトロゲームエンジンの作り方 @tokujiros

何もわからなかったけど個人的に一番ぶち上がったトーク。 @tokujiros さんの話し方は、朴訥としているというか、淡々としている感じで、非常に整理されて論理立っていて、さらに「真面目」って感じの雰囲気を放っていたのですが、「ぴこぴこサウンド」っていうワードと意味は私でも理解できる部分でよかったです。再生されたぴこぴこサウンドも最高でした。 私もサウンド生成したいって思ったのでとりあえずgem install reightしました。

ぴこぴこしてこ😈

Ruby meets secure DNS and modern Internet protocols @k_hanazuki

どういう話なのかあまり想像できていなかったけど面白そうだなーと思ったので聞きに行ったのですが、RubyKaigiのネットワークの話で、「これが俺たちがいつもお世話になっているあれ(大!感!謝!)」と感じました。

家でドッグフーディングしてる話と、それによりDay1(Day0だったっけ?)でのトラブルが激減したという件で、それをやり始めた時期が私がRubyKaigiに参加しだしたころだったので、私は「いつ行っても自前Wi-Fiが動いてるの凝ってる!すごい!」と思ってはいたのですが、あの安定感はその取り組みに裏打ちされていたことを知れたのが非常に学びになりました。わかってはいたけれど、あれは当たり前じゃないな。いつも本当にありがとうございます。

セッションの感想から少しそれる話なのですが、発表の中で「TCPでは再送管理をカーネルが担うが、QUICはアプリケーションがやる」というのがさらっと出てきて「えっ!」って大変驚きました。終わった後にたまたま近くにいた@s01 に「一体どういうことなん?」と質問したら「Googleにいる天才エンジアたちは"俺たちなら再送制御ができる。だからより速く処理するんや"ということでやっているらしい」(というようなことを @s01 は言っていたはず。私の理解が至ってなくて嘘を書いているかもしれない。)と教えてもらいました。私だったら絶対任せたままにしたい。 その後これとか読んでみました。何もわからないけどちょっとわかったけど何もわからない。 gihyo.jp

Regional.rb and the Tokyo Metropolis

地域Rubyコミュニティありすぎて非常にいいですね。半分くらい行ったことがありました。

数日前にたまたま浦和と大宮の関係性を教わっていたのでSaitama.rbの@takeyuweb が「(最近Urawa.rbができたので)Omiya.rbに改名したほうがいいのかもしれない」って言ってるのが少し面白かったです。どちらも参加したことがないので、少し遠いけど都合を見ていつか参加してみたいです。

Ruby と Rust と私 @eagletmt

最後のまとめのページにも書いてあるように、私の中にもRubyとRustって全然思想の違う言語なイメージがあったのですが、「どちらもコードの記述量を減らす機能が豊富」と聞いて「考えたことがなかった!そうかもしれん」と思いました(Rustちょっとだけ触ったことがあるレベルでそれについてどうこう意見を持てるほどではないのだけれど)

RubyはネストのあるJSONを扱いづらい、というのは確かにそうだなと思っていて、みんなどうしてるんですかねって感じです。みんなどうしていますか。

発表の本題ではなかったかもしれないけど冒頭に紹介されていたecs-logs-mergerというCLIのパートで、「S3にログを格納する前に小さいログなら1つにまとめたほうがコストカットできる」っていう話が「そうか!」って思いました。Glacier以外でも同じことが言えるのかなというのは今の時点で確認していないのですが(休日に仕事モードになっちゃうから)、コストカットは大事なので、そういう工夫をすると良いと知れたのと、可能なら自社でも取り組みたいと思いました。

「思いました」という以外に、この話に反応した自分がいたのが意外でした。 ドスタートアップに来て3年目、だいぶ意識が変わったり関心ごとが広がったりしてるな?という気づき。3年前の自分だったらSRE的な話は「ふーーーーーーーん」で終わっていたかもです。

余談

Ruby全く関係ないけど、RWC 2024の会期中に@ydah_ に「どうしても頼みたいことがある」と言って関西将棋会館にしかない豊島グッズ購入をお願いしたところ、なんと「いいですよ」と快諾いただけてそれを鶴見で受け取りました。マジで感謝。ありがとう。松江でその話をしたのが佐香や(というお店)で、お願いする場にも受け渡しの場にも居合わせた @koic が「佐香やの誓いだ!」って言っていました。聞き流しちゃったけど「佐香やの誓い」っていうワード最高にいいですね。語りついでいこう(???)。

さいごに

そんなこんなで楽しいイベントをありがとうございました!

*1:私がぼっちを自称すると夫は否定するのだけど、私は初対面が一番気軽に話せる見せかけ陽キャで友だちらしい友だちがいないというか、人付き合いはかなり苦手で、それなりに親しい人でも「私から(ランチなり何なりに)誘ったら実は”えーやだなー”とか思われちゃうけど断るのもあれだからってことで社交辞令的に付き合ってもらうことになるんじゃないか」とか考えちゃって、いつも常に一人で行動しちゃう節がある。いつメンみたいに絡んでる人がいる人々が結構羨ましい。私はそれがどうしてもできない。刹那的なやつなら自分からいける。わかりますか。