Del prosjektet · kapittel 12
Kvalitets- og autonomiregnskapet
Blir portalen gradvis bedre, mer automatisert og mer selvgående? Her er tallene som svarer på det, med forbeholdene som gjør dem verdt å lese.
Hva regnskapet er, og hva det ikke kan svare på
Portalen er bygget av én person med en språkmodell som medarbeider. Et rimelig spørsmål er da om det faktisk blir bedre over tid, eller bare mer. Dette kapitlet er forsøket på å svare med tall framfor med følelse.
To ord går igjen. Automatisert betyr at noe skjer av seg selv etter en fast oppskrift. Agentisk betyr noe mer: at det velger selv hvordan oppgaven skal løses, og kommer i mål uten at et menneske godkjenner hvert skritt. Forskjellen er ikke akademisk, og den er lett å pynte på, så den har fått sine egne kriterier lenger nede.
Fire forbehold som gjelder alt du leser her
Antall fangede feil sier ikke om kvaliteten stiger
Flere fangede feil kan bety at det bygges dårligere, eller at det oppdages bedre. De to ser identiske ut i en graf. Det som er ærlig målbart, er HVOR feilen blir fanget, og en flytting fra «leseren fant det» mot «en sjekk stoppet det» er den reelle forbedringen.
Ingenting telles uten en nevner
Mer aktivitet gir flere av alt. Et tall per måned sier lite hvis måneden var dobbelt så travel som forrige.
Null omgjort arbeid er ikke et mål
At noe må gjøres om etter en gjennomlesing, er systemet som virker. Et regnskap som belønner null, belønner å slutte å se etter.
Tomt er tomt
Der grunnlaget mangler, står det at det mangler. Ingen erstatningstall uten at det er sagt at det er et erstatningstall.
Tre nivåer: automatisert, assistert, agentisk
Alt som kjører her, er plassert på ett av tre nivåer. Plasseringen avgjøres av tre spørsmål med ja- eller nei-svar, ikke av hvor avansert noe høres ut.
| Test | Spørsmålet |
|---|---|
| Steg-testen | Kan stegrekkefølgen skrives ned på forhånd? Ja, da er den automatisert, også om ett av stegene er å be en modell om prosa. |
| Menneske-testen | Når noe fram uten at et menneske har godkjent det underveis? Nei, da er den høyst assistert. |
| Variasjons-testen | Gir to ulike inndata to ulike handlingsrekker? Nei, da er den ikke agentisk. |
Regelen som gjør størst forskjell: en fast oppskrift blir ikke agentisk av å spørre en språkmodell underveis. En betingelse er ikke handlingsrom. Det er en ubehagelig regel, fordi den flytter flere av de mest imponerende delene ned et hakk, og det er nettopp derfor den står her.
automatisert
17
av 22 mekanismer
assistert
1
av 22 mekanismer
agentisk
4
av 22 mekanismer
10 av de 22 mekanismene har en språkmodell inne i seg, men bare 4 er agentiske. Det er hele forskjellen mellom å bruke en modell og å gi den handlingsrom, uttrykt i to tall.
Alle 22 mekanismene
Dette er listen resten av kapitlet teller på. Hver rad er en mekanisme som gjør noe av seg selv, med nivået den fikk, hvor langt den får lov til å endre noe, og begrunnelsen for plasseringen.
| Mekanisme | Nivå | Rekkevidde | Hvorfor den havnet der |
|---|---|---|---|
| Datahenting til portalenHenter tallene fra de offentlige registrene og legger dem ut. | automatisert | prod | Stegrekkefølgen er den samme hver gang, og uventet inndata gir stopp framfor et nytt valg. |
| Uttrekk fra statistikkbankenHenter tabellene som ikke har et åpent grensesnitt. | automatisert | repofil | Fast oppskrift. Resultatet ligger i kodelageret til neste kjøring plukker det opp. |
| Innlasting til datalageretLegger rådata uendret inn i datalageret. | automatisert | internt | Henter, laster, avslutter. Ingen steg velges underveis. |
| Sammendrag av datalageretLager et overblikk over tallene, med en setning prosa per tabell. | automatisertmed modellsteg | internt | Det tydeligste eksempelet på regelen: en modell skriver prosaen, men den gjør det på det samme steget hver gang, i en rekkefølge som er kjent på forhånd. Automatisert bruk av en modell er ikke det samme som en agent. |
| NyhetsbildetLeser nyhetsstrømmen og finner ut hvilke temaer som er aktuelle nå. | automatisert | repofil | Regelstyrt fra ende til ende. Ingen modell er involvert. |
| ArtikkelutkastSkriver et utkast fra en bestilling, og finner et bilde til det. | automatisertmed modellsteg | repofil | En modell gjør det skrivende arbeidet, men stegene rundt er faste: les bestillingen, be om tekst, sjekk den, lagre. Den velger ikke hva den skal gjøre, bare hva den skal skrive. |
| Publisering av artikkelLegger et ferdig utkast ut på nettstedet. | automatisert | prod | Fast oppskrift, men den starter aldri av seg selv: et menneske peker ut hvilken artikkel som skal ut. Det er den viktigste av de bevisste grensene. |
| InnholdsplanForeslår hva som bør dekkes framover, og sjekker at forslagene henger sammen. | automatisertmed modellsteg | repofil | Fire faser i fast rekkefølge med et modellsteg i midten. Den forgrener seg, men en betingelse er ikke handlingsrom. |
| IdébankenForeslår innholdsideer ut fra signaler, og holder status på dem oppdatert. | automatisertmed modellsteg | internt | Samme form som utkastene: fasene er kjent på forhånd, og modellen fyller ett av dem. At den kan opprette en side når ingen passer, er en betingelse, ikke et valg av steg. |
| KodesjekkStopper en endring som bryter med reglene, før den kommer inn. | automatisert | ingenting | Samme sjekker i samme rekkefølge, hver gang. Den endrer ingenting, den stopper. |
| ForeldelsesvaktSier fra når et datasett ikke er oppdatert på en stund. | automatisert | internt | Fast regel, fast utdata. Den fører opp arbeid, den utfører det ikke. |
| Vakt for datalageretVarsler før en nøkkel til datalageret går ut, og når en av jobbene der har feilet eller ikke kjørt på over åtte dager. | automatisert | internt | Faste regler mot faste terskler: dager igjen på nøkkelen, dager siden siste vellykkede kjøring. |
| HendelsesloggenLeser dagboka over hva som gikk galt underveis, gjør den om til tellbare tall, og vedlikeholder en oversikt i kunnskapsbasen over det den selv har fanget. | automatisert | repofil | Leser, validerer, skriver. En ukjent verdi gir stopp framfor et skjønn. Den skriver på en annen side enn den leser, og aldri en føring - dagboka er menneskets. |
| Måling av spørresvareneMåler kvaliteten på svarene fra spørreflaten mot datalageret. | automatisertmed modellsteg | internt | En modell vurderer svarene, men målingen er den samme hver gang og ender i et tall, ikke i en handling. |
| Dokumentasjon som holder seg selvRegenererer oversikter, tallgrunnlag og endringslogg fra registrene. | automatisert | repofil | Utledet av registrene. Endres et register, endres dokumentasjonen, uten at noen velger noe. |
| Utlegging av nettstedetBygger nettstedet og legger det ut. | automatisert | prod | Ett steg, ingen valg. |
| Rydding i datalageretFjerner testområder som ikke lenger er i bruk. | automatisert | internt | Fast regel for hva som skal bort. |
| Vanlig utviklingsøktArbeidet som gjøres med en modell som medarbeider, med et menneske ved siden av. | assistertmed modellsteg | leveranse | Modellen gjør arbeidet, men planen godkjennes før noe bygges, og hvert steg godkjennes underveis. Den består ikke menneske-testen, og det er meningen. |
| Køen av godkjente planerTar godkjente planer én for én og bygger dem ferdig uten tilsyn. | agentiskmed modellsteg | leveranse | Velger selv hvordan planen skal løses og håndterer det uventede underveis. Mennesket står før og etter, ikke i hvert steg. |
| NattkjøringBygger flere oppgaver parallelt gjennom natten, hver i sitt eget miljø. | agentiskmed modellsteg | leveranse | To ulike oppgaver gir to ulike handlingsrekker. Den leverer uten et menneske i noe steg, men aldri lenger enn til en leveranse som må leses. |
| Uavhengig gjennomlesingLeser en endring utenfra og melder det den finner. | agentiskmed modellsteg | ingenting | Velger selv hva den skal se på og hvordan den skal etterprøve det. Den endrer ingenting, og det er nettopp derfor den kan slippes løs. |
| Spørreflate mot datalageretSvarer på spørsmål om tallene, stilt med vanlige ord. | agentiskmed modellsteg | ingenting | Velger selv hvordan spørsmålet skal oversettes til et oppslag. Den svarer, og det er alt den kan gjøre. |
Hva hver mekanisme får lov til å endre
Nivået alene flater ut noe vesentlig. En spørreflate som svarer på spørsmål, og en nattkjøring som bygger ferdig en oppgave, er begge agentiske. Den ene endrer ingenting, den andre leverer noe et menneske må lese gjennom. Uten en akse til blir «agentisk» et honnørord.
Nivå mot rekkevidde
Alle 22 mekanismene| Nivå | ingenting | internt | repofil | leveranse | prod | Alle |
|---|---|---|---|---|---|---|
| automatisert | 1Kodesjekk | 7Innlasting til datalageret, Sammendrag av datalageret, Idébanken, Foreldelsesvakt, Vakt for datalageret, Måling av spørresvarene, Rydding i datalageret | 6Uttrekk fra statistikkbanken, Nyhetsbildet, Artikkelutkast, Innholdsplan, Hendelsesloggen, Dokumentasjon som holder seg selv | - | 3Datahenting til portalen, Publisering av artikkel, Utlegging av nettstedet | 17 |
| assistert | - | - | - | 1Vanlig utviklingsøkt | - | 1 |
| agentisk | 2Uavhengig gjennomlesing, Spørreflate mot datalageret | - | - | 2Køen av godkjente planer, Nattkjøring | - | 4 |
| Alle | 3 | 7 | 6 | 3 | 3 | 22 |
Tabellen sier noe som er verdt å stanse ved: det som når lengst ut, er det som velger minst selv. Alt som treffer leseren direkte, er faste oppskrifter uten et eneste valg underveis. Det agentiske stopper ved en leveranse som må leses, eller ved et svar som ikke endrer noe. Det er ikke en tilfeldighet, det er der grensene er trukket.
Det som ikke er agentisk, og hvorfor
4 ting kunne vært overlatt til maskinen, og er det ikke. Alle er valgt bort med vilje, ikke noe som bare ikke er bygget ennå.
Sammenslåing til hovedgrenen
Det siste steget før noe er felles eiendom, krever et menneske.
Publisering av innhold
Utkast skrives uten tilsyn, men et menneske peker ut hva som faktisk går ut.
Opprettelse av oppgaver
Køen er menneskekurert. Å la systemet opprette oppgaver selv, fra signaler om utdatert innhold, ble vurdert og forkastet: kontroll over hva som kjøres veier tyngre enn minuttene det sparer.
Endring av kjøreplanen selv
Det som styrer de faste jobbene, er utenfor rekkevidde for det som kjører i dem.
Hvor mye som holder seg selv i gang
Automatiseringsgraden er den enkleste av de tre aksene å måle, fordi alt her er tellbart fra registrene. Ingen av tallene under er skrevet inn for hånd.
Datasett med egen jobb
64 %
121 av 190 oppdaterer seg selv
Faste kjøringer
22
av 33 jobber i alt
Voktere
12
sjekker som kan stoppe en endring
Testfiler
135
kjøres ved hver endring
De 69 datasettene uten egen jobb er ikke forsømmelser. Noen kilder gir bare ut en rapport i ny og ne, og da er et menneske som leser den, den eneste måten tallet kommer inn på. Hvilke det gjelder, står på oversikten over kilder.
Hvor feilene blir fanget
Dette er aksen som betyr mest, og den som er vanskeligst å måle ærlig. Grunnlaget er en dagbok med to slags føringer, og de to holdes fra hverandre overalt på denne sida.
Ført for hånd
8
ført siden 2026-09-04
En dagbok over hva som gikk galt underveis og hva som ble gjort med det. Den kan ikke etterfylles: det som ikke ble skrevet ned da det skjedde, finnes ikke. Dette er den sterke kilden, og foreløpig den tynneste.
Avledet av spor
109
lest tilbake til 2026-05-03
Hendelser lest ut av spor som alt fantes, slik at kurven under ikke starter på null. Svakere kilde, og skjev på en måte som er beskrevet under. De to tallene legges aldri sammen.
Et antall feil per måned sier lite alene: en travel måned gir flere av alt. Grafen viser derfor en andel. Og feilene er alltid delt i to, fordi de to slagene måler helt ulike ting: 31 av de 114 feilene i perioden under er meldt automatisk av en fast kjøring som stoppet opp, altså av overvåkningen, og ikke av noen som fant noe galt i innholdet. En udelt kurve ville i hovedsak vist hvor ustabile de eksterne tjenestene har vært.
Andelen alene holder likevel ikke, for utviklingen går i rykk og napp. En måned med få feil kan like gjerne bety at ingen jobbet. Stripa under hver måned i figuren er derfor antall aktive utviklingsdager: dager der noen satte i gang en endring. Kunne de ikke telles, står stripa tom framfor å vise null - som ville betydd «ingen jobbet», og det er en påstand vi bare kan gjøre når vi har talt.
Målet skiller ikke mellom menneske og maskin. Det meste av koden her er skrevet av en språkmodell, og de dagene teller like fullt. Grensen går et annet sted: mellom en endring noen ba om, og en fast jobb som kjørte fordi klokka sa det. Spørsmålet er om det ble utviklet den dagen, ikke hvem som holdt tastaturet.
Grensen er ikke kosmetisk. De faste jobbene endrer noe hver eneste dag, så uten den ville hver dag telt som aktiv, tallet vært det samme hver måned, og grafen fortalt ingenting. Hvem som står bak en endring, leses derfor av et register framfor å vurderes fra gang til gang, og et navn som ikke står der, stopper hele tellingen framfor å bli gjettet på. Grunnen er at en gjetning har en retning: blir en ny jobb talt som utvikling, ser månedene travlere ut enn de var, og feilene per arbeidsdag færre. Altså en glidning i den retningen som smigrer oss.
Bytter du figuren under til tabell, står begge målene ved siden av hverandre. De svarer på ulike spørsmål: andelen på hvor stor del av arbeidet som gikk galt, feil per aktiv dag på hvor tett feilene kom når det først ble jobbet. De kan peke hver sin vei, og det er da de er verdt å ha. Måneden som fortsatt pågår er merket, siden et halvmålt tall ikke skal stå umerket ved siden av ferdige måneder.
- Andel feil, i prosent av det egne arbeidet
- Aktive dager, som andel av en hel måned
Hvor tunge oppgavene var
To feil på en oppgave som rørte femten filer i fem deler av løsningen, og to feil på en tekstretting, er ikke det samme. Oppgavene er derfor delt i tre etter hvor mye som måtte henge sammen for å levere dem. Tallene står ved siden av feiltallene og ganges aldri inn i dem: en feilrate delt på en kompleksitets-score ser presis ut, og er det ikke.
Små
213
Rørte høyst ett av fellesregistrene, holdt seg innenfor to deler av løsningen, og under 300 egne linjer.
Middels
140
Alt som verken er lite eller stort.
Store
35
Måtte inn i 4 eller flere fellesregistre - eller rørte 5 eller flere deler av løsningen og skrev minst 300 egne linjer.
Slik er tallet regnet ut
Hver oppgave får tre tall lest rett ut av endringshistorikken, og ingen av dem sier noe om hvordan det gikk:
- Hvor mange av de 12 fellesregistrene endringen måtte inn i. Det er listene en ny side må føres opp i for å bli synlig - meny, søk, kildeoversikt og resten.
- Hvor mange deler av løsningen den rørte, talt som mapper på øverste nivå. Filene som ligger helt ytterst i prosjektet regnes som én felles del. Release-logg og dokumentasjon holdes utenfor: dem må enhver vesentlig endring innom, så de sier ingenting om hvor bredt den grep.
- Hvor mange egne linjer den skrev, altså alle endrede linjer minus de som bare er hentet eller maskinskrevet.
De tre legges ikke sammen til en poengsum. Oppgaven havner i én av tre bøtter etter faste grenser, og grensene står på kortene over. Grovt med vilje: tre bøtter kan forsvares, en score med desimaler ville lovet en presisjon tellingen ikke har.
Forbehold du bør kjenne
- Det måler omfang, ikke vanskelighet. En kort endring på det vanskeligste stedet i koden havner i «små». Tallet sier hvor mye som måtte henge sammen, ikke hvor mye det kostet å tenke ut.
- Bare arbeid som endret filer på hovedsporet telles. Utredning og oppgaver som endte i at ingenting ble endret, finnes ikke her. Det gjør heller ikke de faste jobbenes egne endringer, eller de sakene overvåkningen oppretter av seg selv - en firedel av dem - som per konstruksjon aldri får en endring. Derfor er summen her lavere enn antall oppgaver i sporeren.
- Grensene er satt av oss, ikke funnet i data. Flyttes de, flytter fordelingen seg - og de ble faktisk flyttet, etter en stikkprøve mot virkelige oppgaver. En opprydding på 41 linjer spredt over fem mapper ble kalt stor, og to av de fem var release-logg og dokumentasjon. Det er rutine, ikke bredde.
- Hva som er hentet data, er en liste - og lister blir ufullstendige. Nedlastede tabeller og maskinskrevne datafiler holdes utenfor «egne linjer», men bare der de er kjent. En ny datamappe ingen har ført opp, teller som håndskrevet til noen oppdager det.
- Oppgaver uten saksnummer i endringsteksten er usynlige. Grupperingen skjer på saksnummeret, så en endring uten et slikt nummer havner ingen steder.
Målet teller koordinasjon, ikke volum, og det er hele poenget. Den største enkeltendringen i historikken er på over hundre tusen linjer, og innholdet er nedlastede tabeller fra en offentlig statistikkbank: mye tekst, lite vanskelighet. Linjer som bare er hentet eller generert, trekkes derfor fra, og en endring som måtte inn i mange av fellesregistrene teller tyngre enn en som bare er stor.
To ting måles bevisst ikke. Kompleksiteten leses av førsteleveringen, ikke av summen med alle rettingene etterpå: ellers ville en oppgave sett tyngre ut fordi den gikk galt, og da måler tallet utfallet det skal stå ved siden av. Og hvilken språkmodell som gjorde hva, er ikke målt. Det er ikke registrert noe sted og kan ikke rekonstrueres bakover. Skulle det besvares, måtte det skrives ned framover - og selv da ville det vært en observasjon og ikke et forsøk, siden modellene byttes samtidig som alt annet endrer seg.
Fordelingen per måned står i tabellvekslingen over, i kolonnen som viser små, middels og store oppgaver ved siden av feilandelen. De to er talt fra hvert sitt sted - oppgavene fra endringshistorikken, feilene fra oppgavesporeren - så summene er ikke de samme. En oppgave som ikke endret en eneste linje kode, finnes i sporeren og ikke her.
Grafen svarer ikke på om kvaliteten stiger, og skal ikke leses som om den gjør det. En lav andel kan like gjerne bety at det ble lett mindre etter feil den måneden. Det er nettopp derfor resten av kapitlet handler om hvor feilen ble fanget, og ikke om hvor mange det var.
Hvor feilen ble fanget
Antallet feil sier lite. Det som sier noe, er om de fanges tidligere i kjeden over tid: en flytting fra leseren fant det mot en sjekk stoppet det er den reelle forbedringen. Loggen fører derfor hva som oppdaget hver hendelse, og om den rakk ut til leseren.
Den håndskrevne loggen ble tatt i bruk 2026-09-04 og har 8 føringer. Det er altfor lite til å tegne en kurve av. Derfor er historikken før den lest ut av spor som alt fantes. Figuren under viser de samme månedene som feilkurven over, og alle de 109 avledede føringene faller innenfor. De to slagene føringer blandes aldri, og den avledede delen er skjev.
Skjevheten i den avledede delen, sagt rett ut
En avledet føring er et spor tolket i etterkant. 4 av de 6 mekanismene setter spor, gjennom tre slags kilder: en fast kjøring som stoppet, oppretter en sak; en sjekk eller en test som feilet, ligger i kjøringsloggen med navnet sitt; en gjennomlesing som fant noe, står ofte beskrevet i endringsteksten.
meg og bruker setter ingen spor i det hele tatt. De backfylles derfor ikke, og står som «ikke målt» i hele den avledede delen. Konsekvensen må du kjenne: fordelingen under påstår systematisk at sjekkene, testene og gjennomlesingen fanger en større andel enn de faktisk gjør. Feilen går i den retningen som kler oss, og det er den samme klassen feil som todelingen av feilkurven over finnes for å unngå.
To ting til er verdt å vite. Føringene fra de faste kjøringene er de samme hendelsene som telles som automatisk meldte i feilkurven over, så de to tallene skal ikke legges sammen. Og gjennomlesingen leses av fri prosa: bare de gangene noen faktisk skrev ned at den fant noe, finnes her, og det telles én føring per endring, aldri per funn.
De avledede føringene skrives tilbake dit dagboka føres, i kunnskapsbasen. Ikke inn i dagboka selv, men på siden ved siden av, i en egen del som bare den daglige kjøringen fyller. Hensikten er å slippe å skrive ned igjen noe som allerede er fanget: står hendelsen der, er den med i tallene på denne sida fra før.
At det er to sider og ikke én, er ikke en ryddedetalj. Skrev kjøringen i dagboka, ville den lest sitt eget arbeid tilbake neste natt og talt det som noe et menneske hadde skrevet. Da ville fordelingen over sakte drevet mot det systemet selv hadde produsert, uten at noe stoppet opp. To sider gjør det umulig framfor bare frarådet, og kjøringen skriver aldri en føring.
Fangststed per måned, avledet av spor
Hendelsesloggen, avledet delOppgavesporerenKjøreplanenEndringshistorikkenÉn rad per mekanisme, over de samme månedene som feilkurven. Hver rad er skalert for seg: spørsmålet er hvordan den enkelte mekanismen utvikler seg, ikke hvilken som er størst. Månedene før en mekanismes første spor er merket «ikke målt», ikke tegnet som null - null betyr at mekanismen ikke fanget noe, og det er en helt annen påstand enn at sporet ikke fantes ennå.
Alle 6 mekanismene står i tabellen, også de uten en eneste føring. En opptelling over bare de som forekommer, ville sluppet de tomme ut - og det er nettopp de tomme som bærer opplysningen om hva grunnlaget ikke dekker. De to kolonnene har hver sin ferskhet, og hver sin henvisning over.
| Fanget av | Betyr | Ført for hånd | Avledet |
|---|---|---|---|
| vokter | En automatisk sjekk i kodeløypa stoppet det. | 1 | 21 |
| test | En test feilet. | 1 | 9 |
| code-review | Gjennomlesing av endringen, av menneske eller modell. | 2 | 48 |
| meg | Jeg oppdaget det selv. | 4 | ikke sporbart |
| jobb | En fast kjøring feilet eller flagget det. | 0 | 31 |
| bruker | Noen utenfor prosjektet oppdaget det. | 0 | ikke sporbart |
Dette er hovedtallet, og det er ikke klart ennå. Håndskrevne føringer med et svar på om feilen rakk ut: 8 av 8. Avledede med et svar: 74 av 109, mens 35 ikke har det. Et spor sier ofte hva som fanget noe, uten å si hvor det da hadde rukket. De uten svar telles for seg framfor å legges til «nei»: en manglende opplysning skal ikke bli til en gunstig påstand.
| Føringer | Rakk ut | Stoppet før | Ikke utledbart |
|---|---|---|---|
| Ført for hånd | 1 | 7 | 0 |
| Avledet av spor | 0 | 74 | 35 |
Ingen andel er regnet ut av dette, og det er med vilje. Nesten alle radene med et svar er avledede, og de er avledede nettopp fordi de ble stoppet et sted som setter spor. Ingen avledningsregel kan gi «rakk ut»: en feil som gled gjennom alt sammen og nådde leseren, setter ingen slike spor, og finnes bare hvis noen skrev den ned. Nullen i den kolonnen er derfor en egenskap ved sporene, ikke en måling. En andel regnet over dette grunnlaget ville sagt at nesten ingenting når leseren, og vært like misvisende. Tallet blir først meningsfullt når den håndskrevne delen har nok volum til å stå alene.
Årsak og omgjort arbeid
Hva slags feil det var, og om arbeid som alt var gjort måtte gjøres om, finnes bare i de håndskrevne føringene. Ingen av sporene svarer på det: en rød sjekk sier at noe ble stoppet, ikke om det var en påstand uten grunnlag, en feil slutning fra riktige tall eller en oppgave som ikke var godt nok beskrevet. Å tildele en årsak i etterkant ville vært gjetning forkledd som data.
Så langt fordeler de håndskrevne føringene seg slik: hallusinasjon 0, feil-antakelse 2, manglende-spesifikasjon 0, konvensjonsbrudd 2, kodefeil 3, drift 1. Omgjort arbeid: 7 av 8. Det er for få til å lese noe ut av, og de står her fordi tomme felter skal synes framfor å bli fylt med noe som ligner.
Det som gjenstår, er tid. Etter noen uker med føringer står den skrevne delen på egne bein, og den avledede blir historikk framfor hovedtall. Da kan andelen som rakk ut regnes, og årsaksfordelingen leses. Ingen av delene skal utledes tidligere enn det.
Det vi ikke måler ennå
Egen bolk, ikke en fotnote nederst. Et regnskap som bare viser det som er lett å telle, gir et penere bilde enn det fortjener.
Hvor mye én instruksjon utløser
Hvor mange handlinger en modell tar for hver beskjed den får, er kanskje det mest talende målet på hva denne arbeidsmåten faktisk gir. Det kan bare leses av logger som holdes i omtrent en måned, så det blir et øyeblikksbilde og ikke en kurve.
Hvor lang tid en oppgave faktisk tok
Det finnes et tidspunkt for når arbeidet ble sagt ferdig, men ikke for når det egentlig begynte. Differansen mellom dem ville vært en gjetning.
Hvor ofte noe måtte rulles tilbake
Sto som et nøkkeltall her en kort stund, og var strukturelt låst på null: emnelinjene følger en fast navnekonvensjon, og endringer slås sammen før de går inn, så ordet dukker aldri opp i en emnelinje. Et tall som ikke kan variere, er ikke en måling. Det som måtte gjøres om, fanges av loggen i stedet.
Feilene som aldri ble oppdaget
Den viktigste kategorien, og den eneste som per definisjon ikke kan telles. Alt på denne siden handler om det som ble fanget.
Se det i portalen
Nytt på portalen
Omsorgsbehovet i din kommune mot 2050 →
Alle 357 kommuner har til sammen 285 000 innbyggere over 80 i dag. SSBs framskriving gir 591 000 i 2050. Sida lar deg velge kommune og bytte mellom hovedalternativet, sterk aldring og svak aldring, regner om til brukere av institusjon, omsorgsbolig og hjemmetjenester, og viser hvordan kommunen løser oppgaven i dag mot resten av landet. Kommuneøkonomien er koblet på: dagens netto driftsutgifter per innbygger over 80, ganget med hvor mange over 80 kommunen får.
Oslo mot 2050: bydelene der antall over 80 mer enn dobles →
Oslo kommunes egen framskriving gir 55 000 personer over 80 i 2050, mot 24 000 i dag. Veksten er skjevest i indre by og sør: Gamle Oslo, Søndre Nordstrand og Grünerløkka mer enn tredobler antallet, mens Stovner og Grorud vokser minst. Sida regner om til brukere av institusjon, omsorgsbolig og hjemmetjenester per bydel med samme regnestykke som landssida, viser Oslo mot landet i dag fra SSB 12003, og setter det opp mot NAVs tall for hvor mange i hver bydel som står utenfor arbeid.
Omsorgsbehovet mot 2060: hva skjer når antall eldre nesten dobles →
Norge har 938 000 personer over 67. I 2060 venter SSB 1,59 millioner. Bruker de eldre omsorgstjenestene som i dag, går antall eldre brukere av institusjon, omsorgsbolig og hjemmetjenester fra 171 000 til 391 000, og årsverkene fra 94 000 til 215 000. Sida tegner regnestykket år for år, i tre framskrivingsalternativer og med en test på friskere aldring, og sammenligner tall for tall med Ulf Andersen i NAV, som regnestykket er inspirert av.
Historikken sier hva som kom inn og hva som ble revidert, for alle datasett →
Hver gang pipelinen henter tall på nytt, sammenligner den med forrige versjon: hvilke måneder, kvartaler eller år som kom til, og hvilke tall tilbake i tid kilden har revidert. Det står i historikk-knappen, på oppdateringshistorikken og på kildesida for hver datafil, og er rekonstruert bakover fra git for alle femti datasett. På prissida, AAP, uføre, befolkning, valuta og konkurser står det også som en chip ved siden av kildehenvisningen på hver graf.
Kryptoandelen i datasentrene: en lesers regnestykke gir 48 til 60 prosent →
Regjeringen oppgir 20 prosent, vi har regnet 38 med bare de to Bitdeer-anleggene. En leser har gått gjennom anleggene ett for ett og kommer til 48 prosent som gulv, og 60 når anlegget i Mo i Rana som ikke er meldt inn til Nkom, tas med. Regnestykket står i egen boks, anlegg for anlegg, merket som leserens.
Mest lest siste 7 dager
- 1Datasentre og kraftforbruk74 visninger
- 2Datasentrene brukte 3,3 TWh i 2025, og kryptodelen er alt på vei ned31 visninger
- 3Slik er portalen bygget25 visninger
- 4Alderspensjon 2025 - gjennomsnittlig utbetaling og avgangsalder17 visninger
- 5Oppdateringshistorikk17 visninger
- 6Kilder og datagrunnlag16 visninger
- 7Blogg16 visninger
- 8Energiomstilling11 visninger
- 945 milliarder til Tydal: hva E24-saken ikke fortalte11 visninger
- 10Befolkning11 visninger