Doba načítání 5 sekund je nepřijatelná. Přesto je normou.
Když spouštíte program, otevíráte aplikaci nebo načítáte web, pravděpodobně čekáte alespoň několik sekund. Je to normální.
Nemělo by být.
Jakmile vaši zákazníci jednou okusí rychlé načítání a odezvy, nikdy už vás nevymění za konkurenci – jakmile pocítí rozdíl mezi vaší rychlou aplikací a pomalou aplikací konkurence, ta pomalá je bude nesmírně rozčilovat.
Jak této výhody dosáhnout, pár faktů z reálného světa a na co se ptát vašeho vývojáře? To vše najdete v tomto článku.
Jak rychlé to ve skutečnosti může být?
Tohle není technický článek, takže si jen letmo projdeme pár základních a srozumitelných čísel a porovnáme je s realitou.
Levný procesor v low-cost telefonu dokáže zpracovat miliardy instrukcí za sekundu × nejméně 2 jádra (v podstatě 2 výpočetní jednotky).
Čtení dat z moderních diskových úložišť je v tisících megabajtů za sekundu – opět i na levném telefonu.
Přenos přes internet se v tom nejnižším pásmu pohybuje ve stovkách megabajtů za sekundu.
Srovnání
Vezměme nejprve ten nejpomalejší produkt. Kvalitní webová stránka může mít hned po načtení, na té větší straně, 15–25 megabajtů.
Což znamená, že všechno dohromady spočítáno byste měli zadat odkaz do otevřeného prohlížeče a vidět web zhruba za 1–2 sekundy – plně načtený.
Pokud vezmeme aplikaci ve vašem telefonu, jde o soubory uložené ve vašem zařízení, takže se zde neuplatní internetové připojení (ta nejpomalejší rychlost). Při rychlostech v gigabajtech za sekundu byste měli vidět typickou aplikaci otevřenou a funkční za 0,15–0,25 sekundy.
V otevřené aplikaci, programu nebo na webu prochází interakce jen přes ty nejrychlejší rychlosti procesoru a někdy grafiky. Když kliknete na tlačítko, mělo by to mít doslova okamžitě viditelný výsledek na vaší obrazovce.
Současná realita
V současné realitě není vždy možné těchto rychlostí dosáhnout. Ale jak si dokážete představit, jít z 1–2 sekund na 5 sekund doby načítání také není nutné a váš web se pořád může otevřít za 2–3 sekundy. A to je pro opravdu velkou stránku, které chybí dobrá optimalizace.
Na co se ptát vašeho vývojáře?
Není potřeba, abyste do detailu rozuměli technologiím a programování. Tohle není pro vedení technického pohovoru.
Stack
Začněte otázkou „Jaký používáte stack?“. Tou otázkou se ptáte, jaké nástroje a technologie používají k vývoji a na čem staví. Pokud vám vývojář začne vyprávět o všech těch skvělých technologiích, které používá, je to varovný signál. Stejně tak, když říká věci jako „webview“.
Proč? Protože největší část dnešního pomalého softwaru staví na něčem, co bylo postaveno dřív, a to staví na něčem dalším, co bylo postaveno ještě dřív. Je to řetězec. Což znamená, že všechny výše zmíněné rychlosti, stále platné, musí zpracovávat nikoliv váš projekt, ale mnoho vrstev.
WordPress je pomalý, protože dělá všechno, i když to nepotřebujete.
Měření
Druhá otázka je zeptat se, jak měří rychlost. A jaké jsou jejich cíle ohledně rychlosti.
Překvapivě mnoho vývojářů říká, že cílem je 5 sekund. To je další varovný signál. Stejně tak, když nemají pořádnou odpověď na to, jak měří – nebo když je odpovědí „otevřeme to a uvidíme“.
Vidět na vlastní oči a cítit to je nezbytná součást testování. Ale je to také kořen mnoha problémů typu „mně to funguje“.
Měli byste začít vyžadovat metriky rychlosti
Udělat váš projekt pořádně dá více práce. Ale ne tolik, kolik si možná myslíte.
U malých projektů (jako jednostránkové weby) není měřitelný rozdíl v práci mezi tím, začít od nuly, a použitím hotových nástrojů. Velké projekty vyžadují pečlivé plánování, zvažování pro a proti a znalost toho, proč použít takzvané frameworky.
Součástí specifikace vašeho produktu by nemělo být jen to, jak má produkt fungovat, ale také jak rychlý by měl být. Je to velmi důležitá diskuze, kterou je třeba vést.
Z naší praxe víme, že pro netechnického člověka je to nepříjemná konverzace. Proto v LINK-V provázíme naše klienty celým procesem jazykem, kterému rozumí. Software je koneckonců vrstva mezi člověkem a počítačem, a když ten software tvoříme, chováme se stejně.