ねこものがたり

いちにちいっぽ

「”Rubyでこれをやりたい”と思った時にはやりたいことができる状態になっている」ということ(RubyKaigiの感想の延長)

前段

先日開催された「After RubyKaigi 2022〜メドピア、ZOZO、Findyの参加者がLTします〜」(長いので以下After RubyKaigi )というYouTubu Live配信形式のイベントに参加しました。 その日は火曜だったのでAsakusa.rbにその日参加したメンバーでわいがやしながら視聴する形式*1となって、個人的には斬新で楽しい参加となりました。

ところでRubyKaigi 2022に参加しました - ねこものがたりを書いたけれど、記事の中では具体的な登壇の感想はほとんど触れていませんでした。しかし後日、新たに感じたことがあるのでそれを書いておきます。

出来事

After RubyKaigiの中で、Wasmで簡単な実装をしてみたよというトークがありました。 それを受けて、また前々から理解ができていなくて疑問だった点をAsakusaの皆さんに質問してみました。 「Rubyがブラウザで実行できるのはすごい画期的だと思うのですが、Rubyでの使い所がわかりません。JSの代わりにするだけなら好みの話になりそう」というような内容です。

その答え(正確には「答え」というのはなく、一意見というのが良いかもしれませんが、コミッターの方々からのレスポンスは「答え」という感じがする)は「今はまだないのでは」「今から生み出していくものでは」というものでした。

この出来事から思ったこと

話は少し変わって、Ruby Committers vs The World - RubyKaigi 2022という定番セッションがあります。Rubyコミッターの方々が壇上に揃って、最近や未来のRubyの在り方についてやんややんやと議論したり活動報告をしてくださったりする時間です。 その中で、(何についてだったか忘れたけど)「それって何のために必要なんですか?何かをやるために必要だから今開発しているというのではなくRubyで作りたいから作っている状態なのではないか」と問いかけが出て、それに対して「”Rubyで○○をしたい”と誰かが思った時にはできるようにしておきたいんだ」と意志を述べる場面がありました。

当日は私はそれがピンと来ていなかったのですが、上述の「WasmでのRubyの使い所がわからないのだが」に関するやりとりで「やりたいことができる状態になっていっている。もっと肉付けしたり、やってみたいと思ってやってみるのがこの先の自分の一歩なんだ」と思いました。電気が走るような感覚を覚えました。

この出来事から思ったこと(その2)

数年前のことですが、Rubyにパターンマッチがexperimentalで導入された時、実装された辻本さん*2が「ぜひ使って感想を聞かせてほしい」「現場での色々なユースケースを教えてほしい」とおっしゃっていたことをすごく強く記憶しています。 なぜ強く記憶しているのかあまり自分の中で心当たりはないのですが、その割には当時の自分は積極的にそのようなことはせずに過ごしていました。「APIでパターンマッチしたいときは確かにある。でもそれ以外思いつかない。思いつかない自分はだめ」みたいな謎の自己卑下に走ったりしていました。

それは今思えば、「自分はお客さんモードだったんだなあ」と痛烈に刺さって悶えるに至っています。 刺さり悶えるために鮮明な記憶に残っていたのではないかと思うほどです笑

Wasmについても、今のところ「こんなことしてみたいなー」は自分自身の中にないんですけど、なんかそれだと自分に対して物足りなさを感じていて、何か面白いことをしてみたい気もしています。 まあいきなりオリジナリティーを求めなくても、巷で既出のWasm x Rust*3なものを書き換えてみるとかから始めても良いかもしれません。

本当の感想

コミッターの人は色々な思いや興味関心から多様な活動をされていることがRubyKaigiではよくわかります。 その中の1つに「”Rubyでこれをやりたい”と思った時にはやりたいことができる状態になっている」という方向性があるのは今年のRubyKaigiに参加するまで知りませんでした。

知らなかった自分が恥ずかしい気持ちもあるけど、でもRubyKaigiに参加して知ることができました。 今回具体的にはWasmについて、パターンマッチの時にはできなかった後悔も交えて、「使い所がわからないので使わない」みたいな姿勢ではなくて、「なんか色々やってみて自分の中で蓄えたり、使ってみた感想やこんなこともできたらいいなって言えるように遊んでみよう!」と思ったし、「なんかよくわかんないけど遊んでみよう」でもいいのかなって思える日になりました。

*1:参考:meetup/2022/09/27/第679回 - asakusarb.esa.io

*2:辻本さんの紹介記事はどれがいいんだろうかと迷ったのでこちらを貼っておきます。Ruby Prize 2019 最終ノミネート者 辻本和樹 インタビューRubyPrize

*3:今の所根拠は特にないけどWasmはRustでやってるケースが多そうという印象がある。全く根拠はないんですが。