Motorvei, ikke nåløye
Sniktitt #002
Når systemet tar jobben
I Sniktitt #001 viste vi hvordan BlokkSkatt er bygget for å håndtere adresser i bulk.
Importflyten bør ikke være en flaskehals. Den bør være en motorvei.
Dette er ikke et isolert valg.
Det er et førende prinsipp for hele arkitekturen vår:
👉 hvorfor begrense brukerens evne til å bevege seg raskt og effektivt, når teknologien enkelt kan gjøre det motsatte?
Én fil om gangen er ikke et sikkerhetstiltak. Det er en designsvikt.
La oss være konkrete.
Hvis en bruker har:
-
25 filer
-
fra flere år
-
fra flere ulike børser
hvorfor skal vedkommende tvinges til å:
-
laste opp én og én fil
-
via separate inngangsporter
-
der importen feiler hvis “feil” fil lastes opp?
Dette er ikke brukerbeskyttelse.
Det er en unødvendig begrensning.
Når man i stedet kan designe en løsning der brukeren:
-
laster opp hele rukla
-
lar systemet automatisere så mye som mulig
-
og først konsulteres kun når systemet faktisk ikke kan finne ut av det på egen hånd
Virkeligheten er rotete. Dataen er det også.
Ulike børser tilbyr ulike eksportfiler.
Noen er gode. Noen er mangelfulle. Noen er direkte misvisende.
Avgifter kan mangle.
Felter kan være feil.
Tidsstempler kan være inkonsistente.
Og likevel:
Selv mangelfull dokumentasjon kan inneholde kritisk og verdifull informasjon.
Problemet er at det ikke finnes noen uttømmende felles standard for hvordan børser eksporterer transaksjonsdata.
Å bygge systemer som forutsetter det, er å bygge på ønsketenkning.
Maksimal data slår “perfekt” data
Hos BlokkSkatt har vi bevisst valgt bort idéen om at data må være perfekt for å være nyttig.
I stedet har vi bygget systemet rundt ett grunnprinsipp:
maksimal informasjonsmengde først, raffinering etterpå.
Vi bruker deterministiske identifikasjonsmønstre som gjør oss i stand til å ta imot:
-
hvilke som helst av filene børsene tilbyr
-
uavhengig av format, struktur eller detaljeringsgrad
Når en fil lastes opp, registreres og populeres dataen i den grad det lar seg gjøre.
Selv når dokumentasjonen er mangelfull, sitter vi da igjen med en minste informasjonsmengde om brukerens aktivitet, liv og laden på den aktuelle børsen.
Deretter skjer følgende:
-
vi sammenligner ny data med eksisterende historikk
-
finnes det allerede en transaksjon
-
og den nye filen inneholder mer eller bedre informasjon
➡️ da berikes og oppdateres den eksisterende transaksjonen.
Over tid gir dette:
-
maksimal datadekning
-
minimal duplisering
-
en historikk som kontinuerlig forbedres
Der vi av erfaring vet at data fra enkelte børser ofte er mangelfull, stopper vi ikke der.
Da etterspør vi annen type dokumentasjon fra brukeren, og bruker denne til å forbedre og komplettere eksisterende data ved senere opplastninger.
Dette er ikke bare et teknisk valg.
Det er også et risikovalg.
Også når børsen forsvinner
Dette er viktigere enn mange tror.
Kryptobørser kan gå konkurs.
De kan bli stengt.
De kan forsvinne over natten.
Det har skjedd før.
Og det kan skje igjen.
Når det skjer, sitter brukeren ofte igjen med ingenting.
Ingen tilgang. Ingen eksport. Ingen historikk.
Med mindre dataen allerede er bevart.
Det er nettopp derfor vi prioriterer maksimal datainnhenting, selv når dokumentasjonen er ufullstendig.
For selv mangelfull data kan være forskjellen på ingen historikk og tilstrekkelig historikk.
Hos BlokkSkatt arkiveres all tilgjengelig informasjon fortløpende.
Dataen forbedres over tid, men den forsvinner ikke.
Resultatet er at brukeren beholder:
-
full historikk
-
full etterprøvbarhet
-
full kontroll
Også når børsen ikke lenger eksisterer.
Når systemet ikke vet – later vi ikke som
Hvis en bruker laster opp en fil systemet vårt ikke gjenkjenner:
-
importen feiler ikke stille
-
filen ignoreres ikke
-
brukeren overlates ikke til seg selv
Filen flagges for manuell gjennomgang.
Automatisering betyr ikke å lukke øynene.
Det betyr å vite når man skal stoppe.
Oppsummert
Bulk-import handler ikke bare om bekvemmelighet.
Det handler om realisme.
Virkelige brukere har rotete data.
Virkelige brukere har mange filer.
Virkelige brukere fortjener systemer som tåler det.
Og igjen:
👉 vi tar arbeidsbyrden.