マクドナルドのソフトクリームマシンは故障しやすいことで悪名高く、2020年当時、顧客は店まで行かない限りマシンが故障しているかどうかを知る術がなかった。その年の10月、ドイツを拠点とするソフトウェアエンジニアのRashiq Zahid氏はMcBrokenを公開した。これは全米のマクドナルドを、アイスクリームマシンが動作しているかどうかに応じて緑または赤に色分けする地図だ。同氏の手法は、チェーンの内部注文APIをリバースエンジニアリングし、各店舗でマックサンデーをカートに追加しようと試みるというものだった。アプリが商品を受け付ければマシンは稼働中、拒否すれば故障中である。

このプローブには調整が必要だった。1分ごとのポーリングではアプリにボットと判定されてアクセスを遮断されたため、30分ごとにマックサンデーを追加することで地図を最新に保ちつつ、人間を探知する基準を通過できるようにした。Zahid氏はまずドイツのマクドナルド店舗から始め、ベルリン市内の店舗間を自転車で移動してMcBrokenのデータを現実と照合し、その後になって初めて米国に拡大した。それが描き出した状況は率直なものだった。執筆時点で全米のマシンの10パーセント弱が故障しており、ニューヨーク市では24パーセント近く、シアトルでは約20パーセント、ワシントンDC周辺ではおよそ14パーセントだった。

それ以前の試みとして、Raina McLeod氏が2017年に、叶わなかったマックフルーリーへの欲求をきっかけに作ったアプリがあったが、これはクラウドソースの報告に依存しており、ユーザーの質を超えることはできなかった。注文元に直接問い合わせることで、McBrokenのデータはより正確かつより最新になった。マクドナルドはこのプロジェクトに反対しなかった。広報・政府関係担当役員のDavid Tovar氏はZahid氏を公に称賛し、真のファンと呼ぶとともに、同チェーンが甘いスイーツに関して「改善の機会」があることを認めた。またBusiness Insiderは、フランチャイジーらが独自に修正策を模索していると報じた。

障害報告をクラウドソースするのではなく、注文APIをプローブする。アプリがアイスクリームをカートに追加できればマシンは動作しており、拒否すれば故障している。

注文アプリは事実上のマシン状態APIである。そのカートのロジックは、どの店舗がアイスクリームを提供できないかをすでに把握している。

合成されたカートはコストがかからず、常に新鮮である。ユーザーの関心とともに劣化するクラウドソースの報告とは異なる。

30分間隔というペース(頻度)が要だった。最新に保つのに十分速く、アプリに人間と見なされるのに十分遅い。

この地図は非難せずに晒す。注文アプリが各店舗についてすでに示唆していることを、ただ述べているだけだ。

企業が状態データを公開しない場合でも、その企業自身の取引インターフェースはそれを漏らす。対象が故障しているときにまさに失敗する、よく選ばれた1つのプローブは、人間の報告者の大群に勝る。

マクドナルドがこのボットに対して行動を起こすことはなかった。David Tovar氏はこの取り組みを公に称賛し(「これほどの労力をかけるのは真のマクドナルドファンだけだ」)、同社がより多くの顧客に甘いスイーツを満足させる機会を持っていることを認めた。Business Insiderは同じ月に、フランチャイジーらが自ら事態に対処し、マシンをより頻繁に稼働させ続けるための解決策を模索していると報じた。

出典をたどる

出典

  1. Bot orders $18,752 of McSundaes every 30 min. to find if machines are working Ars Technica · arstechnica.com ·