🎃

Rust Tokyo2023に刺激されて、社内「Crateを読む会」を開催した話

2023/11/01に公開

イントロダクション

先日、プログラミング言語のRustに特化したカンファレンスである、Rust Tokyo2023に参加してきました。
このカンファレンスで得た知識と刺激を元に、社内で「Crateを読む会」を開催することにしたので、そのアイディアと成果を共有します。

開催のきっかけ

Rust Tokyo2023では主なトピックとして、「Rustをどのように社内に導入したか」と「Rustの特徴を活かした開発のアイディア」、「Rustを取り巻く環境」がありました。詳細は当日のLineUpをご確認ください。
特に印象的だったのは、@sadnessOjisanさんの「かにさんタワーバトル」です。このセッションで紹介された「Live Reading」の手法が、「Crateを読む会」のきっかけとなりました。
※Live Readingとは、コードをその場で読み解き、その機能や挙動を解説する手法です。

熟練者がRustのCrateを読む際の挙動にはさまざまなTipsが詰まっており、どのように読み進めればRustをより効率的に記述することができるかを広めるためにLive Readingは非常に有用なコンテンツだと感じました。

Crateを読む会の目的

社内で、RustのCrateを理解するノウハウを共有する。また、業務で使用するCrateを理解することによりRustの利用をより効率的にすることを目的とし「Crateを読む会」を開催しました。

準備段階

リーダー(Reader)と参加者募集

まず、ミニマルにスタートしようと同じチームのRustが得意なエンジニアにリーダー(Reader)をお願いしました。参加者は社内のSlackを通じて、Rustを業務で使用しているエンジニアやインターンを対象に参加者を募集しました。

Crateの選定

Crateは業務で使用しているクレートの中からリーダーが選択するルールとし、第一回はRustのWebフレームワーク「Axum」が選択されました。

事前準備

継続的に行うことも考え、リーダーに極力負担をかけないように、クレートの選択だけを事前準備としました。

開催当日

セッション内容

様々なプロジェクトのエンジニアが参加していたため、Axumの大まかな概要から入り、基本的な機能であるRouter, Extractors, Middlewareなどの話で盛り上がりました。

参加者の反応

Rust初心者の参加者からは「Crateの概要を知ることができたため、今後の業務に非常に生かせそうだと思った。」、熟練者の参加者からは「雰囲気で使っていた部分もあったので、理解が進んだ」との意見が得られました。
また、リーダーになった方も、ここまで詳しくCrateの中身を精読することがないので、議論をしながら読むことができて楽しかったと言う意見をいただきました。

得られた成果

この活動を通じて、Crateのコードを効率よく読む方法や、具体的な知識が共有できました。特に、コードとドキュメントの行き来方法など、コードを読む上でのテクニックが共有されたのは大きな成果だったと感じています。

今後の展望

次回以降は参加者の理解度に合わせたガイドラインを作成し、定期的な開催を予定しています。
さらに、継続的に行い、Rustの理解を深めることで来年度はRust Tokyoにプロポーザルを出すこともできればと考えています。

最後に

LabBaseでは、プログラミング言語Rustを使い、Webアプリケーションなどを開発しています。また、これらの開発を通じ、研究者を対象にした就活支援などのサービスを運営しています。

LabBaseでは共に働く仲間を募集しています。Rustが好きな皆様、Rustに興味がある皆様と共に働けるのを楽しみにしています。

Discussion