はじめに
こんにちは、mercari.go スタッフの @otter です。
1月20日にメルカリ主催のGo勉強会 mercari.go #18 をオンライン配信にて開催しました。 この記事では、当日の各発表を簡単に紹介します。動画もアップロードされてますので、こちらもぜひご覧ください。
今回は、「エキスパートたちのGo言語」の発売記念として、メルカリグループとex-メルカリの方たちとの共同での開催となりました。まだ本がお手元にないという方はぜひリンクから本の概要もチェックすることをお勧めします。
Chompyを支えるGo
1つめのセッションは @morikuni さんによる「Chompyを支えるGo」です。
発表資料:Chompyを支えるGo
morikuniさんは mercari.go の元オーガナイザーで、現在はフードデリバリサービスChompyで開発に携わっています。今回は、ChompyでどのようなGoのコードを書いているのか、Goで位置情報を扱う方法などについて話しました。
距離を扱う処理では、海問題や地球が球体であることを考慮する必要があったり、サービスならではの話が聞けて面白かったです。また、自ら作成したGoで地図上にデータを描画するためのライブラリ go-geoplot の紹介もありました。
Twirpで始めるスキーマ駆動API開発
2つめのセッションは @oinume さんによる「Twirpで始めるスキーマ駆動API開発」です。
発表資料:Twirpで始めるスキーマ駆動API開発
oinumeさんはメルペイ卒業生で、現在は医師採用サービスDr.’s Primeで開発に携わっています。今回は、Dr.’s Primeでも使っている Twirp というRPCフレームワークを用いたスキーマ駆動開発について話しました。
弊社メルカリでもprotobuf定義からgrpc-gatewayを利用したコード生成を行っているので、スキーマ駆動開発のメリットにはとても共感しましたし、Twirpはよりシンプルで扱いやすい印象を受けました。何より2年以上本番稼働していて運用上の問題はなしというのが素晴らしいですね。
静的解析と学ぶ型パラメタ(ジェネリクス)
3つめのセッションは @tenntenn さんによる「静的解析と学ぶ型パラメタ(ジェネリクス)」です。
発表資料:静的解析と学ぶ型パラメタ(ジェネリクス)
tenntennさんはメルペイのエキスパートチーム所属で、ご存知の方も多いと思いますがGoのDeveloper Expertとして社内外問わず、人類Gopher化計画で活躍しています。
今回は、2月にリリース予定のGo 1.18で追加される型パラメタ(ジェネリクス)に関連して、型パラメタの導入に伴うgoパッケージの変更点や解析する上でのポイントについて話しました。
型パラメタを含む静的解析も段階的に追ってポイントを説明していたので難しい内容でありながら分かりやすかったです。また、標準パッケージで静的解析ができるようになっているからこそ、言語仕様に追従してもらえるというのはGoならではのメリットだなと改めて感じました。
おわりに
今回は、Go関連書籍の出版記念ということで ex-メルカリメンバーも含めての登壇となったので、mercari.goとしては珍しく他社の事例も聞くことができ、会社間の情報共有もできて面白い内容となったのではないでしょうか?これからも社内外問わずGoに携わる人たちとGoのコミュティや業界自体を盛り上げていけたらなと思いました。
ライブで視聴いただいた方も録画を観ていただけた方も本当にありがとうございました!
それでは次回の開催もお楽しみに!