Kort version. Fem fel som alla automatiska kontroller sa var i sin ordning. En knapp som inte gick att trycka på. En rubrik som beskrev sig själv. En bild som nästan passade. En sida som räknat fel på sin egen bredd. Och två sidor som säger olika pris. Ingen av dem hittades av ett test.

Varje byrå skriver att de är noggranna. Det är gratis att påstå och omöjligt att kontrollera, så det säger ingenting.

Det som går att kontrollera är exempel. Här är fem gånger då något gick fel under ett bygge, vad som hittade det, och vad det hade kostat att missa.

Ingen av de fem hittades av ett automatiskt test.

1. Knappen som inte gick att trycka på

Mobilmenyn öppnades som den skulle. Krysset för att stänga den satt uppe i hörnet, syntes tydligt och fanns på rätt plats i koden.

Det gick bara inte att trycka på.

Menypanelen låg ovanpå krysset. Inte synligt, den täckte inte knappen, men i den osynliga travhögen av lager som en webbsida består av låg panelen överst. Fingret träffade panelen, inte knappen.

Varje automatisk kontroll sa att allt var rätt. Knappen fanns. Knappen var synlig. Knappen hade rätt beskrivning för skärmläsare. Alla kontroller gröna.

Det enda som hittade det var att någon öppnade menyn på en telefon och försökte stänga den.

Det är därför jag alltid gör det. Inte för att kontrollerna är dåliga, utan för att en kontroll svarar på frågan ”finns knappen” medan en människa svarar på frågan ”går den att trycka på”.

2. Rubriken som beskrev sig själv

En sektion med siffror såg konstig ut. Den första reflexen var att laga det som syntes, alltså justera layouten.

Det var fel fel. Rubriken över siffrorna beskrev sektionens utseende i stället för att påstå något. Siffrorna under den hade därför ingenting att bevisa, och det var därför det såg konstigt ut.

Fixen var att skriva om rubriken. Inte en enda ändring i utseendet behövdes.

Det är en vanlig fälla: ett problem som ser visuellt ut men är textmässigt. Lagar man symptomet får man en snyggare sektion som fortfarande inte säger något.

3. Bilden jag lät bli att använda

Det skulle finnas en bild på en handskriven beställningssedel. Jag letade i två omgångar i två stora bildarkiv.

Varje kandidat var ett kvitto med läsbar text som inte hörde hit. En spansk bagerinota. ”Spaghetti Carbonara” på en sida om asiatisk gatumat.

Rekommendationen blev att stryka bildplatsen helt, i stället för att tvinga in den minst dåliga kandidaten.

Det låter som ett litet beslut, men det är ett av de vanligaste sätten en hemsida tappar förtroende på. En bild som nästan stämmer stämmer inte. Vi har alla sett hantverkarsajten med bilden på ett kök i Kalifornien, eller klinikens leende personal som är inköpt från ett bildarkiv och råkar synas på tre andra sajter i samma stad.

Så jag har en enkel regel: hellre ingen bild än fel bild. Och när en bild verkligen behövs på en plats där ingen befintlig duger, då är svaret inte att leta vidare tills något nästan passar. Då är svaret att ta fram den riktiga: fotografera verkstaden, lokalen, produkten, personen.

Det kostar mer än ett bildarkiv. Det är också den enda bild på sidan som ingen konkurrent kan ha.

4. Sidan där varje bokstav bröt på egen rad

En rubrik hade råkat få bredden noll. Resultatet var att varje enskild bokstav lade sig på sin egen rad, hela vägen ner, så att sektionen blev nästan åtta gånger för hög.

Det gick inte att se genom att läsa koden. Koden såg helt rimlig ut. En beräknad bredd finns inte i koden, den uppstår först när något faktiskt ritar upp sidan.

När sidan väl mättes upp på riktigt tog det under en minut att hitta.

Lärdomen är metodisk: när koden ser rätt ut men sidan ser fel ut, sluta läsa koden. Titta på sidan.

5. Priset som ingen kontroll kan hitta

Den mest sannolika framtida bristen på vilken sajt som helst är den enklaste: att två sidor säger olika saker.

Startsidan säger att en rätt kostar 145. Menysidan säger 155. Kontaktsidan har det gamla telefonnumret. Öppettiderna i sidfoten stämmer inte med dem längst upp.

Ingen automatisk kontroll i världen hittar det. Båda sidorna är korrekt byggda. Båda visar ett giltigt pris. De visar bara inte samma.

Därför finns det en punkt i min genomgång som bara är att läsa. Stämmer priserna överallt där de står. Stämmer öppettiderna. Stämmer telefonnumret. Och ligger det kvar något från installationen som aldrig var tänkt att synas, en ”Exempelsida” eller ett ”Hej världen”, som ändå hamnar i sökmotorernas register.

Vad automatiken faktiskt är bra på

Det här är inte ett argument mot automatiska kontroller. Jag kör dem på varje sida, varje gång, och de fångar en hel klass av fel snabbare och mer konsekvent än någon människa orkar.

Men de är ett golv, inte ett kvitto. ”Noll fel” betyder ”inga kända mekaniska fel”, vilket är något helt annat än ”sidan är bra”.

Så jag arbetar efter tre regler som gör att golvet inte förväxlas med taket:

Ingen ändring på en levande sajt utan att någon säger ja först. Läsa och titta gör jag fritt. Ändra gör jag inte förrän det är sagt högt.

Varje ändring läses tillbaka innan den räknas som gjord. En sparning som svarar ”det gick bra” har inte bevisat något. Jag hämtar upp sidan igen och tittar på vad som faktiskt hamnade där.

Max tre försök, sedan stopp och fråga. Om något inte går att laga på tre försök är problemet sannolikt inte det jag tror. Då är rätt drag att sluta försöka och höra av sig, inte att fortsätta ändra.

Den sista regeln är den som sparar mest pengar åt kunder. Det finns inget dyrare än någon som fortsätter laga fel sak.


Nästa: Det jag inte byggde, om vad jag säger nej till och varför. Vill du att jag tittar igenom din nuvarande sajt får du gärna höra av dig.

Yèshì är en fiktiv demorestaurang, byggd som referensprojekt just för att jag ska kunna visa hela arbetssättet öppet, inklusive misstagen, utan att bryta sekretess mot en riktig kund. Personnamn, mejladresser och priser är påhittade. Felen är däremot äkta. Riktiga kunduppdrag finns under Arbeten.

Johan Beijer, Hemsideproffset

Demosajterna är medvetet inte indexerade i sökmotorer — de är ett bevis att klicka på, inte en sökdestination.

Se det i det verkliga bygget: Nattmarknadskänsla på webben →
← Tillbaka till Så bygger jag