「プログラムの修正を送るとTシャツがもらえる」キャンペーンが開発者に迷惑がられる理由とは?
ドイツで10月ごろに行われる世界最大規模の祭りであるオクトーバーフェストにちなんで、DigitalOceanが毎年10月に開催している「Hacktoberfest」は、GitHubの公開リポジトリにプルリクエストを4つ送ると先着5万人にTシャツが贈られるキャンペーンです。そんなHacktoberfestについて、GoogleのエンジニアであるDomenic Denicola氏が「オープンソースコミュニティに対する企業主導のDDoS攻撃だ」と指摘しています。
DigitalOcean's Hacktoberfest is Hurting Open Source
https://blog.domenic.me/hacktoberfest/
Hacktoberfest presented by DigitalOcean
https://hacktoberfest.digitalocean.com/
2020年のHacktoberfestが始まってから、Denicola氏のGitHubプロジェクトに多くのスパムプルリクエストが届いているとのこと。こうしたTシャツ欲しさによるスパムリクエストが大量に届くため、Denicola氏はひとつひとつのプルリクエストを確認し、スパムの場合はスパムのタグ付けを行い、GitHubに報告するという作業に時間を費やしていると語っています。
スパムにあたるプルリクエストの例がこれ。「Improved Docs」と題するこのプルリクエストは、ドキュメントに「### Great Work」と追記しているだけのものです。Hacktoberfestの開催元であるDigitalOceanもこの問題を認識しているそうですが、HacktoberfestのFAQには「スパムプルリクエストを見つけた場合は、スパムタグを付けてリクエストを閉じてください」と記載されており、リポジトリの管理者にスパムへの対処を一任している状況です。
Denicola氏の「ああ、10月が始まった」というツイートには、「「楽しんでいないようで残念です。HacktoberfestでTシャツを獲得をさせないためにタグ付けするか、なんならリポジトリをHacktoberfestから除外するのも手です」というリプライなど、同情の声が多数寄せられています。
???? Sorry to see you're not having a good time. Please do label any spammy PRs as invalid so that they don't count toward folks winning Hacktoberfest. If you want, we can also exclude the repository from Hacktoberfest completely, so that no PRs submitted there will count.
— Matt Cowley ???????? (@MattIPv4) September 30, 2020
Hacktoberfestに扇動されたスパム行為をまとめているTwitterアカウント「#shitoberfest」は、2020年10月に開設されたばかりにもかかわらず、3000人以上のフォロワーを集めており、Hacktoberfestを迷惑に思っている人が少なからず存在することがわかります。
また、チャンネル登録者数60万人を超えるYouTuber「CodeWithHarry」氏によって投稿された「プルリクエストを簡単に送る方法」を解説したムービーが、スパムプルリクエストを行うハードルを低くしてしまったとの指摘も。記事作成時点ではムービーは非公開となっています。
This YouTuber with 672K subscribers is encouraging his viewers to spam repos with LOW QUALITY PRs for #hacktoberfest
— Joel Thoms ???? JavaScript (@joelnet) October 1, 2020
That's a ???? from mehttps://t.co/JOdgEQno43 pic.twitter.com/irKkf1GLMG
こうしたスパムプルリクエストに対し、Denicola氏は3つの対処方法を提案。ひとつ目はプルリクエストにスパムラベルを付け、「[email protected]」にメールを送るという正攻法ですが、時間と労力がかかります。
新規ユーザーからのプルリクエストを無条件に拒否することに抵抗がないなら、一時的にプルリクエストやコメントを制限するインタラクション制限機能を利用するのも有効とのこと。これまでは最長でも24時間までしか制限を有効にできませんでしたが、Hacktoberfestのタイミングを見計らったかのように、GitHubは制限の有効期間を最長6カ月間まで延長したと発表しています。
Need to take a break, or limit which people can send a pull request to your repo?
— GitHub (@github) October 1, 2020
You can now limit interactions for a period of time. Find it in your project settings › moderation settings › interaction limits. pic.twitter.com/ZCvQqBczVY
最後の手段は管理者個人で行うことはできませんが、GitHub自体がDigitalOceanからのAPIアクセスを遮断するというもの。Denicola氏は「DigitalOceanはGitHubを不快な場所にしているのは確かです。GitHubがオープンソースコミュニティに対するこのような企業主導の攻撃を抑制する方法を真剣に考えてくれることを期待しています」とコメント。
Denicola氏は「Hacktoberfestはオープンソースを支援するものではなく、オープンソースの管理者を炎上させるものだ」と語っています。
・関連記事
全世界で送られたメールの97%以上がスパムメールであることが判明 - GIGAZINE
スパムメール生誕30周年記念、世界初のスパムメールは一体何だったのか? - GIGAZINE
迷惑メールだと分かっていても面白いネタを共有する「SPAM MUSEUM」 - GIGAZINE
法律をGitHubのプルリクエスト機能を使って修正するその一部始終が公開中 - GIGAZINE
・関連コンテンツ