Bygde lojalitets- og omdømmesystemet — 67 funksjoner over en hovedbok på 31 tabeller, med ligaer, merker og en innløsningsbutikk — med radlås på saldoen for å lukke vinduet for dobbeltforbruk.
Arbeidet utført: 2025
67 funksjoner over en lojalitetshovedbok på 31 tabeller
Situasjon. Profesjonell nettverksbygging har et kaldstartproblem: plattformen er verdt å bruke når andre allerede bruker den, og inntil da er det liten grunn til å komme tilbake. Den vanlige spaken er et belønningssystem — poeng for bidrag, status som gjenspeiler omdømme — som er lett å beskrive og lumsk å bygge, fordi i det øyeblikket poeng kan brukes, er de penger, og alle feilene som kan gjøres med penger, kan også gjøres her.
Oppgave. Bidrag måtte kunne måles og belønnes, med en saldo som ikke kunne brukes to ganger.
Handling. Lojalitetsskjemaet består av 31 tabeller og 67 funksjoner, med status i ytterligere 5 tabeller og 32 funksjoner, og skjemaer for oppdagelse og personalisering ved siden av som avgjør hva et gitt medlem ser. Oppå poengregnskapet ligger ligaer, merker og en innløsningsbutikk der en saldo blir til noe ekte. Delen som krevde omhu, er den eldste feilen i boken: sjekk saldoen, bruk den deretter, og to forespørsler som kommer samtidig, passerer begge sjekken. Hver endring tar en radlås på lommeboken før den leses, slik at den andre forespørselen venter til den første er ferdig i stedet for å kappes med den. At lommeboken ligger i den samme databasen som alt annet, er det som i det hele tatt gjør det mulig — saldoen og det den kjøpte, committes sammen eller ikke i det hele tatt.
Resultat. Bidrag blir målt og belønnet, og en saldo er aritmetikk i stedet for en tilnærming. Radlåsing er det tregere svaret og ble valgt likevel: konkurranse om en lommebok betyr at skrivingene må vente på tur, og alternativet er et medlem som bruker de samme poengene to ganger og noen som må avstemme det for hånd etterpå.
Se tilbake på Implementerte en katalogstyrt deep merge av lagrede JSON‑innstillinger, som forhindrer krasj ved manglende nøkler når skjemaet utvikler seg. Eller ta en titt på hele porteføljen.
Ett stykke av en lengre oversikt — og den ligger i sin helhet her.
Hver oppføring er skrevet på samme måte: situasjonen, oppgaven, hva vi gjorde, og hva som endret seg.