Firefoxの拡張機能でGitHubのプルリクエストを匿名化し、コードレビュー時の性別や人種などによるバイアスを取り除く実験開始。ソフトウェア分野のダイバーシティに向け
コードレビューを行うときには、それが誰が書いたコードであろうともコードの品質そのものにフォーカスされるべきです。しかし現実には、コード作者の性別、年齢、国籍や人種などから、もしかしたらレビュアーは何らかのバイアスを持ってコードレビューをしてしまうかもしれません。
Mozillaは、コードレビュー時に作成者の名前をあえて隠すことで、コードレビュアーのバイアスを取り除く実験をしていると、ブログ「Mozilla experiment aims to reduce bias in code reviews」で書いています。
The experiment has two parts: there’s an effort to build an extension for Firefox that gives programmers a way to anonymize pull requests, so reviewers will see the code itself, but not necessarily the identity of the person who wrote it. The second part is gathering data about how sites like Bugzilla and GitHub work, to see how “blind reviews” might fit into established workflows.
この実験は2つの部分に分けられています。1つ目は、Firefoxのエクステンションを開発するもので、これはプルリクエストを匿名化することで、レビュアーはコードそのものに注目するようにしようとしています。ただし、必要に応じてだれが作者であるかを明示することもできるようになっています。
2つ目は、BugzillaやGitHubにおけるデータ収集作業であり、こうした「ブラインドレビュー」が既存のワークフローに適合するかどうかも大事な視点です。
開発中のFirefoxアドオンのプロトタイプでは、BugzillaのレビューリクエスタとGitHubのプルリクエスト作成者のIDを書き換えて匿名かできるようになっているとのこと。
ソフトウェア開発におけるダイバーシティの取り組み
これは3月8日の「International Women's Day」(国際女性の日)に合わせた取り組みです。
Mozillaのブログによると、この実験は1970年代に米国の交響楽団で始まった「ブラインドオーディション」に着想を得たとのこと。ブラインドオーディションとは、交響楽団員を採用するためのオーディション時に、演奏者の姿が見えないようにスクリーンの向こう側で演奏してもらうこと。
こうしてオーディションの際に性別や人種などのバイアスを排除したところ、1990年代にはそれまで10%だった米国の女性楽団員の割合は35%にまで上昇したとのことです。
ソフトウェア開発の分野でも同様のことが起こせるのではないかとMozillaは指摘します。
For decades, white men have dominated the ranks of software developers in the U.S. But that’s starting to change. The question is, how can we deal with biases that have been years in the making?
過去数十年、米国のソフトウェア開発者は白人男性が支配的だった。しかしこれは変わりつつあります。問題は、こうして何年にもわたって作られてきたバイアスに私たちはどう対処できるのか、ということです。
日本でもソフトウェア企業のグローバル化は進んでいますので、こうしたダイバーシティへの取り組みは注目されるべきでしょう。
また、日本でのもう少し身近な例を考えてみると、先輩後輩関係にある開発者のコードレビューや、社内開発者と社外開発者のあいだでのコードレビューでは、なんらかのバイアスや忖度が働く場面かもしれません。ここへ、いずれ公開されるであろうFirefoxの匿名化エクステンションを採用すると、もしかしたらより健全なレビューが期待できるのではないでしょうか?
あわせて読みたい
JavaScriptのコードとService Workerをユーザーに近いCDNのエッジで実行可能。Cloudflareが「Cloudflare Workers」を提供開始
≪前の記事
Cassandraのストレージエンジンを入れ替えて高速化した「Rocksandra」、Instagramがオープンソースで公開。Javaのガベージコレクションによる遅延を大幅に解消