Jak działa i skąd się wziął internet
Niekiedy można mieć wrażenie, że internet jest z nami od zawsze. Czy wiemy jednak jak i kiedy powstał? Jakie są podstawy jego działania?
Teoretycznie jest to temat do omówienia na początku nauki frontendu, ale prawda jest taka, że sporo doświadczonych inżynierów nie do końca wie o co w tym chodzi. Temat można wyjaśnić w dwóch zdaniach, ale stosowanie się do niego nie jest wcale takie proste.
Przede wszystkim - pisanie semantycznego kodu powinno nam służyć. W sensie, powinna iść z tego jakaś wartość. Jeżeli mamy spędzić godzinę na myśleniu jaki tag powinien zostać użyty albo kiedy ktoś blokuje naszą pracę wytykaniem tego za każdym razem w code-review, to coś jest nie tak. Ale po kolei!
To określenie na stosowanie tagów, które mają przypisaną do siebie jakąś “rolę”. Na przykład h1
oznacza nagłówek sekcji, jak np. nazwa rozdziału strony (często napisana dużymi, grubymi literami). Z kolei p
to paragraf, wydzielony fragment tekstu. Problem w tym, że jeszcze kilka lat temu, to były jedne z niewielu takich tagów.
Większość kodu ogarniało się za pomocą div
, który był takim “uniwersalnym opakowaniem na wszystko inne”.
Jest kilka powodów, ale nie każdy zawsze ma takie samo znaczenie.
Optymalizacja działania silników wyszukiwania (SEO). Wszystkie zautomatyzowane narzędzia do interpretowania treści na stronie mają dużo prostszą robotę jeżeli dostają semantyczny kod HTML. Oczywiście pod warunkiem, że ktoś tych semantycznych tagów używa poprawnie. Dzięki temu nasza strona może potencjalnie wyżej się pozycjonować w wynikach wyszukiwania Google.
Kiedy nie ma to znaczenia: Jeżeli tworzymy aplikację zamkniętą dla świata to ten punkt nie będzie miał dla nas znaczenia.
Pod tym terminem kryje się to jak bardzo nasza strona jest dostępna dla różnego rodzaju odbiorców. Dzięki użyciu semantycznego HTML, narzędzia pomocnicze, takie jak czytniki ekranowe, obsługa głosowa i inne, mogą działać sprawniej.
Czy wiedziałeś, że na świecie jest ok 2.2 miliarda osób z niepełnosprawnością wzrokową? Około 466 milionów ma znaczną utratę słuchu (globalnie), osób z niepełnosprawnością ruchową w samych stanach jest ok 13.7%, a tych z zaburzeniami neurologicznymi ok 10.8%.
Z kolei do 2050 roku, liczba osób starszych na świecie (powyżej 60 roku życia) wzrośnie aż do 2.1 miliarda. Wiesz co łączy te wszystkie grupy? Mogą skorzystać ze stron i aplikacji o wysokiej dostępności.
Kiedy nie ma to znaczenia: Nie każda aplikacja musi spełniać normy zapewniające wysoką dostępność. Nie oszukujmy się, tworząc aplikację na użytek wewnętrzny w firmie, o wąskim gronie odbiorców, dodatkowy czas poświęcany na dbanie o accessibility nigdy się nie zwróci.
Uwaga! Niektóre tagi mają znaczenie semantyczne tylko po umieszczeniu ich w odpowiednim miejscu. Więcej o tym piszę w artykule o landmarkach HTML.
Używając tagów semantycznych, sprawiamy, że dużo prościej jest zrozumieć “co jest czym w kodzie”. Mam na myśli to, że bez użycia komentarzów, możemy “przeskanować” plik i całkiem nieźle zrozumieć jaka jest jego struktura, czemu służy i jak może wyglądać.
Kiedy to ma mniejsze znaczenie: Kiedy stosujemy zasady atomic design i budujemy naszą aplikację z małych komponentów. Wtedy i tak nazywamy je zgodnie z ich przeznaczeniem więc kod jest zrozumiały w takim samym, a nawet większym stopniu.
Semantyczny HTML jak najbardziej ma znaczenie, ale nie zawsze równie duże. Jeżeli tworzysz aplikację na użytek wewnętrzny (nie będzie dało się jej wyszukać przez Google i inne podobne narzędzia), znasz użytkowników i ich ograniczenia zdrowotne (np. wszyscy mają sprawny wzrok - choć to akurat nie jest coś co jest dane nam na zawsze), a na dodatek używasz CSS-in-JS
albo dzielisz kod na wiele małych komponentów - jest spora szansa, że nie musisz sobie nimi szczególnie zaprzątać głowy.
Pamiętaj po prostu aby decyzja o używaniu ich lub nie, była efektem analizy w każdym projekcie z osobna.
Początkowo, ucząc się o dobrych praktykach, ma się wrażenie, że są one świętymi zasadami. Prawda jest jednak taka, że prawdziwe ich zrozumienie zaczyna się wtedy kiedy potrafimy podjąć przemyślaną decyzję o tym by ich nie używać. Nie z lenistwa czy braku wystarczającej wiedzy, tylko z pragmatyzmu. Jeżeli sukces produktu zależy od dostarczenia go bardzo szybko aby pierwsze osoby mogły go testować, to uzasadnione bywają drogi na skróty.
Niekiedy można mieć wrażenie, że internet jest z nami od zawsze. Czy wiemy jednak jak i kiedy powstał? Jakie są podstawy jego działania?
Jak chcesz zacząć ogarniać accessibility to zacznij od tej prostej listy. To absolutne konieczności!
Jak sprawdzić czy ktoś nie naciąga nas na kasę, oddając niskiej jakości, niedokończoną stronę? Na co zwrócić uwagę podczas zamawiania i odbioru strony?
Dziwnych zachowań formularzy jest wiele i potrafią one zupełnie zniszczyć odbiór aplikacji przez klientów. Dzisiaj omówimy temat tak żeby ten problem nie dotyka...