Att appen fungerar på din dator säger nästan ingenting om att den fungerar för någon annan. Skillnaden ligger nästan alltid i tre saker: inställningar som bara finns hos dig, data som bara finns hos dig, och adresser som pekar på din egen maskin. Den här sidan går igenom vad du ska kontrollera innan du delar länken.
Varför det som fungerar lokalt går sönder publicerat
På din dator finns saker du inte tänker på: en fil med inställningar, en databas du skapade under vägen, en adress som pekar på localhost — alltså på maskinen koden råkar köra på. Publicerat finns inget av det, för det följde aldrig med.
Det är därför en app kan fungera perfekt i en halvtimme och vara helt trasig i samma sekund den blir publik. Ingenting har gått sönder — det som saknades var aldrig med.
Kontrollera innan du delar länken
Nycklar och hemligheter
Det här är den punkt där ett misstag faktiskt kostar pengar, så den är värd en egen genomgång.
Om din app använder någon betald tjänst har du en nyckel — en lång sträng som identifierar ditt konto. Ligger den i kod som skickas till webbläsaren kan vem som helst läsa den, och använda den på din räkning.
- En nyckel i något användaren laddar ner är publik. Det spelar ingen roll hur den är gömd. Om appen fungerar utan att fråga servern är nyckeln synlig.
- Anrop till betalda tjänster ska ske på servern. Fråga uttryckligen: "sker det här anropet på servern eller i webbläsaren?" Svaret ska vara på servern.
- Har en nyckel varit publik ska den bytas, inte tas bort. Gå till tjänsten, skapa en ny, ta bort den gamla. Det tar några minuter.
Sätt också en utgiftsgräns hos tjänsten om det går. Det är den enda åtgärd som faktiskt begränsar skadan om något går fel.
Data som ska överleva
En vanlig och tråkig upptäckt: allt användarna skrivit in försvann vid nästa uppdatering av appen.
Det beror på var datan sparas. Sparas den i webbläsaren är den knuten till just den besökarens dator och försvinner om de rensar. Sparas den i en fil på servern kan den skrivas över när du publicerar på nytt. Bara en riktig databas överlever båda.
Frågan att ställa är rak: "Var sparas det användarna skriver in, och finns det kvar om jag publicerar en ny version?" Är svaret otydligt är det inte löst.
Om appen samlar in uppgifter om personer
Så fort användare skriver in namn, e-post eller något annat om sig själva gäller regler — även för ett litet fritidsprojekt, och även om du inte tar betalt.
Miniminivån
- Samla bara in det du faktiskt använder. Varje fält du inte behöver är en risk utan nytta.
- Berätta vad du sparar och varför, på en enkel sida. Några stycken räcker för ett litet projekt.
- Ha ett sätt att ta bort någons uppgifter. Även om det är manuellt.
- Lösenord ska aldrig kunna läsas — varken av dig eller någon annan. Använd en färdig inloggningstjänst i stället för att bygga eget.
Ska appen hantera känsliga uppgifter — hälsa, ekonomi, barn — ta hjälp av någon innan den blir publik. Det är inte en formalitet.
Efter publicering
Två vanor räcker långt. Titta på appen då och då, inte bara när någon klagar — saker slutar fungera utan att någon berättar det. Och ändra inte i något som är publikt utan att spara en fungerande version först. Det är samma regel som under bygget, men konsekvensen är större när någon annan använder det.
När appen är ute och används kommer nästa fråga förr eller senare: vad gör man när den blivit för stor för att vibeas vidare?