Studyplus Engineering Blog

スタディプラスの開発者が発信するブログ

リモートでのペアプロにはSlack Callが便利

こんにちは。ForSchool事業部の石上です。最近はおやつに杏仁豆腐をよく食べています。甘党ではないのですが、杏仁豆腐はちょうどいい甘さなので好きです。

今回は小ネタです。友だちのエンジニアにリモートでのペアプロのやり方を聞かれたため、せっかくならTechブログ記事にしようという感じです。

スクリーンショット 2020-04-18 17.15.47.png (118.7 kB)

ペアプロに使えそうなツール

ペアプロに使えそうなツールを考えたとき、まず以下のような選択肢が浮かびました。

  • VSCode拡張のLive Share
  • 画面共有ができる各種ビデオチャットツール

最初は、VSCodeのLiveShare拡張ならば相手のエディタに入り込むような体験でペアプロができるので良いと思いました。しかし、あるプロジェクトのペアプロをしているときに、ちょっとあっちのコードも確認しようと言って別のプロジェクトのディレクトリを開くと接続が切れてしまう問題がありました。

Studyplus for Schoolはいくつかのリポジトリに分かれているため、これが頻繁に発生するとつらいので、LiveShareでペアプロをするのはやめました。

どうしてSlack Callにしたか

そこで、他のものを使おうとなったときに、最も導入が手軽なのはSlack Callでした。普段会社で利用しているチャットツールがSlackだからです。利用するには、呼びかけたいチャンネルで通話を開始するだけです。

スクリーンショット 2020-06-24 10.35.09.png (119.2 kB)

Slack Callの良いところ

ふつうに使っていただけなので特筆することもないと思っていましたが、改めて考えてみると、良いところがいくつもありました。

  • 相手のスクリーンにお絵かきができる
  • Slack上で誰と誰が通話しているのかわかる

相手のスクリーンにお絵かきができる

ペアプロの際に嬉しいのはこれです。Slack Callでは、画面共有した相手のスクリーンに、お絵かきができます。これができると何が嬉しいかというと、2つあります。

  • 口頭だけでは説明しにくいことを図示して伝えられる
  • typoの指摘を一瞬で伝えられる

口頭だけでは説明しにくいことを図示して伝えられる

Slack Callを使うと、口頭だけでは説明しにくいことを図示して伝えられます。特にフロントエンドのコードを書いていてレイアウトの説明をするときとか、通信の流れを説明するときなどは、図示できるととても楽です。

スクリーンショット 2020-06-24 12.07.14.png (5.6 MB)

また、自分が説明している部分を囲って強調したり、そのソースコードの登場人物(変数や関数、型定義など)の関係性を伝えるのにも役立ちます。

誤記の指摘を一瞬で伝えられる

地味に嬉しいのが、タイポ(誤記)の指摘です。口頭だとこんなやり取りが発生します。

「あ、そのStudentsのところ、単数形が正しいです。sが多い。あ、ええと、今開いているファイルの真ん中のあたりの....あ、もうちょっと上です。そこそこ。」

お絵かきができれば、その箇所を丸で囲って「あ、ここタイポですね」で済みます。

スクリーンショット 2020-06-24 12.09.09.png (4.0 MB)

Slack上で誰と誰が通話しているのかわかる

また、ペアプロとは少しずれますが、これも嬉しいポイントでした。弊チームは4人のエンジニアが在籍しています。二手に分かれてペアプロをするタイミングがあったのですが、自分がペアプロしている相手以外の2人がペアプロをしているのか、ほかのことをしているのかがわかります。

そうすると、聞きたいことがあったときに、簡単なことであればペアプロしているところに入っていって、ちょっといいですかといって聞いてしまうこともできます。

まとめ

ペアプロをやる理由はチームや状況によって様々でしょうが、私は暗黙知を効率的に伝えるために必要に応じてやるべきものだと考えています。

そういう意味で、わかりづらい概念を図示してわかりやすくしたりタイポのような説明の不要な指摘を一瞬で終わらせられるSlack Callは、とても便利だと思いました。