Ekstern CTO
Når udvikleren efterlader rod: Sådan får du overblik
Har du arvet en webshop med udokumenteret kode, efterladte app-scripts og integrationer, ingen forstår? Her er min proces fra sikring af adgange til en prioriteret oprydning.
- Forfatter
- Kasper Stück
- Dato
- Læsetid
- 8 min
- Niveau
- Mellem
Du har overtaget en webshop fra en tidligere ejer, et bureau eller en freelancer, og ingen kan forklare, hvad halvdelen af koden gør. Måske har en ny udvikler allerede sagt: “Det tør jeg ikke røre.” Kort svar: Sikr først adgange og en kopi af alt, kortlæg derefter, hvad der findes, og ryd op i små skridt med test efter hvert skridt. Start med sikkerhed, så hastighed, så vedligeholdelse.
Det er ikke usædvanligt, og der er en vej ud. Her er den proces, jeg følger.
Hvad jeg typisk finder
Kode fra afinstallerede apps. Apps blev testet og afinstalleret, men deres kode blev i temaet. Det ses som scripts i theme.liquid, der peger på apps, som ikke længere findes, og snippets med navne på apps, ingen kan huske. Konsekvensen er unødvendige scripts, fejl i browserkonsollen og forvirring om, hvad der bruges.
Udokumenterede tilpasninger. Filer med navne som custom-fix-2.liquid, CSS der overskriver temaet uden forklaring, og metafields, som bruges til noget, ingen kan forklare. Nye udviklere tør ikke ændre noget, og små ændringer giver uventede fejl.
Faste værdier i koden. Telefonnumre, fragtgrænser og kampagnedatoer skrevet direkte i skabelonerne i stedet for i temaindstillinger. Hver ændring kræver en udvikler, og et sted bliver altid glemt.
Hemmeligheder de forkerte steder. API-nøgler i temaets JavaScript, hvor alle kan se dem. Det er den alvorligste fejl, fordi en nøgle med adgang til butikkens data aldrig må ligge i frontend.
Forældede integrationer. Forbindelser, der blev bygget til en bestemt version og aldrig opdateret. De fejler ofte stille, og du opdager det først, når en kunde klager.
Flere udvikleres stil. Forskellige navngivning, dobbelt kode og løsninger, der overlapper, fordi ingen vidste, hvad der allerede fandtes.
Trin 1: Sikr adgange og en kopi
Før nogen ændrer noget:
- Sørg for, at virksomheden ejer Shopify-butikken, domænet og kontiene hos betalingsudbyder, fragtapp og mailsystem.
- Gennemgå medarbejder- og samarbejdskonti i Shopify, og fjern dem, der ikke skal have adgang.
- Udskift API-nøgler og adgangskoder, som tidligere udviklere har kendt.
- Lav en kopi af det aktive tema, og download temafilen, så du altid kan gå tilbage.
- Eksportér produkter, kunder og ordrer.
Kom du fra et bureau, så brug tjeklisten til overdragelse fra bureau for at få det hele med.
Trin 2: Kortlæg, hvad der findes
- Lav en funktionsliste. Skriv ned, hvad butikken kan i dag, og tag skærmbilleder af de vigtigste sider. Så kan du teste, at intet forsvinder under oprydningen.
- Gennemgå temaets mapper. Marker alt i layout, sections, snippets og assets, som ikke kan forklares.
- Sammenlign med appslisten. For hver ukendt fil: Hører den til en app, og er appen stadig installeret?
- Find ubrugt kode. Snippets, der ikke indlæses nogen steder, scripts, der aldrig kaldes, og CSS til elementer, der ikke findes.
- Kortlæg integrationerne. Hvad sender data hvorhen, hvor kører det, og hvem får besked, når det fejler?
- Mål udgangspunktet. Kør PageSpeed Insights på de vigtigste sider, så du kan se effekten bagefter.
Trin 3: Prioritér
- Sikkerhed: Eksponerede nøgler, gamle adgange og integrationer, der sender data til steder, du ikke kender.
- Fejl, der rammer kunder: Integrationer, der fejler stille, og fejl i kurv og checkout.
- Hastighed: Scripts fra afinstallerede apps og unødvendige filer, der indlæses på alle sider.
- Vedligeholdelse: Udokumenteret kode, der skal bruges fremover, og faste værdier, der skal kunne ændres.
- Pænhed: Navngivning og formatering. Vigtigt, men ikke først.
Trin 4: Ryd op i små skridt
- Arbejd i en kopi af temaet, ikke det aktive.
- Fjern eller ret én ting ad gangen, og test funktionslisten bagefter.
- Flyt faste værdier til temaindstillinger eller metafields, så de kan ændres uden en udvikler.
- Flyt hemmeligheder væk fra temaet til en server eller app, hvor kunderne ikke kan se dem, og udskift dem bagefter.
- Skriv en kort forklaring til hver tilpasning, der bliver: hvad den gør, hvorfor den findes, og hvad den afhænger af.
Den praktiske oprydning i temaets filer har jeg beskrevet i oprydning i Shopify-temaet.
Trin 5: Undgå at ende her igen
- Gør dokumentation til en del af leverancen i aftalen med næste udvikler eller bureau.
- Fjern kode med det samme, når en app afinstalleres.
- Gennemgå apps og adgange fast, for eksempel hvert kvartal.
- Få en uafhængig til at kigge, når noget større er leveret.
Hvad du skal have dokumenteret i den daglige drift, står i dokumentation af webshop.
Rydde op eller starte forfra?
Oprydning er oftest det sikreste, fordi du bevarer det, der virker, og kan stoppe undervejs. At starte forfra kan give mening, hvis platformen alligevel skal skiftes, eller hvis gennemgangen viser, at oprydningen vil koste lige så meget som noget nyt. Tag valget mellem ny webshop eller oprydning på baggrund af gennemgangen.
Hvis du vil have en uafhængig gennemgang, før du beder om tilbud på oprydningen, kan du se, hvordan jeg gennemgår en webshop.
FAQ - Ofte stillede spørgsmål
Hvor skal jeg starte, når jeg har arvet en rodet webshop?
Med adgange og sikkerhed: Sørg for, at virksomheden ejer alle konti, fjern tidligere udvikleres adgang, og udskift API-nøgler. Lav derefter en kopi af temaet, før nogen ændrer noget.
Kan jeg selv rydde op uden en udvikler?
Noget kan du selv: gennemgå apps og medarbejderkonti, eksportere data, beskrive processer og notere fejl. Fjernelse af kode, rettelse af integrationer og omskrivning af tilpasninger kræver typisk en udvikler.
Hvordan ved jeg, om koden er rodet?
Typiske tegn er manglende dokumentation, filer ingen kan forklare, scripts fra apps, der ikke længere er installeret, funktioner der fejler uden forklaring, og udviklere der siger nej til at røre ved koden.
Skal jeg rydde op eller starte forfra?
Oprydning er oftest det sikreste, fordi du bevarer det, der virker. At starte forfra giver mening, når platformen alligevel skal skiftes, eller når oprydningen vil koste lige så meget som at bygge nyt.
Hvad koster en oprydning?
Det afhænger helt af omfanget. Få en gennemgang først, så du kan bede om et tilbud på konkrete, prioriterede opgaver i stedet for en åben regning.