Det er irriterende å gå bomtur, slik programvareutvikleren Rashid Zahid (24) gjorde i sommer da han besøkte en McDonald's-restaurant i Kreuzberg-distriktet i Berlin for å bestille en sundae-iskrem via selvbetjeningsautomaten, og fikk vite at iskrem ikke var tilgjengelig.
Han forsøkte også i mobilappen til McDonald's, men fikk samme resultat. Årsaken var trolig at iskremmaskinen til restauranten var ute av drift, noe som etter alt å dømme er et ganske utbredt problem.
Zahid kunne nok ha sjekket dette på forhånd ved å bruke den nevnte appen for å se om den aktuelle restauranten hadde iskrem, men bedre hadde det vært om han kunne få en oversikt over hvilke McDonald's-restauranter som har fungerende iskremmaskiner. Selv om det ikke er McDonald's-restauranter på hvert gatehjørne i Berlin, er det jo flere å velge mellom.
Tok saken i egne hender
En slik oversikt er ikke noe McDonald's tilbyr, men ifølge The Verge er Zahid glad i å kikke mobilapper i kortene. Blant annet studerer han sikkerhetsfunksjonalitet og interne API-er (programmeringsgrensesnitt).
Ved å studere hvordan mobilappen til McDonald's fungerer, lagde han først en «bot» som er i stand til å registrere statusen til alle iskremmaskinene til alle de rundt 1500 McDonald's-restaurantene i Tyskland.
Dette blir gjort via API-et som mobilappen bruker, hvor boten én gang forsøker å bestille en McSundae fra hver av de tilgjengelige restaurantene. Dersom det ikke er mulig å bestille, antas det at iskremmaskinen er ute av drift. I de tilfellene hvor det er mulig å bestille iskrem, avbryter boten bestillingen før den går gjennom.
Etter å ha fått til dette i Tyskland, hvor han bor, bestemte Zahid seg for å prøve det samme i hjemlandet til McDonald's, altså USA. Der er det langt flere restauranter – rundt 14.000 ifølge Zahid.
API-et til McDonald's har begrensninger knyttet til hvor ofte boten kunne utføre forespørslene. Da The Verge skrev om dette i forrige uke, var den satt opp til å gjøre dette hver halvtime. Mye tyder nå på at tempoet har blitt senket til én gang i timen.
Telia om nødnummer-anbud: – Ingen sjanse til å konkurrere mot Telenor
McBroken
Zahid har nemlig laget et eget nettsted som alle kan bruke for å få oversikt over fungerende og ikke-fungerende iskremmaskiner hos amerikanske McDonald's-restauranter. Den kalles for McBroken.
Tjenesten viser alle de amerikanske McDonald's-restaurantene på et kart, hvor de er markert med grønne og røde prikker, avhengig av om iskremmaskinen til restauranten er i drift eller ikke. For å hjelpe fargeblinde, så er de røde prikkene erstattet med kryss i listen som vises til venstre for kartet.
Enorm trafikk
Allerede 20 minutter etter at den ble lansert, hadde over 10.000 brukere vært innom.
Den Python-baserte tjenesten ble i alle fall i starten kjørt på en Sanic-basert webserver som koster 5 dollar i måneden. Det meste av de statiske ressursene blir derimot levert gjennom Nginx. Dette oppsettet skal i alle fall være nok til å håndtere 200.000 unike brukere, men det er uklart om Zahid med dette mente samtidige brukere.
I ettertid har regningene vokst betydelig. Bare utgiftene til kartet fra Mapbox skal ha alene ha passert et beløp med fem sifre (og da trolig i euro eller dollar). Zahid ber derfor om litt støtte til å holde tjenesten i gang.
Mac-brukere kan snart slippe «klipp og lim» fra Chat GPT
Fikk ros fra McDonald's
Noen virksomheter ville kanskje anmeldt Zahid for datainnbrudd, men det er ingenting som tyder på at McDonald's ser på dette som annet enn god PR. For det første fungerer tjenesten fortsatt etter mer enn en uke.
I tillegg har David Tovar, den amerikanske kommunikasjonsdirektøren i McDonald's, hyllet initiativet til Zahid på Twitter:
Dermed ligger det vel åpent for å gjøre noe lignende i Norge, hvis noen er interessert. Så lenge belastningen på datakildens servere ikke blir høy, bør det være mange tilfeller hvor det er i alles interesse at tilgjengelige data presenteres på nye måter.
Fem tips for å eie eksamen med KI