Rust愛が高まりすぎて勉強会を開いた ~ Running Rust in Production 誕生秘話

皆さん、初めまして。
2017年新卒入社の牧野美咲(@T5uku5hi)と申します。 キャリトレ事業部のサーバーサイドエンジニアです。
今回は、先日開催したRustの勉強会についてお話したいと思います。

なぜRustの勉強会?

私は趣味でRustの勉強をしています。
きっかけはこちらのスライドをご覧ください。


Rustのお陰で、普段業務で使っているJavaへの理解が深まった訳ですが、

  • せっかくだからRustを業務で使ってみたい
  • でも、Rustの使い所や提案の仕方がわからない

という状況でした。

わからないから知りたい!
そうだ、Rustを実際に業務で使っている人に教えてもらおう!
知的好奇心の塊である私は、勉強会を開くことを決意したのでした。

話題の方々に直撃お声がけ

タイムリーなことに、Rustユーザーの集うSlackチャンネルで、
「どの日本の会社がRustを使っていますか?」
という質問が挙がりました。
しかもその投稿に返信した方がバイネームで、実際にRustを使っている方々を紹介していたんですね。

これはまたとないチャンスだと思い、返信が無いことを覚悟の上でDMをお送りしたり、Twitterでリプライをしたりしました。その結果、依頼した方々全員にご快諾いただけました。

また、connpassイベントページでも講演者枠を設けており、こちらに直接申し込みして下さった方々もいて、心底お話を聴きたいと思っていた皆さまが軒並みご登壇という夢のような展開となりました。

Rust公式アカウントも巻き込んだ

勉強会開催が楽しみすぎて、開催当日に会場の目印として貼るポスターを作ることにしました。
デザインのポイントとしては、

  • Rustのロゴの由来は自転車の車輪 (こちらでRustの生みの親であるGraydon Hoare氏が提案しています)
  • 背景色はcrates.ioの背景色
  • マスコットキャラクターであるFerrisを起用

で、Rustへの愛をてんこ盛りに仕上げてみました。 Twitterでツイートしたところ…


Rust公式アカウントにリツイートしていただきました!

更に、Rustの コアチームメンバー であるAshley Williamsさんからリプライが!

this looks so good! — ashley williams (@ag_dubs) June 30, 2018

「うそっ!ほんとにっ!?」

と思わず声が出てしまいました。
Ashleyさんは、現在RustのコアメンバーとしてMozillaに在籍していらっしゃいますが、以前はnpmで働かれていて、まさに「業務でRustを使った話」を去年のRustFestでお話されていたのです。
私はこの動画を観てAshleyさんの大ファンになり、
「JavaScript界隈の人を巻き込んでいるRustやっぱり面白いな」
と再認識しました。

そんな超憧れの方からリプライをいただけて、テンションは最高潮で当日を迎えました。

勉強会当日

たくさんの方にご来場いただき、アクシデントも無く無事に終えることができました。
中には京都からいらっしゃった方もいて、主催者冥利に尽きました。


ご登壇いただいた方々のスライドの一部をご紹介します。

ライブ動画変換でのRust言語活用事例

ピクシブ株式会社の茂木さんからは、pixiv Sketch LIVEのTranscoderでRustを採用したお話をしていただきました。Rust採用の経緯や実際に使ってみて良かったこと・ハマったところを惜しみなく説明されていました。

Rust本番投入をあきらめるためのガイドライン

クックパッド株式会社の小林さんからは、Rust本番投入をあきらめるお話…と見せかけて、Rustを導入するにあたってのハードル、そのハードルの超え方についてお話をしていただきました。ご本人は「偉そうに喋っています」なんて仰っていましたが、「新しいものは真似ではごまかせない。基礎や原理をちゃんと知っておかないといけない」と、エンジニアとして大切な心構えを伝授していただきました。

ポイントで導入するRust

楽天株式会社のtommyさんからは、Heroku上のタグ生成スクリプトをRustで書き換えたお話をしていただきました。 Rustを書けることをチームの皆さんにアピールし、事業ドメインにあまり関係のないところで導入のチャンスを見つけたと仰っていて、「私もそういうところから導入のチャンスを探してみよう」と思いました。

そのサーバー、三日前からRustだよ

ウォンテッドリー株式会社の原さんからは、refine-imageをRustに移植したお話をしていただきました。実はご登壇が確定した6月頭の時点ではまだ業務に導入していなかったらしいのですが、無事に導入が決まっていて流石でした。

Rustと3種のDSL

最後に発表していただいたのはIdein株式会社のκeenさん。
実は私、κeenさんの記事を読んでRustに入門したんですよね。 これを読んでいなかったら、私はこの記事を書くこともなかったでしょうし、この勉強会を開くこともありませんでした。 大きなきっかけを下さったκeenさんにご登壇いただけて本当に嬉しかったです。

まとめ

わからないから知りたい!
その一心で漕ぎ着けた今回の勉強会。
始めは一人で漕いでいた船でしたが、たくさんの方に助けていただいて力強く進む船になりました。


もともとこの勉強会は個人的に場所を探して開催しようと考えていたのですが、同事業部の先輩に相談したのをきっかけに、あれよあれよと総務や広報を巻き込む一大イベントに。
場所も会社で一番大きなスペースを借りることができました。

私はまだまだ技術者としての経験が浅く、Rustに造詣が深い訳でもありません。
だけど、Rustが大好きな気持ち、わからないことを知りたい気持ちが人一倍ありました。

これを読んでいる皆さんも、ぜひ好きな技術や知りたい技術について勉強会を開いてみて下さい。
今回の勉強会を開くにあたって、どんな準備をしてきたのかを勉強会開催マニュアルとしてまとめたので、開催したい方はぜひご覧ください!

ご登壇いただいた皆さま、ご来場いただいた皆さま。
そして、勉強会開催にあたり様々な面でサポートして下さった同僚の皆さま。
この場を借りてお礼申し上げます。