Østrisk koder bygger værktøj til statistisk sammenligning af dagligvarepriser, og afslører samtidig en meget sandsynlig, systemisk stiltiende koordination af priserne - eviltoast

Super spændende forløbsbeskrivelse af hvordan østrigske Mario Zechner (@badlogic@mastodon.gamedev.place) fik nok af regeringens tomme løfter om et “kig på dagligvarepriserne”, og på 2 timer havde første version af en prissammenligner stykket sammen, fangede mediernes opmærksomhed, gjorde den relevante minister til grin, og afslørede meget sansynlig stiltiende samarbejde (†) omkring priserne.

Jeg har selv været lidt skeptisk omkring den nuværende inflation (greedflation?) af dagligvarepriser (††), og samtidig super frustreret over udbredelsen (måske nærmere eskaleringen?) af ‘shrinkflation’ (†††). Men det er vildt svært at regne ud hvad man skulle kunne gøre selv, både fordi man måske - som jeg selv - ikke er programmør, og fordi man ikke ved hvor man skal starte.

Enormt forløsende at læse om Marios (overvejende) succes på området (med ministeriske benspænd, selvfølgelig…), og der er allerede mange forks af projektet for at tilpasse det andre landes indkøbsmuligheder (har dog ikke fundet en dansk fork endnu).

Tænk hvis vi kunne få adgang til den data for Danmark! Men ak, tror det kan blive en smule svært at genbruge dette projekt, da vi stort set ikke har nogen supermarkeder der er online, og jeg ikke ved om man overhovedet kan få adgang til deres API (et krav for at HeissePreisse kan fungere).

Så vidt jeg kan se er der kun:

Kan også være Danmark er for lille til at man overhovedet ville kunne gøre noget hvis man fik dataen, men synes tanken er interessant. Er der nogen af jer der ved om den slags data er tilgængelig (næppe, men skader ikke at spørge)? Andre idéer til hvad man kan gøre, om noget?

Er desuden også interesseret i hvordan man kunne forsøge at tackle overemballering og unødvendig brug af plast i emballage i dagligvarer - sig endelig til hvis der er nogen der har hørt om nogen projekter på det område!

. . . . . .

Update 1

De tre butikker jeg nævnte har alle en API, men to af dem bruger POST uden den relevante query i URL’en, og ser ud til at det er ud over mit niveau at tilpasse koden til at kompensere for dette.

Den sidste bruger GET til at snakke med sin API, med søgningen synlig i URL og det hele, men jeg får nogle fejl når jeg kører den tilpassede kode, og indtil videre har jeg ikke fundet en løsning.

Tror jeg prøver at skrive til Mario for at høre om han har idéer til hvordan man kommer ud over de to issues. Umiddelbart ville det hele være nemmere hvis der bare var en enkelt fil per butik man skulle tilpasse, baseret på en simpel skabelon, men det er ikke helt tilfældet.

Hvis der er nogen der har lyst til at give det et skud er det Nemlig.com der lader til at være den bedre kandidat, selvom jeg tænker at det må være muligt med alle tre.

Det er måske også værd at nævne at selvom der er tale om offentligt tilgængelig data ved jeg ikke om butikkernes TOS brydes, og der dermed kunne være juridiske konsekvenser.

. . . . . .

Hovedlink er en roll-up af denne Mastodon-tråd: https://mastodon.social/@badlogic@mastodon.gamedev.place/111071396843370282

Projektet på GitHub: https://github.com/badlogic/heissepreise

. . . . . .

Stiltiende samarbejde / koordinering: jeg kunne ikke finde på en bedre oversættelse. Fra den originale tråd:

“…tacit collusion, meaning, oligopolic price coordination without explicit coordination.”

†† Relevant artikel om inflation/greedflation fra Cory Doctorow: Look at all the great stuff we lost because of inflation scare-talk (pluralistic.net)

††† Shrinkflation (også kaldet ‘downsizing’): inflation der skjules ved at mindske varens mængde/indhold, typisk uden at ændre på emballagens størrelse, og stadig sælge den til samme pris.

Eksempel: Kleenex Balsam box:

  • renard_roux@beehaw.orgOP
    link
    fedilink
    arrow-up
    4
    ·
    1 year ago

    Fandt denne artikel omkring hvordan man kan lokalisere endpoint for en API via eks. Chromes Dev Tools, viser sig at det slet ikke er svært, selv hvis man ikke er ‘koder’ 😅

    Indtil videre ser det umiddelbart ud til at Rema1000 har en tilgængelig API, så one down, three to go? 🤔

    {
      data: {
        id: 70718,
        name: "MÆLKE CHOKOLADEKIKS",
        underline: "125 GR. / REMA 1000",
        age_limit: null,
        hazard_precaution_statements: [],
        labels: [
          {
            id: 2,
            name: "REMA1000",
            image: "https://d15493jtiio2fp.cloudfront.net/product/labels/2-64.webp",
          },
          {
            id: 95,
            name: "Rainforest Alliance",
            image: "https://d15493jtiio2fp.cloudfront.net/product/labels/95-64.webp",
          },
        ],
        description: "Kiks med m\u00e6lkechokoladeMed 63 % m\u00e6lkechokolade med mindst 30 % kakaot\u00f8rstof.",
        info: "",
        nutrition_info: [
          {
            name: "Energi",
            value: "  2.103 KJ /   502 kcal",
          },
          {
            name: "Fedt",
            value: "  24",
          },
          {
            name: "Heraf m\u00e6ttede fedtsyrer",
            value: "  14",
          },
          {
            name: "Kulhydrat",
            value: "  63",
          },
          {
            name: "Heraf sukkerarter",
            value: "  39",
          },
          {
            name: "Kostfibre",
            value: "  2,9",
          },
          {
            name: "Protein",
            value: "  7,1",
          },
          {
            name: "Salt",
            value: "  0,78",
          },
        ],
        declaration: "31 % sukker, 26 % <b>hvedemel</b>, 13 % kakaosm\u00f8r*, 9 % kakaomasse*, 8,4 % <b>skummetm\u00e6lkspulver</b>,<br>3,8 % <b>sm\u00f8r</b>, 3,4 % <b>vallepulver</b> (af <b>m\u00e6lk</b>), 2,8 % koncentreret<br><b>sm\u00f8r</b>, glukosesirup, <b>laktose</b> (af <b>m\u00e6lk</b>),  emulgator (E 322<br>vegetabilsk), h\u00e6vemidler (E 500, E 450), salt, <b>s\u00f8dm\u00e6lkspulver</b>, naturlig vaniljearoma, naturlig vaniljearoma med andre naturlige aromaer, <b>\u00e6ggeblommepulver</b>, syre (E 330).",
        images: [
          {
            small: "https://d2dql7oeescq6w.cloudfront.net/70718/1-small-2B947evqkM.webp",
            medium: "https://d2dql7oeescq6w.cloudfront.net/70718/1-medium-2B947evqkM.webp",
            large: "https://d2dql7oeescq6w.cloudfront.net/70718/1-large-2B947evqkM.webp",
          },
        ],
        prices: [
          {
            price: 12,
            price_over_max_quantity: null,
            max_quantity: null,
            is_advertised: false,
            is_campaign: false,
            starting_at: "2023-02-02T00:00:00+00:00",
            ending_at: "2099-12-31T00:00:00+00:00",
            deposit: null,
            compare_unit: "kg",
            compare_unit_price: 96,
          },
        ],
        warnings: [],
        temperature_zone: null,
        is_self_scale_item: false,
        is_weight_item: false,
        is_available_in_all_stores: true,
        is_batch_item: false,
      },
    }
    
    

    Har stadig lidt svært ved at se værdien i at sammenligne Rema, Bilka og Nemlig, men prøver alligevel at se om jeg kan få det til at virke.