Po co przyśpieszać stronę internetową?
Temat przez wielu unikany. Przez wielu uważany za niepotrzebny – a przynajmniej takie można odnieść wrażenie odwiedzając niektóre strony. W końcu mamy czasy szybkiego internetu, 10 a nawet 100 Mb/s. Kto by się przejmował jakimś zdjęciem, skoro zostanie ono pobrane w ciągu 1/10 sekundy?
Jednak jako twórca powineneś się przejmować. Dla projektanta stron czy grafika to nie zawsze wydaje się logiczne, że klient chce zrezygnować z naprawdę kilku fajnych zdjęć tylko po to, aby strona ładowała się o sekundę szybciej. Czy jest w tym logika?
Pomijam tutaj całkowicie mniejsze zużycie transferu itd.
Szybkość wczytywania strony dla klienta
Przejdźmy na drugą stronę, na stronę klienta. Wyobraź sobię sytuacje, gdzie sklep internetowy odwiedza 100 osób dziennie. Powiedzmy, że będą to osoby prosto z wyszukiwarki – czyli takie, które o tym czy pozostać na stronie, czy z niej wyjsć – poświęcają kilka sekund (zazwyczaj). Dodajmy do tego nie najlepsze warunki: użytkownik wchodzi przez telefon gdzie ma już wolne łącze, być może jest na działce, gdzie zasięg ledwo zipie, a być może jest na wsi, na której kable dostarczają maksymalnie 10 Mb/s. Być może coś jeszcze pobiera itd. Sposobów, aby zamulić neta jest naprawdę duuuużo.
O takie sytuacje łatwiej niż myślisz. Przykład z życia:
firma organizująca spływy kajakowe posiada na stronie telefon kontaktowy oraz dokładne miejsce, w które trzeba przyjechać. Tak jakoś wyszło, że spływ organizowany jest przy rzece, w samym środku lasu. To nie jest żadna miejscowość, to jest środek lasu, który na mapie nie wyróżnia się chociażby innym kolorem drzew. Jeżeli ktoś jedzie na spływ i nie może znaleźć miejsca zbiórki to ma 2 wyjścia:
- zadzwonić do organizatora i ten go poprowadzi, o ile wcześniej zapisał numer
- wejść na stronę, w końcu na niej jest adres (a raczej koordynaty) a nawet mapa z dojazdem. Jeżeli wybierze opcje drugą to może się gorzko rozczarować, ponieważ jak to czasami w lesie bywa – ciężko jest wykonać zwykłe połaczenie, nie mówiąc o przeglądaniu internetu.
Jednak ma szczęście bo internet słaby, ale jest. Podczas pobierania strony może przypomni mu się dzieciństwo i modem, który ciągnął 56 kb/s, na pewno będzie miał dłuższą chwilę, żeby je powspominać… Ale bez przechodzenia w skrajność. Wydaje mi się, że 0.5 Mb/s w złych warunkach jest całkiem realnym scenariuszem. W przypadku średniej strony, długość jej całkowitego wczytania może wynosić kilkadziesiąt sekund…
W takiej sytuacji nawet zmniejszenie pliku JS robi robotę. Przykład jest niecodzienny, ale dobrze obrazuje, że optymalizacja strony czasami jest wyjątkowo ważna.
Każdy jest niecierpliwy
Warto dodać, że każdy użytkownik internetu jest niecierpliwy. Niecierpliwości nauczyły nas obecne czasy, wszystko musismy mieć na tu i teraz. Jeśli nie dostanę tego czego chcę tutaj, to idę gdzie indziej. Internet jest tego najlepszym przykładem, bo gdzie jeszcze o decyzji z jakiej firmy skorzystamy może zadecydować kilka sekund?
Wróćmy do czasu ładowania strony. Załóżmy, że u Ciebie ładuje się ona 2 sekundy. Weźmy szczególnie pod uwagę strony typu „one page”. Zgaduję, że masz dobrego neta. Weźmy pod uwagę, wymienione wyżej czynniki, które mogą spowolnić neta.
Aha, bym zapomniał… Czy bierzesz pod uwagę, że Ty tworząc stronę masz już zapisane chociażby zdjęcia w pamięci przeglądarki? To znacznie przyśpiesza ładowanie – wchodząc na stronę kolejny raz, ładuje się ona znacznie szybciej, niż gdy wchodzisz na nią pierwszy raz.
Jeszcze raz wróćmy do czasu ładowania strony bo zaczynam odchodzić od tematu. Użytkownik może mieć wolnego neta i może wchodzić na stronę pierwszy raz. To potrafi wydłużyć czas ładowania strony, który u Ciebie wynosił 2 sekundy, do przykładowych 5 sekund (to optymistyczny scenariusz).
Powiedzmy, że 20% wchodzi z „gorszych warunków”, a więc im czas ładowania się wydłuża. Zamiast 2 sekund strona ładuje się 5. Przypomnij sobie, że trafiają tu z wyszukiwarki i dla nich każda sekunda, to dodatkowa sekunda zniecierpliwienia. Każdy ma swoją granicę, po której rezygnuje.
Dodatkowo, ktoś może się śpieszyć – dla nich te 5 sekund to wieczność. Jest pewnym, że część z nich zrezygnuje i wejdzie na inną stronę. Jeżeli użytkownik zrezygnuje ze strony, zanim ta się wczyta – to są pośrednie straty dla Twojego klienta.
Czy jest jakiś optymalny czas?
Na pytanie „jak długo powinna się wczytywać strona?” można odpowiedzieć: możliwie krótko. Wiadomo, że nie dasz rady tak samo zoptymalizować strony wizytówki, gdzie jest sam tekst i strony „one page” z dziesiątkami zdjęć. Czasami też opymalizacja nie jest tak bardzo potrzebna.
W tym momencie przypominam sobie dlaczego nigdy nie lubiałem stron Flashowych – przy moim necie, nie byłem w stanie czekać pół minuty na wczytanie strony…
Nigdy też nie stwierdzisz „na oko” jak długo strona się wczytuje, ponieważ zależy to od wielu czynników. Dlatego właśnie dobrze korzystać z narzędzi, które pokazują czas wczytywania w różnych warunkach (np. z różną prędkością internetu), a później zastanowić się czy taki czas jest do zaakceptowania, czy jednak coś jeszcze trzeba poprawić.
Takim narzędziem jest, np.: https://webspeed.intensys.pl/
Jego działanie jest bardzo proste i fajne. Wystarczy wpisać naszą stronę i po kilu/kilkunastu sekundach dostajemy ciekawy raport. Przykład poniżej:
Czy to jest dobry wynik? To zależy od tego, czy mnie zadowala. Co prawda strona pokazuje nam odpowiednie kolory przy wynikak (zielony – bardzo dobrze, pomarańczowy – może bypc lepiej, czerwony – słabo).
Tutaj jest nienajgorzej, ale sporo rzeczy można jeszcze poprawić, pojawiają się nawet jakieś błędy walidatora, analiza Google Pagespeed również nie jest najwyższa. Postaram się wrzucić drugi screen, gdy blog będzie stał na nowym szablonie (obecnie cały czas jest na jakimś darmowym). To będzie fajne porównanie 🙂
W następnym wpisie sposoby na przyśpieszenie strony:)