やわらかテック

業務を通して得られた知見、知見。個人的に試してみたこと、興味のあることについてアウトプットしています。

怖いコードレビューを楽しくするために自分が使っている絵文字を集計してみた

コードレビューって...怖いんだって😢

いつものようにTwitterを徘徊していると、Rubyのチェリー本などで有名な伊藤淳一さんがこんなツイートをされていました。

コードレビューに関するツイートで、「テキストだと何を考えての指摘なのか、どういう理由でそう思ったのかが伝わらない、伝えられない」という事があるから大変だよねという意図のツイートだと受け取りました。これはおっしゃる通りで、中々、テキストだけだと自分の意図が伝えるのが難しいですし、思った事を全てテキストにしていては時間がいくらあっても足りません。

自分もコードレビューをする立場となりまして、この悩みは毎日感じてします。
その解決策の1つとして自分はコードレビューをする時は可能な限り、強い言葉、冷たい言葉だと相手に誤解を与えないように絵文字を添えるようにしています。絵文字を添える事でなんとなく雰囲気が明るくなるのです。ひと昔の情報の教科書にはWEBでコミュニケーションをする時は顔文字を入れようと記述されてしましたが、それはあながち間違いではありませんでした。

newspicks.com

絵文字とコミュニケーションをテーマにした論文もいくつか出ているようです。

世間一般のコードレビューのイメージ

いつものようにラッコキーワード(旧:関連キーワード取得ツール(仮名・β版))を使って、「コードレビュー」という単語とよく組み合わせて検索されている言葉を調べてみると以下のようになりました。

related-keywords.com

  • コードレビュー やり方
  • コードレビュー 観点
  • コードレビュー 怖い
  • コードレビュー 偉そう
  • コードレビュー 嫌い
  • コードレビュー 傷つく
  • コードレビュー うざい

などなど...
想像以上に多くの人がコードレビューに対してネガティブなイメージを持っているのだということが分かりました。元々、口調が強かったり圧の強い人の可能性もあるでしょうが、先ほど紹介したテキストだと思っていることが正確に伝わらないという問題も絡んでいそうですね🤔

普段自分が使ってる絵文字を紹介するぜ😎

自分のコードレビューを受けてもらっている人に少しでも楽しい雰囲気を伝えるために、絵文字を使うようにしていると先ほど紹介しました。ある日、ふと自分がどんなコードレビュー中にどんな絵文字をよく使っているのかなぁ...と気になりました。
自分がgithubPullRequestに対してコードレビューを行った際にしたコメントを全取得して、よく使っている絵文字を集計してみました。

集計方法

githubAPIを使って特定のレポジトリのPullRequestに対して投稿されたレビュー(コメント)を全件取得します。そこから自分がレビューした内容でかつ、絵文字が含まれているレビューのみを抽出します。残ったレビューの中から、それぞれの絵文字をカウントし、登場回数が多い順にソートして集計を完了します。

集計に用いたレポジトリは以下になります。一度しか使わないであろう書き殴りのコードです。

github.com

補足として、githubAPIは1回のリクエストにデータの取得件数にリミットがかかっており100件までしか取得する事が出来ません。なので、全データの取得が完了するまでページネーションを用いて再帰的にデータを取得し、.txtに内容を書き出しました。
合わせてデータの集計には手軽さを求めてpythonjupyter notebookを使用しました。

対象のエンドポイント 
GET: /repos/{owner}/{repo}/pulls/comments

集計結果🏅

対象となったレビュー件数は全部で517件で絵文字が含まれていたレビュー件数は180件でした。まずは上位5件の絵文字を発表していきます。
(なぜか♂という記号が結果に含まれていましたが、おそらく「🙇‍♂️ = 🙇♂」が原因だと思われます)

  • 1位: 🤔 -> 登場回数: 80
  • 2位: 🙇‍♂️ -> 登場回数: 51
  • 3位: 👍 -> 登場回数: 14
  • 4位: 👀 -> 登場回数: 12
  • 5位: 💪 -> 登場回数: 4

1位の「🤔」は予想通りでした。自分はよく相手に疑問を投げかける時にこの絵文字を使うようにしています。相手に「マウントを取りたいわけじゃないよ!」「何を考えてそうしたのか教えてほしい!」という思いを込めています。
2位の「🙇‍♂️」はタイポや軽微な修正をお願いする時にそっと添えるようにしている絵文字です。小さな修正でも指摘されて、修正しておいてねと一方的に言われると当人にとっては結構なストレスだったりします。別の作業に取り掛かっていた場合などは特にそうですね。忙しい中、悪いけど、お願いします!という思いを込めています。

残りの絵文字は「ナイス!いい感じだね!」というハッピーでポジティブな思いを伝える時に使用している絵文字ですね。季節や流行りによって使う絵文字が変わるので、集計してみると色々な絵文字が出てきました。

👵🍨🌸🤚🎉🕺🌮🍧🍏🧹🐝😂
🕺

(なんだこれ...)

総括🤓

こういった絵文字を使うことで暗くなりがちなコードレビューを少しでも楽しい雰囲気になればと思っています。
ただ、一番大事なのは絵文字でもなく、コードレビューをする側も、される側もお互いにリスペクトを持つということです。やってもらえるのが当たり前ではありません。その上でテキストでのコミュニケーションに気をつける事が出来れば、なお良しですね。

では、楽しいコードレビューを🙇‍♂️