これからのRubyはどう発展する?【ゲストLT&パネルディスカッション】
ゲストLTではまず、22 Inc.のCTOである大薮永氏が登壇。RubyKaigiで感じた「熱量」がOSS開発のモチベーションに転換されたことを、RubyKaigi2日目の夜に開催された「RubyKaigi 2019 コード懇親会(Speee主催)」のエピソードを中心に語った。
コード懇親会は、それぞれの参加者が興味を持っている技術領域のグループごとに分かれ、コードを書きながら懇親することを目的としたイベントである。大薮氏はRuby製のデータビジュアライズツール「Charty」のグループに入り、開発を行ったという。
「イベント後、『Charty』の制作者である秒速さん(@284km)が『3つもPull Requestをもらえました。ありがとうございました!』という旨のツイートをされていました。そのうちの1つは自分が出したもので、READMEを少し直しただけ。具体的には、『Charty』の対応ライブラリである『Gruff』を扱おうとしたらエラーで動かなかったため、必要なオプション情報をREADMEに追記したというものです。秒速さんはこの修正をとても喜んでくれました」
この一連のやり取りにより、大薮永氏の「OSS熱」に火が着いた。それまであまり思い入れのなかった「Gruff」に対して、急に愛着が湧いてきたという。その後、大薮氏のOSS活動は今までよりもさらに活発になったそうだ。プログラム開発においても「人のモチベーションは伝播する」ことを如実に示すセッションとなった。
ゲストLTとして次に登壇したのはおおた氏(@ota42y)。おおた氏はRubyKaigiで発表した「How to use OpenAPI3 for API developer」の振り返りを行った。
前半パートで解説したのは、OpenAPI3という定義の優位性について。スキーマファースト開発を行う場合、インターフェースの定義は非常に重要である。しかし、人間の目視によるチェックで、その定義を正確に保ち続けることはほぼ不可能だ。おおた氏はこれを「人の手による温かみのある定義は崩れる」という印象的なフレーズで表現する。
この課題を解決してくれるのが、OpenAPI3による自動チェックである。OpenAPI3はマシーンリーダブルな定義であるため、実装と定義のずれをプログラムでチェックできるという利点がある。これを実現してくれるライブラリが、おおた氏の制作した「Committee」である。
後半パートでは、「Committee」の使用方法について寄せられた質問への回答や、同ライブラリのパフォーマンスについての解説などを実施。「Committee」利用者にとって有益な情報の多いセッションとなった。
セッション最終盤では、モデレータにRubyコミッターである株式会社ZOZOテクノロジーズの瀬尾直利氏を迎え、ラクスル株式会社の二串信弘氏、Sansan株式会社の南谷祐貴氏、株式会社ZOZOテクノロジーズの木曽貴裕氏がパネラーとなったディスカッションを実施。RubyKaigi 2019の中でも特に面白かったテーマについて議論し合った。
「Rubyに静的な型解析は必要か」「Ruby2.7の新機能(パターンマッチやnumbered argument @1など)について」「Rubyにはどのような機械学習系ライブラリがあるか」といった、Rubyユーザーにとって興味深い話題の数々に、参加者は聴き入っている様子だった。
