Bygde en commit‑port med 22 enlinjes lintere pluss fem som fortjener et avsnitt, uten advarselsnivå og uten tillatte undertrykkinger i koden, som dekker HTML, CSS, JavaScript, Python, YAML, Markdown, shell, lenker, staving, hemmeligheter og typografi.
Arbeidet utført: august 2026
22 enlinjes lintere, og fem som fortjener et avsnitt
Situasjon. En bidragsveiledning er et sett med forslag. Alle er enige i den, og så er det fredag, endringen er liten, og veiledningen taper. I et enpersonsprosjekt er det verre og ikke bedre, fordi det ikke finnes noen som gjennomgår endringene i det hele tatt — det eneste som står mellom en dårlig endring og produksjon, er personen som skrev den, i det øyeblikket vedkommende er minst tilbøyelig til å krangle med seg selv.
Oppgave. Standardene måtte være kjørbare, slik at et brudd på én av dem får en commit til å feile i stedet for å vente på å bli lagt merke til.
Handling. Det som vokste frem, er en kvalitetsport med 22 lintere uten noe advarselsnivå: hver diagnostikk er en feil, og selve nettstedsgeneratoren kjører med advarsler oppgradert til feil, slik at selv en melding om utfasing stopper byggingen. De åpenbare er der — HTML‑validering, CSS, JavaScript, Python, YAML, Markdown, shell, staving, hemmeligheter, døde lenker. De interessante er de prosjektspesifikke sjekkene som intet hyllevareverktøy har noen mening om: at begge fargetemaene maler hver lagdelte flate med like mange lag, at intet fotografi vises bredere enn halvparten av kildebildets piksler, at treet som settes i produksjon, ikke inneholder noen private stier eller vertsnavn, at teksten følger tonereglene på alle tre språk, at en side har en Markdown‑tvilling og en gyldig representasjon i en alternativ protokoll. Inline‑undertrykking er forbudt uten unntak — ingen ignore‑kommentarer, ingen disable‑direktiver, ingen omgåelse av hooken og ingen omdøping av filer for å slippe unna et filmønster. Regelen som holder dette ærlig, er at en feil som fantes fra før, ikke er en unnskyldning: når en sjekk avdekker en feil ingen har innført, rettes den i samme omgang.
Resultat. Mekaniske innvendinger kommer fra en maskin før en commit finnes, og kvalitetsporten er den eneste som gjennomgår endringer i dette prosjektet. Kostnaden er oppgitt og ikke skjult: det går tregt å committe, og en dårlig skrevet sperre er rett og slett til å bli gal av når den må omgås, og det er grunnen til at sperrene selv senere ble lagt under et eget formateringsverktøy og en egen linter.
Les videre: Kuttet nettstedets nettleserdrevne kvalitetsport fra 1 636 sekunder til 615 ved å kjøre kontrollene med de lengste først gjennom en worker‑pool begrenset til fire baner, etter å ha målt at alfabetisk rekkefølge kostet 320 sekunder mot 224. 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.