STORES Product Blog

こだわりを持ったお商売を支える「STORES」のテクノロジー部門のメンバーによるブログです。

STORES はRubyKaigi 2023に28名で参加&スポンサーをしました!参加レポート

こんにちは、技術広報のえんじぇるです。RubyKaigi 2023 お疲れさまでした! STORES はAfter Party Sponsorとして、Day3のAfter Partyの準備&運営をしました。After Partyに参加いただいたみなさま、ありがとうございました。

タイトルに記載の通り、STORES はエンジニア組織であるテクノロジー部門だけで28名がRubyKaigiに参加しました。STORES 史上最多です!2024はこれを超えられるのかどうなのか?!テクノロジー部門の他にも、ブースやアフターパーティのお手伝いにタレントアクイジション(人事)のメンバーや今回のRubyKaigi 2023にまつわるさまざまなものをデザインしてくれたデザイナーも来てくれたので、総勢33名が現地に行きました。

ということで、参加したメンバーから印象に残っているセッション、出来事について聞きました。それぞれの視点のレポートをお楽しみください。

なつめ @_necocoa

印象に残っているセッション: 

  • Implementing "++" operator, stepping into parse.y がとてもおもしろかったです!parse.y でなにをしてるのか全く知らない前提知識でも step by step でわかりやすく、かつ面白く解説されており「自分でも理解できた」となれてよかったです。

出来事: 

  • 「AfterPartyありがとうございました!」と声をいっぱいかけてくださってとてもうれしかった。色々な方と知り合いになることができて温かいコミュニティいいなぁとほっこりしました。
  • RubyKaigiEffectによってプロダクトのYJITを有効にしました!

かくだ @srphcr

印象に残っているセッション: 

  • 最初のMatzのキーノートはとても楽しかったです。教訓がどれも実体験をともなっていて強く伝わるなと感じました。flat earthのくだりとかRuby 3x3とか本当に。
  • katakata_irbの話はPENさんの志向が分かる感じで、やっぱりPENさんおもしろい!でした。Rubyをあまり知らない自分にとってはとても嬉しいgemでした。
  • Ruby++最高でした。具体的な部分になるとついて行けなかったけど、やってることは理解できて良かったです。
  • Fix SQL N+1 queries with RuboCopとHacking and profiling Ruby for performanceはISUCONで戦う話で、ISUCONに向かう姿勢を反省しました。ISUCONに対してもSREとしての業務に対してもとてもやる気が出ました。
  • Build Your Own SQLite3は自作キーボード使ってる者としての姿勢を反省し(ry。思ってもなかったことをキーボードのマイコン上でやってしまうのがすごかったですし、話のオチまで全部楽しかったです。

出来事: 

  • Rubyistと自称はできない自分ですが、とても良い刺激を得られました。業務でも思い出すことがありそうな内容も有って、自分自身Rubyともう少し向き合えそうに感じました。
  • クックパッド様のボルダリング部の方々とクライミングジムに行くことができて、その後飲みにも行って、とても楽しかったです。Rubyのことを話せる...かどうかは僕の今後次第ですが、意外なところで友達ができて良かったです。来年は具志頭ボルダーに行きたいと思います。

藤村 @ffu_

印象に残っているセッション

出来事:

  • 二日酔いでエントランスを通って「あ、RubyKaigiだ」って思った数秒後に会場に充満したコミュニティの熱気に飲み込まれるあの感じ
  • STORES のみんなが刺激を受けてくれたのが何より嬉しい

ahogappa @ahogappa0613

印象に残っているセッション:

The future vision of Ruby Parser」です 魔境、魔窟と呼ばれていたparse.yを真正面からなんとかしていく感じでかっこいいと思いました。Rubyistとして自分にあれだけの熱量があるのかと自問自答するような良いセッションでした。

出来事: 

  • 海外の方とお話しできたこと。英語が全くわからなかったので次回までにはなんとかしたいという気持ちになりました。
  • committerの方と会話できたこと。金子さんからCのparserについて教えてもらったり、naruseさんに「これをやりたい!」というのを相談して直接アドバイスをいただけました。こういうのができるのがRubyKaigiならではだな、と思いました。

u16suzu @u16suzu

印象に残っているセッション: 

  •  sue445 さんの Fix SQL N+1 queries with RuboCop です。弊社で使っているMongoDBだとそのまま利用することはできないのですが、考え方や進め方はとても参考になりました。

出来事: 

  • Ruby東海が2019年以降、開催されていなくて愛知県民としてはとても気になっていました。そこで、RubyKaigiに参加されていた名古屋の松本さん(Ruby東海を運営されていた方)に直談判して、運営を引き継がせていただきました。いま、Re:bootの準備中です。

huin @huin

印象に残っているセッション: 

  • Day 3 @vinistockさんの「Code indexing: How language servers understand our code」です。自分はRubyに詳しいというわけではないので、Ruby以外でも役立ちそうなセッションということで聞きにいきました。LSPの技術的な理解はもちろん、開発者が開発者のためにツールを作って自分たちの生産性を上げていく活動は聞いていてとてもワクワクしました。

出来事: 

  • 世界中の開発者が集まっているRubyKaigiのこの空間・時間にとても興奮しました。 というのも、昔海外のカンファレンスに行った時に、学生から白髪の人まで年齢・人種などなど関係なくたくさんの人が集まっているのを見てすごく刺激を受けたことがあって。そういった全く違う属性の人たちが、Rubyへの情熱をフックにして集まって交流してるのって奇跡だと思うんです。しかもそれが日本で経験できるのがさらに素晴らしい!
  • それから、STORES の利用オーナーさんのお店をいくつか回れたのも、めっちゃ楽しかったです!

hiromu

印象に残っているセッション: 

  • Fix SQL N+1 queries with RuboCop が印象に残っています。少し前に業務でCustomCopを作る機会がありましたが、その時はASTを解析して必要なテストケースが存在するかをチェックする、比較的シンプルなCustomCopでした。しかし、このセッションではRubyのAST上では単なる文字列であるSQL文をパースしてASTを生成し、解析し、さらには自動修正まで実装されていました。自分なら諦めてしまいそうなところ、ここまで突き詰められる実装力には驚かされました。

出来事: 

osd @osd_02

印象に残っているセッション: 

出来事:

  • 今回のRubyKaigiでは正直あまり知り合いや友達を作れたわけではないんですが、RubyKaigiのコミュニティで話すということはそれなりのRubyに関する知識や興味の共通言語があってその領域でいろんな人と話してみたい!と強く思いました。
  • 今回のRubyKaigiでRubyへの興味は相当上がったので、次のRubyKaigiでは人と話せるくらいまでその知識と実装力を上げるぞ!!!という気持ちになっています。あとRubyKaigi後からなんかプログラム書くのが異常に楽しくなった気がします(?)

tommy

印象に残っているセッション: 

  • Revisiting TypeProf - IDE support as a primary feature です。
  • IDEサポートによって より開発者体験が向上するために開発を進めており、TypeProf v2 としてリリースしていきたいとのことでした。推論速度の向上がすごくアップデートされていてVSCodeでのデモには驚きました。
  • 最終日のKeynoteでも触れられていましたが、RubyKaigi全体でみても型周りの発表が多く1つの大きいトピックだったと思います。自分は後から聞いたのですが、こちらのPodcast でもMatz が型についての思想などを話されていて、RubyKaigiでの発表で聞いたことや感じたことと合わせてとても面白かったです。

出来事: 

  • 普段の開発とは違った視点でRubyについて考えるきっかけになり刺激になりました。
  • また、3日間を通してコミュニティの熱みたいなものを肌で感じることができてとても新鮮でした。社外の人や海外からこられている方とも交流することができ、とてもよい機会になりました。初参加でしたがまた来年もいきたいと思える時間でした。

nissy

印象に残っているセッション: 

  •  Implementing "++" operator, stepping into parse.y がとても面白くて印象に残っています。Rubyを始めたころは ++ が使用できないことを不思議に思いましたが、このセッションを聞いて実装されていない理由まで理解することができました。話の流れもとても面白く、最後の金子さんとのやり取りまで含めて最高でした。

出来事: 

  • Officail PartyやAfter Partyで何人かの方たちと話ができて、twitterを交換することまでできたのは良かったなぁと思ってます。初めて社外のエンジニアの方たちと交流する経験になりました。
  • Rubyも英語も全然わかってないなぁと刺激を受けることができたので、1年後のRubyKaigiでは理解できる部分を増やせるようにこれから頑張ろうと思える3日間でした!

大迫 @m11o

印象に残っているセッション

  • UTF-8 is coming to mruby/c がすごい好き。ニッチな世界に情熱を持って楽しんでいる姿に羨望と尊敬の念が止まらない。多分、みなさん一定持っていると思うが、それを実装という形まで表現しているところが尊敬する
  • Day2 Keynoteは当日は全く分からなかった内容が、録音していたので後日ちゃんと聞いたら、なぜJITに興味を持ったのかや、どのように改善進めていったのかなど話していて、CSの勉強と英語の勉強をやろうと心の底から思った(やる)

出来事: 

  • 外部の方だけでなく、まだ2年目なのでお会いしたことないSTORESのエンジニアの方々もたくさんいて、その方々と語り合うことができて、Day0から有意義だった(次の日、二日酔いになったのは秘密)
  • github上でのみずっとやりとりしていたpockeさんやfu-gaさんとお話をできて、色々情報交換できた。github上でまた会いましょうという話ができて、contribute欲が溢れる
  • セッションされた方と裏話などを聞けて良かった

ucks

印象に残っているセッション

  • Matz Keynote かなぁ? 基本的に静的型付け言語が好きだけど、数年前からRBSとかSorbetとかが出てきて色んなやり方ができて、Rubyらしくて良いなーと思ってたところに、Flat Earth Believerと言われたみたいな面白い話含めて考えが聞けてよかった。 30年生きる言語の話があった際に、拡張性等の話もあったが、Rubyの型の解決手段がめっちゃ拡張性あってもしかしたら、めっちゃ良いのではみたいな期待が持ててよかった。
  • 別のセッションだと Make Regexp#match much faster とか Implementing "++" operator, stepping into parse.y とか、わかりやすくて、自分でも何かできるのではと思わせてくれた。多分できんけど。

出来事: 

  • Official Perty, After Perty 色んな人とお話しできて楽しかったです。全然Ruby界隈知らないので適当に話してたら、翌日スケジュール見た時に見たことあるアイコンだなーと思ったり、失礼なことしてないか心配です。Ruby盛り上げてる人たちと沢山話せたので、自分も何かできたらなーって気持ちが高まりました。

mabots @mabots

印象に残っているセッション

  • # RubyGems on the watch

RubyGems は高色感もあり、ある種思考停止状態で使ってました。しかし、悪意のあるパッケージが毎日リリースされ、一見公式感のあるパッケージ名も実は偽パッケージ名だったり、かつては公式だった本物のアカウントが乗っ取られていたりと CVE の情報に目を光らせる必要があります。また、攻撃者の攻撃方法も本番を狙うから、開発用のマシンの変数などを抜く味付けに変化してきており、「試しに開発用 Mac に Gem いれたら何も起きない..? と思ったらごそっと抜かれてた」なこともあるかもしれません。 Maciej さんの力強いメッセージ  "RubyGems は AppStore じゃない! 他人を信じるな! 自分の身は自分で守れ、すべては at your own risk なんだ。"  これを肝に銘じておきましょう。

出来事: 

  • 今回参加初めてでしたが、当たり前といえばそうなのですが、Ruby が C で作られていて、言語で言語をつくっているのが元 C 書いてた人としても新鮮でした。

shia @riseshia

印象に残っているセッション

  • "Ractor" reconsidered
  • Revisiting TypeProf - IDE support as a primary feature
  • Hacking and profiling Ruby for performance

実はほぼ毎年 ISUCON ってやつに出場している身でして、今後の出場に非常に役立ちそうなものセッションをピックアップしてみました。 Ractor はまだ色々大変そうだけど GC 周りが良くなると実用段階になれるのかな〜という夢を膨らませて聞いたり、 TypeProf v2 があれば nil エラーでベンチマークを数回分無駄にするのを避けれそうだな〜とか、最後のやつは実際 ISUCON で Ruby のパフォーマンス計測をどうしていくかの話でしたね。今年はもうちょいマシなスコアを残したい。

出来事: 

  • 久々の物理参加でコンファレンスってこういう感じだったな〜と浸りつつ、コロナで弱ってしまった体としては物理は疲れるというつらみもあった3日間でした。
  • おもしろ出来事としてはせっかくだし知らない人としゃべるか〜と思ってランチで雑に人を集めたら意外と集まった上にみんないい人たちで良かったです。 Matz is Nice and So We Are Nice って感じでしたね。

mochizuki

印象に残っているセッション

出来事: 

  • 前回に続き2回目の参加でしたが、今回はafter party sponsor ということもあり、社外のいろんな人とお話ができてとても楽しかったです。前職の同僚と、お互いに新しい会社の人間としてRubyKaigiで再会できたのが嬉しかったです。
  • STORESのオーナーさんのお店(The Source Diner)にいってめちゃめちゃ美味いハンバーガーとお酒をいただきました!

morihirok @morihiok

印象に残っているセッション

  • The future vision of Ruby Parser Bisonの代替をRubyで書いた時点で1セッション分の成果としては十分にすごいものだと思ったのですが、そこからさらにdo endの課題やUniversal Parserとしてのネクストステップまで示されており、前回が半年前の開催であることを考えると凄まじい成果だなと思いました。

  • Optimizing YJIT’s Performance, from Inception to Production YJITに至るまでの挫折談などエモい話も良かったなと思いつつ、「計測できないものは改善できない」というピーター・ドラッカーの引用から始まった一連の流れはやはり何をやるにしても基本なのだなと思いました。ShopifyではさまざまなメトリクスからYJITをはじめとした改善がどのように効いているのか計測できている様を感じ、技術的な難易度の高低はあれどエンジニアリングとして向き合う姿勢は愚直かつ基本に忠実だなと感じ「自分は技術力以前にもっとエンジニアとして正すべき姿勢が大いにあるな」と感じるセッションでした。

出来事

  • Day0で酔っ払って感極まって泣いて同僚に迷惑をかけました
  • Day3で感極まってる場合じゃないとリセットされ会期中にRubyのバージョンを上げるPRを出しました

hogelog @hogelog

出来事:

  • 参加直前にCOVID-19感染発熱となり物理参加はもちろんリモートもほぼ参加できず! まだ全然見られておらず、SNSに流れる感想を眺めただけの発表ばかりなのでアーカイブ心待ちにしています!

印象に残っているセッション: 

  • The future vision of Ruby Parser 発表の内容自体は難しくも面白かったですが、lramaのCRuby本体への組み込み、今後のCRubyのパーサをどうしていくか議論の盛り上がりなど、パーサーでこんなに盛り上がれるのがまさにRubyKaigiだなと非常に楽しかったです。
  • Make Regexp#match much faster 正規表現に対する深い理解から現実の課題に対して非常に協力な手段を作り上げているところがものすごくカッコよかったです。
  • Ruby Committers and The World 今までと開催形式が変わるのでどうなるんだろうと思っていましたが、しっかりと Ruby Commiters x The World のノリがあって非常に楽しかったです。

HolyGrail @HolyGrail

印象に残っているセッション: 

  • Power up your REPL life with types - RubyKaigi 2023 ぺんさんはTRICKの常連でもあり、先日開催された福岡Rubyist会議03でもTRICKのコードの書き進め方についてお話されていたのを直接聞いていて、超絶技巧のイメージが強かったのですが、そういったコードが書けるのもこういったRubyのコアな部分を普段から触っているからこそであり、超絶技巧は基礎力を裏付けるものでもあるのだなぁ、と改めて思ったのでした。 また、このセッションで紹介された katakata_irb gem近いうちにIRBの標準依存関係に含められるというニュースもあり、よりよい開発体験のために日々改善を続けている皆様には感謝しかありません。

出来事: 

  • 非常に多くの社内メンバーが現地で参加してくれたのがとても嬉しく感じるRubyKaigiでした。様々な交流や、アフターパーティーに向けたあれこれがあり思ったよりも聞けなかったセッションがたくさんあったのでアーカイブが配信されたら食い入るように見ようと思います。

takeuchi

印象に残っているセッション: 

  • Matz KeynoteRuby型推論への展望が聞けて、その後の発表では最新の型推論・型チェック関連の開発の Revisiting TypeProf - IDE support as a primary featureGradual typing for Ruby: comparing RBS and RBI/Sorbet などの発表が聞けたので、かなり浅い認識だった型周りの開発を知ることができてよかったです。

出来事: 

  • 今回初参加でした。想像していたよりもお祭りのような雰囲気があり、実際に会場でRubyist達のRubyへ向ける熱量を体感できて良い経験になりました。
  • Official Party,  After Partyでは社外の方ともたくさんお話しできてよかったです。

nfuiu

印象に残っているセッション: 

  • Build Your Own SQLite3マイコン上で動くPicoRubyでSQLite3を動かしそれを自作キーボード上で動かすデモが印象に残りました。実現できて何が嬉しいのかというと、ただできそうだからやってみたという旨の発言をされており、まさにJust for Funだし、Rubyだけの話にとどまらないRubyKaigiの懐の深さを感じました。オチも最高でした!

出来事: 

  • 会場のネットワーク環境が快適だったのが嬉しかったです(スポンサーのクックパッドさんありがとう!)
  • 現地の STORES のオーナーさんとも交流できたのが印象深かったです。

えんじぇる @sweet_chiho

印象に残っているセッション:

  • オープニングのa_matsudaさんの嬉しそうな表情がめちゃくちゃ印象に残っています。
  • Matzのキーノートは最高でした。STORES のミッションがJust for Funなのですが、RubyもJust for Funでドライブされているんだと知って胸熱でした。

出来事:

  • 4月に参加したRailsGirlsTokyo15thで出会った人たちと再会できたのが嬉しかったです!またRailsGirlsのときにはお話できなかった人にも「参加されてましたよね?」とお声がけいただき、RailsGirlsでできたご縁がありがたかったです。
  • 「論より動くもの.fmを聞いてます」とお声がけいただくこともあり、続けててよかったなぁと感じました。
  • Official PartyやAfter Partyで、いろんな方とお知り合いになれたのも、応援うちわをたくさんの方にツッコまれたのもいい思い出です。

STORES のRubyKaigi 2023はまだ続きます!

感想の中でも出てきましたが、6月15日(木)18:00〜『深掘りRubyKaigi 2023 with spikeolaf & makenowjust』をオンラインで開催します。おふたりがセッションでお話ししきれなかったことを伺いつつ、CTO 藤村、Rubyコミッターの卜部、hogelogがさらに深掘りをするセッションを180% 味わい尽くすイベントです。ぜひご参加ください!

hey.connpass.com

RubyKaigi 2024も楽しみですね!沖縄で会いましょう〜!