Jak czytać i interpretować wybrane metryki statycznej analizy kodu?

Lines of code (LOC):

Opis:
Mierzy ilość linii kodu w rozpatrywanym typie.
Interpretacja:
Metryka ta może być używana jako wskaźnik za dużych metod i klas.

Comment lines of code (CLOC):

Opis:
Ilość linii komentarza.
Interpretacja:
Niska wartość może wskazywać na niedostateczne udokumentowanie kodu.

Halstead’s volume (V)

Opis:
Opisuje rozmiar implementacji algorytmu. Obliczanie V jest oparte na ilości wykonanych operacji i operandów przetwarzanych w algorytmie.
Interpretacja:
V funkcji powinna być zawarta pomiędzy 20 a 1000. Objętości wyższe niż 1000 dają do zrozumienia że funkcja prawdopodobnie robi zbyt dużo rzeczy. V pliku powinna być zawarta między 100 i 8000.

Comment Weight (CW)

Opis:
Stosunek między kodem logicznym a komentarzem.
Interpretacja:
Niska wartość stosunku między kodem logicznym, a komentarzem może wskazywać na niedostateczne udokumentowanie kodu.

Cyclomatic complexity (CC)

Opis:
Złożoność cyklomatyczna, metryka używana do obliczania złożoności metod lub procedur.
Uproszczona wersja metryki: CC = d +1
Gdzie: d – liczba węzłów decyzyjnych w grafie (w praktyce liczy się ilość instrukcji if, while, do, for, ?:, catch, switch, case i operatorów &&, ||).
Interpretacja:
Wysokie wartości metryki CC wskazują na to, że metoda jest zbyt skomplikowana, przez co zwiększa się prawdopodobieństwo wystąpienia błędu. Wartości 1-4 są uważana za dobre, 8-10 jako zalecane do refaktoryzacji, powyżej 11 konieczna jest refaktoryzacja.

Lack of Cohesion in Methods (LCOM)

Opis:
Jest to metryka mierząca spójność metod wewnątrz klasy.
Interpretacja:
Wysoka wartość metryki może wskazywać klasy, które mają przydzieloną zbyt dużą ilość obowiązków i są kandydatem do podziału na mniejsze. Klasa o wysokiej wartości LCOM może być bardziej narażona na błędy, jest trudniejsza w testowaniu.

Afferent coupling (Ca):

Opis:
Ca to liczba klas spoza rozpatrywanego pakietu, które zależą od klas w rozpatrywanym pakiecie.
Interpretacja:
Wysoka wartość tej metryki sugeruje w niejawny sposób dużą stabilność komponentu, ale także dużą odpowiedzialność względem zależnych typów.

Efferent coupling (Ce):

Opis:
Ce to liczba klas z rozpatrywanego pakietu, które zależą od klas w innych pakietach. Mierzy zatem podatność rozpatrywanego pakietu na zmiany w pakietach, od których zależy.
Interpretacja:
Wysokie wartości tej metryki wskazują na niestabilność pakietu – duża zależność od zewnętrznych klas.

Instability (I):

Opis:
I jest to względna podatność na zmiany. Metryka ta jest zdefiniowana za pomocą Ce i Ca.
Interpretacja:
Pakiety powinny się dzielić na dwie grupy:
– stabilne o wartości metryki I bliskiej 0, które ponoszą dużą odpowiedzialność
wobec innych komponentów.
– niestabilne o wartości metryki I bliskiej 1, które w dużej mierze zależą od
innych komponentów.

Analiza statyczna kodu

Analiza statyczna kodu – analiza struktury kodu źródłowego lub kodu skompilowanego bez jego uruchomienia.

Zastosowania:
– automatyczna ocena zmian w kodzie
– szybka, wstępna analiza otrzymanego projektu
– uzyskiwanie informacji o zgodności kodu z narzuconymi standardami
– wspieranie procesu code review
– wykrywanie słabych punktów projektów – miejsc wymagających refaktoryzacji.

Zalety:
– Szybkość działania – szybkie wykrywanie błędów, których naprawa jest prosta i mało kosztowna
– nie wymagają uruchamiania programu
– łatwe do zrównoleglenia
– Łatwość użycia – proste we wdrożeniu w cykl wytwarzania oprogramowania
– Automatyzacja – integracja z narzędziami continuous integrations
– Możliwości rozszerzania: własne reguły, wtyczki
– Dużo darmowych narzędzi
– Integracja z innymi narzędziami: serwery automatyzacji, IDE, kontrola wersji

Wady:
– Wymagany dostęp do źródeł
– Reguły wykrywają zazwyczaj proste błędy i nie są w stanie wyeliminować ręcznego sprawdzenia kodu
– Dużo szumu, zbyt czułe – duże prawdopodobieństwo zaklasyfikowanie poprawnego fragmentu jako błędu (false positive)
– Skomplikowane algorytmy i architektury bardzo ciężko jest analizować
– Każde narzędzie zazwyczaj pokrywa pewien zakres testów (do 14% błędów?!). Dlatego warto korzystać z kilku różnych skanerów kodu

Dlaczego analizować kod?
– zwiększenie wydajności i stabilności poprzez zasady oparte na dobrych praktykach,
– uniknięcie typowych błędów podczas programowania,
– dostarczenie struktury do zarządzania standardami kodu.
– wymuszenie zasad i standardów pisania kodu
– zwiększenie bezpieczeństwa poprzez kolejny etap testowania
– analizując sygnalizowane błędy można się sporo nauczyć na temat dobrych praktyk bezpiecznego programowania

Haversine formula – Calculate distance between two Latitude/Longitude

Foreword

Haversine formula is a very popular and often used method at developing GPS applications. The Haversine formula is used to calculate
distance by latitude and longitude of two different points. This is the shortest distance between two points on the Earth’s surface.

Mathematical foundation

Φ – latitude, λ – longitude, R – radius of the earth (R ≈ 6.371 km)

Implementing a pattern on a database query using SQL looks like
as follows:

SELECT id, ( 3959 * acos( cos( radians(37) ) * cos( radians( lat ) )
* cos( radians( lng ) - radians(-122) ) + sin( radians(37) ) * sin(radians(lat)) ) ) AS distance
FROM issues
ORDER BY distance;

A big plus of use Haversine formula is that it can be implemented in SQL, and thus the time-consuming calculations of the distance are transferred from the application to the database.

Wstęp – Web accessibility

We współczesnym świecie Internet stał się powszechnie używanym narzędziem oddziałującym na bardzo wiele sfer ludzkiego życia. Jest kluczowym środkiem, który pozwala na wolność słowa, realizację prawa dostępu do informacji, prawa do nauki, pracy czy też dostępu do dóbr kultury. Dostępność serwisu internetowego oznacza możliwość swobodnego korzystania z publikowanych na nim treści wszystkim użytkownikom, bez względu na posiadane ograniczenia. Wieloletnie zapomnienie lub wręcz ignorowanie potrzeb ludzi z różnymi ograniczeniami spowodowało powstanie barier, które ciężko jest pokonać osobom niepełnosprawnym. Budynki posiadające wszędzie schody, zbyt wąskie drzwi w środkach komunikacji miejskiej, szkoły kompletnie nieprzystosowane do uczniów niepełnosprawnych, brak dostępu do informacji w serwisach internetowych są tylko kilkoma przykładami tego zaniedbania. W dzisiejszych czasach szeroko rozumiana dostępność coraz bardziej zyskuje na znaczeniu – buduję się windy, wymienia lub przystosowuje środki transportu. Świat wirtualny posiada również swoje bariery, które utrudniają korzystanie z jego dóbr osobom niepełnosprawnym. Powstające wciąż zapisy odnoszące się do dostępności w aktach prawnych różnej rangi starają się naprawić błędy spowodowane latami zaniedbań ze strony osób odpowiedzialnych za zamieszczanie informacji w sieci. Prawo międzynarodowe i unijne jednoznacznie wskazuje wagę uniwersalnej dostępności w rozwoju nowoczesnych technologii internetowych. W treści pracy szczególną uwagę poświęcono najczęściej występującym błędom w budowie serwisów internetowych oraz przedstawieniu barier, jakie napotykają osoby niepełnosprawne podczas korzystania z Internetu. Felieton artykułów zawiera opis wielu grup osób niepełnosprawnych, ponieważ dobre zrozumienie idei dostępności stron internetowych wymaga poznania rodzajów niepełnosprawności oraz ich wpływu na sposób interakcji z komputerem. W pracy podkreślono wagę uniwersalnej dostępności nie tylko w kontekście osób niepełnosprawnych, lecz wszystkich użytkowników Internetu bez wyjątku. Przedstawiony zbiór zasad oraz dobrych praktyk, powinien być wzorem i wskazówką dla osób zajmujących się projektowaniem serwisów internetowych.

Jak rozumieć dostępność stron internetowych

Strona lub serwis internetowy jest dostępny wtedy, gdy osoby z różnymi rodzajami niepełnosprawności mają pełny dostęp do jego treści, ich obsługa nie sprawia im problemu oraz rozumieją informacje w nim zamieszczone. Dostępność stron internetowych możemy podzielić na dwie podstawowe kategorie, pierwsza z nich to dostępność informacji umieszczanych na stronach, druga związana jest z aspektami technicznymi przygotowywanej witryny. Dostępność pod względem technicznym jak i informacyjnym są właściwościami ze sobą nierozerwalnie połączonymi. Strona internetowa stworzona zgodnie z jasnymi zasadami dostępności nie będzie przyjazna dla osób niepełnosprawnych, gdy zamieszczone w nim teksty nie będą cechowały się dużą zrozumiałością. Zależność ta jest dwustronna – nawet dobrze opracowane tekst nie będą dostępne dla osób niepełnosprawnych, gdy serwis, na którym się znajdują uniemożliwi ich przejrzyste wyświetlenie.
Mimo dużej różnorodności niepełnosprawności w większości przypadków tworzenie dostępnych serwisów nie wymaga dodatkowego nakładu pracy, a jedynie znajomości pewnych norm związanych z dostępnością oraz wiedzy na temat sposobu korzystania z Internetu przez osoby niepełnosprawne. Najważniejszym dokumentem zawierającym specyfikacje, szereg wytycznych oraz wskazówek dotyczących tworzenia dostępnych witryn internetowych jest WCAG 2.0 (Web Content Accessibility Guidelines) stworzony przez organizację W3C (World Wide Web Consortium). Dokument ten w wielu krajach wyznacza normy związane z dostępnością. W Polsce od maja 2012 r. wszystkie instytucje państwowe mają obowiązek przestrzegania wytycznych zawartych w dokumencie WCAG 2.0 (na poziomie AA) w celu dostosowania swoich stron do potrzeb osób niepełnosprawnych. Zawarte w nim kryteria opisują zasady tworzenia dostępnych formularzy, nawigacji, dobru odpowiednich czcionek, budowy kaskadowych arkuszy stylów, obsługi serwisu za pomocą klawiatury i myszki. Specyfikacja podzielona została na następujące poziomy:
• zasady – najwyżej w hierarchii dokumentu znajdują się cztery podstawowe zasady: postrzegalność, funkcjonalność, zrozumiałość i solidność;
• wytyczne – obejmują one 12 celów, których realizacja służy tworzeniu dostępnych treści internetowych. Cele te są niemierzalne, a ich założeniem jest pomoc w zrozumieniu i skuteczniejszym wdrażaniu kryteriów sukcesu;
• kryteria sukcesu – opracowano je dla każdej wytycznej, są to mierzalne kryteria, dzięki którym można sprawdzić zgodność z wytycznymi;
• techniki wystarczające i dodatkowe – jest to nieformalny zbiór szeregu technik, które pozwalają na jeszcze lepszą realizację wytycznych;

Specyfikacja została dodatkowo podzielona na trzy poziomy dostępności:
• A – poziom ten musi zostać osiągnięty, aby większość użytkowników miała dostęp do informacji zawartych w serwisie. Strony internetowe zgodne z tymi kryteriami osiągają minimalny poziom dostępności;
• AA – strony internetowe spełniające wymogi tego punktu osiągają rozszerzony poziom dostępności, co oznacza, że większość użytkowników może bez przeszkód korzystać z serwisu;
• AAA – osiągnięcie najwyższego poziomu dostępności gwarantuje swobodny dostęp do informacji zawartych w serwisie wszystkim użytkownikom.

Dokument ten skierowany jest głównie do osób odpowiedzialnych za projektowanie stron internetowych, gdyż słownictwo w nim zawarte jest bardzo specjalistyczne. Jak wskazują statystyki, które zostaną przedstawione w dalszej części pracy, większość badanych osób związanych z branżą informatyczną nie zna zasad zawartych w WCAG, a część z nich o tym dokumencie w ogóle nie słyszała.
Ze względu na ciągłe zmiany w technologiach internetowych zapewnienie dostępności serwisów internetowych jest niekończącym się procesem, dlatego podczas wprowadzania nowych funkcjonalności serwisu lub aktualizacji treści w nim zawartych należy pamiętać o zapewnieniu swobodnego dostępu do informacji wszystkim użytkownikom Internetu. Trzeba podkreślić, że słaba dostępności stron nie wynika z braku funkcjonalności dla osób niepełnosprawnych, a z zaniedbania, niewiedzy i prostych błędów osób odpowiedzialnych za ich wykonanie.

Rodzaje niepełnosprawności

Wstęp

Niepełnosprawność jest pojęciem bardzo szerokim, co potwierdza istnienie wielu definicji oraz klasyfikacji niepełnosprawności. Różne rodzaje niepełnosprawności wiążą ze sobą pewne ograniczenia podczas korzystania z serwisów internetowych. Osoba z ubytkiem słuchu będzie miała problem z odsłuchaniem nagrania, niewidomy nie zobaczy grafiki, użytkownik, który ze względu na chorobę posługuje się tylko klawiaturą, może zostać wykluczony z dostępu do części serwisu. Trzeba podkreślić, że w wielu sytuacjach dotyczy to również osób całkowicie sprawnych, korzystających z Internetu w określonych sytuacjach. Dobrym przykładem może być niedowidzenie spowodowane zmęczeniem wzroku, które jest zjawiskiem coraz bardziej powszechnym. Warto podkreślić, że serwisy internetowe powinny cechować się dostępnością nie tylko ze względu na osoby niepełnosprawne, ponieważ zagwarantuje to możliwość dostępu do treści wszystkim użytkownikom bez względu na okoliczności.

W poniższym tekście przedstawiono główne grupy osób wykluczonych z dostępu do informacji oraz przedstawiono problemy, z jakimi się spotykają podczas korzystania z serwisów internetowych. Kluczem do zrozumienia potrzeb osób niepełnosprawnych jest wiedza na temat sposobu obsługiwania przez nich komputera oraz wykorzystywanych narzędzi.

Użytkownicy niewidomi

Do użytkowników niewidomych zaliczają się osoby niewidzące od urodzenia oraz ociemniali, czyli ci, których niepełnosprawność jest nabyta. Jest to grupa osób, które są najbardziej wykluczone ze swobodnego dostępu do informacji w Internecie. Osoby te najczęściej do obsługi komputera wykorzystują tylko klawiaturę. Zła jakość przygotowanych serwisów sprawia, że ich obsługa jest ciężka lub wręcz całkowicie niemożliwa.

Niewidomi użytkownicy korzystają ze stron dzięki czytnikom ekranu i syntezatorom mowy. Czytnik ekranu jest oprogramowaniem, którego zadaniem jest przetworzenie strony internetowej do postaci tekstowej na podstawie informacji znajdujących się w kodzie źródłowym – tytuły, nagłówki, akapity, itp. Tak przygotowany tekst jest zamieniany na mowę za pomocą narzędzia określanego, jako syntezator mowy. Im stopień dostępności strony jest większy, tym więcej informacji może być poprawnie przetworzonych przez czytnik ekranu, co skutkuje lepszym zrozumieniem strony przez osobę niewidomą. Na poniższym zestawieniu znajduje się widok jednej ze stron serwisu fundacji „Widzialni” (rys. 1) oraz tekst strony przedstawiony w narzędziu symulującym działanie czytnika ekranu (rys. 2).

Rys. 1. Widok jednej ze stron serwisu www.widzialni.org
Rys. 2. Narzędzie symulujące działanie czytnika ekranu

Użytkownicy niedowidzący

Osoba niedowidząca to taka, której widzenie jest ograniczone lub zaburzone i nie może być skorygowane za pomocą okularów lub soczewek. Niedowidzenie najczęściej polega na utracie ostrości, ograniczeniem pola widzenia, nadwrażliwości na światło, utracie kontrastu lub zniekształceniu obrazu. Niedowidzenie może spotkać ludzi w każdym wieku, lecz choroba ta dotyka najczęściej osób starszych, ponieważ jest to naturalna konsekwencja starzenia się organizmu. W aspekcie dostępności do wspominanej grupy można zaliczyć również osoby mające problemy z widzeniem, ale pod względem medycznym nie można ich zaklasyfikować do grupy osób niedowidzących – niedowidzenie sytuacyjne, przeciążenie wzroku.

Osoby niedowidzące przeglądają strony internetowe za pomocą specjalnych programów powiększających zawartość ekranu, które dają możliwość nawet 16-krotnego powiększenia. Na poniższym zestawieniu znajduje się widok jednej ze stron serwisu Ministerstwa Cyfryzacji w oryginalnej wielkości (rys. 3) oraz powiększonej 5-krotnie (rys. 4)

Rys. 3. Widok jednej ze stron serwisu www.mc.gov.pl
Rys. 4. Widok strony powiększonej 5 razy

Użytkownicy z mniejszą wadą wzroku korzystają z powiększenia samego tekstu lub zmiany kontrastu. Narzędzia, z których korzystają osoby niedowidzące dotyczą najczęściej całego systemu komputerowego a nie pojedynczych stron, dlatego też osoby te zwykle nie korzystają ze zmiany wielkości tekstu lub modyfikacji kolorystyki na pojedynczych stronach.

Użytkownicy z zaburzeniami widzenia barw

Osoby z zaburzeniami widzenia barw cechują się niezdolnością do spostrzegania różnic pomiędzy niektórymi lub wszystkimi kolorami. Zaburzenia rozpoznawania barw dzielą się na wrodzone oraz nabyte i mają znaczący wpływ na dostęp do serwisów, w których jedynym sposobem przekazywania informacji jest kolor. Zaburzenia sklasyfikowane są zgodnie z rodzajem uszkodzonych czopków oka i stopnia ich uszkodzenia:

  • protanopia – nierozpoznawanie barwy czerwonej;
  • deuteranopia (tzw. daltonizm) – nierozpoznawanie barwy zielonej;
  • tritanopia – nierozpoznawanie barwy niebieskiej;
  • monochromatyzm – całkowita niezdolność do rozpoznawania barw;

Użytkownicy niesłyszący

Użytkownicy niesłyszący są kolejną dosyć liczną grupą osób wykluczonych ze swobodnego dostępu do informacji zamieszczonych w Internecie. Ich problemy dotyczą przede wszystkim dostępności materiałów multimedialnych. W ostatnich latach rośnie popularność zamieszczania w serwisach internetowych treści wideo, w których dźwięk stanowi wartość równie ważną co obraz. Jeśli filmy nie są opatrzone transkrypcją tekstową, osoby niesłyszące są całkowicie wykluczone z odbioru tego typu materiałów. Innym aspektem, który warto wiedzieć jest fakt, że dla osób niesłyszących naturalnym językiem jest język migowy a nie, jak można się spodziewać, język polski.  Dlatego dla takiej osoby może okazać się problemem zrozumienie źle zredagowanego lub zbyt skomplikowanego tekstu umieszczonego na stronie.

Osoby niepełnosprawne ruchowo

Jest to grupa osób, u których brak kończyn lub ich części, uszkodzenia układu nerwowego, niepoprawne uformowanie szkieletu, uszkodzenia stawów znacząco wpływają na sposób korzystania z komputera, a co za tym idzie serwisów internetowych. Ze względu na rodzaj niepełnosprawności możemy wyróżnić następujące sposoby korzystania z komputera:

  • użytkownicy klawiatury – ze względu na ograniczoną koordynację ruchową, a co za tym idzie niemożliwość precyzyjnego posługiwania się myszką, niektóre osoby korzystają wyłącznie z klawiatury;
  • użytkownicy urządzeń wskazujących – są to urządzenia stanowiące alternatywę dla standardowej myszy komputerowej. Do urządzeń tych należą specjalistyczne joysticki, myszy obsługiwane za pomocą ruchu głowy, ustami czy oczami;
  • użytkownicy klawiatury i myszy – są to użytkownicy, którzy pomimo korzystania ze standarowych urządzeń nie są w stanie ich całkowicie obsłużyć – problemem jest dla nich użycie kombinacji klawiszy, tzw. skrótów klawiaturowych.

Osoby z niepełnosprawnością intelektualną

Jest to również liczna grupa osób wykluczona z dostępu do informacji. Niepełnosprawność intelektualna charakteryzuje się utrudnieniami w sferze poznawczej, powodując wolniejsze tempo uczenia się oraz opanowywania różnorodnych sprawności. Do grupy tej można zaliczyć osoby:

  • z dysleksją;
  • z niższym niż przeciętny ilorazem inteligencji;
  • cierpiące na autyzm;
  • z nadpobudliwością;
  • cierpiące na chorobę Alzheimera;
  • cierpiące na depresję;
  • z zaburzeniami lękowymi;
  • z przebytymi stanami neurologicznymi;
  • cierpiące na inne choroby utrudniające skupienie i procesy poznawcze;

Największym problemem użytkowników serwisów internetowych, należących do którejś z grup wymienionych powyżej jest zrozumienie skomplikowanego tekstu oraz nielogicznie zaprojektowana nawigacja strony.

Wszyscy jesteśmy niepełnosprawni

Dostępność jest jedną z najważniejszych cech, jaką powinna wyróżniać się strona internetowa, ponieważ wbrew pozorom dotyczy ona wszystkich użytkowników. Dla przykładu można podać przypadek osoby pracującej przez dłuższy czas przy ekranie komputera. Jej przeciążony wzrok wcale nie różni się od osoby trwale niedowidzącej. Innym przykładem może być sytuacja osób, które w wyniku wypadku lub chorób stają się czasowo niepełnosprawne i w trakcie powrotu do zdrowia starają się korzystać z serwisów internetowych. Problem przejrzystości tekstów również nie dotyczy tylko osób z niepełnosprawnością intelektualną, kłopot ze zrozumieniem przekazywanych treści mogą mieć także osoby z niskim wykształceniem oraz ci, dla których język polski nie jest językiem ojczystym.  Traktując problem szerzej można zauważyć, że osoby przebywające w hałasie lub nieposiadające głośników komputerowych również mogą stać się niesłyszącymi użytkownikami serwisu. Strona internetowa dostępna dla osób niepełnosprawnych to strona bardziej przyjazna osobom starszym, słabiej wykształconym – jest to strona dostępna uniwersalnie.

Wyszukiwarki

Wśród specjalistów do spraw SEO (Search Engine Optimization), którzy zajmują się weryfikacją i modyfikacją kodu strony pod kątem jak najwyższej atrakcyjności dla wyszukiwarek, popularne jest stwierdzenie, że narzędzia takich firm jak Google, Bing czy Yahoo odwiedzające strony internetowe są jak osoby niepełnosprawne. Roboty, które zbierają informacje o zawartości oraz jakości odwiedzanych stron mają dostęp do tych samych treści, co osoby niewidzące. Im więcej treści będzie dostępnych dla tych narzędzi tym ocena jakości strony będzie większą, a co za tym idzie pozycja w wynikach wyszukiwania.

Dostępność treści

Wstęp

Tekst jest podstawowym rodzajem informacji przekazywanym przez serwisy internetowe. Dzięki dostępowi do Internetu mamy możliwość korzystania z nieograniczonego zasobu informacji. Nie każda jednak z tych informacji jest przedstawiona w postaci dostępnej dla użytkownika. Grafiki, mapy, wideo oraz innego rodzaju pliki multimedialne są kolejnym rodzajem informacji przekazywanym przez serwisy internetowe. W idealny sposób uatrakcyjniają wygląd strony internetowej jak również stanową uzupełnienie i wzbogacenie przekazu tekstowego. W niektórych przypadkach prezentacja informacji za ich pomocą staje się dominująca. Wraz z częstszym wykorzystaniem multimediów ich dostępność staje się coraz ważniejszym aspektem w dążeniu do tworzenia stron przyjaznych wszystkim użytkownikom. Jak jednak wskazują wyniki ankiety wiedza wśród twórców stron internetowych na temat dostępności multimediów jest wciąż niewystarczająca – co skutkuje tym, że są to elementy najczęściej pomijane jeśli chodzi o jakość serwisów.

Zrozumiałość tekstu

Zrozumiałość tekstu jest podstawą jego dostępności zarówno dla osób niepełnosprawnych jak i zdrowych. Artykuł przygotowany bez uwzględnienia podstawowych zasad zrozumiałości będzie bezwartościowy dla osób go czytających. Winę za teksty niskiej jakości pod względem dostępności ponoszą ich autorzy oraz redaktorzy. Powodem jest prawdopodobnie brak świadomości, że publikacja powinna być zrozumiale napisana by była dostępna dla wszystkich odbiorców. Liderami w opracowywaniu niezrozumiałych, łamiących wszelkie standardy dostępności tekstów są niestety instytucje publiczne.

Treści publikowane na stronach internetowych powinny zawierać powszechnie zrozumiane słownictwo. Jeśli to możliwe redaktorzy powinni pisać możliwie najkrótszymi zdaniami, natomiast unikać zdań wielokrotnie złożonych – taki tekst będzie bardziej dostępny dla niewykształconego czytelnika. Publikacje powinny być krótkie oraz zwięzłe – w ten sposób będą one bardziej przystępne dla osób niepełnosprawnych intelektualnie lub cierpiących na dysleksję, która utrudnia poprawny odbiór tekstu. Elementarną zasadą jest to, aby w miarę możliwości stosować jak najmniej specjalistycznego słownictwa, natomiast całkowicie unikać żargonu, przenośni oraz ironii. Każdy skrótowiec, na przykład PZU, powinien być rozwinięty podczas pierwszego użycia – PZU (Powszechny Zakład Ubezpieczeń). Jeśli artykuł zawiera wiele skrótowców, zaleca się przygotowanie słowniczka, który będzie je wszystkie uwzględniał. Podstawą przygotowywania dostępnego tekstu jest rygorystyczne przestrzeganie zasad gramatyki, ortografii oraz interpunkcji.

Redagując tekst należy pamiętać o osobach niesłyszących – dotyczy głównie tych, którzy urodzili się z wadą słuchu i ich naturalnym językiem jest język migowy. Niepoprawnie zredagowany tekst może przyczynić się do trudności w odbiorze informacji. Dobrze napisany tekst nie tylko poprawi jego dostępność dla osób niepełnosprawnych, ale również zdrowych. Jak wskazują badania prawie 80% użytkowników nie czyta całości artykułów zamieszczonych na serwisach internetowych, a jedynie skanuje wzrokiem stronę w celu znalezienia potrzebnych informacji. Teksty przygotowane zgodnie zasadami zrozumiałości pozwolą na łatwiejsze zrozumienie przekazywanych informacji nawet jeśli będą one wyjęte z kontekstu całego artykułu. Stosowanie przedstawionych zasad prawidłowego redagowania tekstu przyczyni się do zwiększenia dostępności stron internetowych dla wszystkich użytkowników.

Formatowanie tekstu

Bardzo ważną rolę w dostępności publikowanego tekstu ma jego czytelność, czyli odpowiednie sformatowanie.  Zrozumiałość oraz czytelność tekstu są dwoma aspektami, które składają się na jego dostępność. Wbrew pozorom poprawnie formatowanie tekstu gra kluczową rolę również dla osób niewidomych, ponieważ od tego zależy, w jakim stopniu czytniki ekranu poprawnie przetworzą stronę. Internet, ze względu na ilość publikowanych informacji, jest szczególnym miejscem, w którym najważniejszą zasadą formatowania tekstu jest jego podział na mniejsze, logiczne i zrozumiałe części.

Podstawową techniką podziału tekstów jest stosowanie akapitów, które poprawiają jego czytelność. Tekst zawarty w akapicie powinien zawierać jedną myśl oraz stanowić pewną całość. Pierwsze zdanie akapitu powinno wskazywać na jego główne przesłanie. Nie stosowanie opisywanej techniki skutkuje powstaniem „ściany tekstu”, która sprawia duży problem osobom z dysleksją. Negatywnie na czytelność artykułu wpływa również justowanie tekstu od lewej do prawej. Nieregularne ułożenie tekstu w przypadku justowania jedynie do lewej strony pomaga użytkownikowi, który zgubił czytaną linijkę tekstu przypomnieć sobie moment, w którym przerwał czytanie. Pomimo walorów estetycznych tekstu wyjustowanego do obu stron jego czytanie sprawia trudność wszystkim użytkownikom, a w szczególności tym, u których stwierdzono dysleksję. Kolejną techniką poprawienia czytelności tekstu jest stosowanie nagłówków, które powinny opisywać wszystkie sekcje tekstu. Tak sformatowany tekst pozwala na szybkie odnalezienie interesujących informacji w obszernym artykule. Wzbogaceniem formatowania tekstu może być wykorzystanie wypunktowania lub listy elementów, które są dobrze przyswajalnym sposobem przedstawienia treści.  Prezentacja złożonych danych powinna się odbywać za pomocą tabel oraz wykresów.

Do wyróżnienia istotnych części tekstu dobrze nadaje się pogrubienie czcionki, jednak nie wolno pogrubień nadużywać oraz stosować dla dłuższych fragmentów, ponieważ da to efekt odwrotny od zamierzonego i zmniejszy czytelność tekstu. Powyższe zalecenia obowiązują również kursywy, która jest najczęściej stosowana do wyróżnienia cytatów. Należy całkowicie unikać wyróżniania tekstu poprzez stosowanie wielkich liter dla całych zdań lub akapitów – pisane w ten sposób fragmenty są wyjątkowo nieczytelne.  Jeśli chodzi o formatowanie tekstu jednym z bardzo ważnych czynników, które mają wpływ na jakość czytania i odbioru informacji ma wielkość czcionki. Problem ten dotyczy zarówno osób niepełnosprawnych jak i tych posiadających wadę wzroku lub osób starszych. Za wielkość czcionki nie zawsze odpowiada redaktor tekstu, czasami narzucony jest pewien graficzny i typograficzny wygląd strony, który wymusza użycie konkretnego rodzaju i wielkości czcionek. Dlatego też już podczas projektowania wyglądu strony należy nie tylko dbać o jej estetykę, lecz również funkcjonalność i dostępność dla osób niepełnosprawnych.

Kolejną ważną zasadą jest zastosowanie odpowiednio dużego kontrastu pomiędzy tekstem, a tłem – aspekt ten został szczegółowo poruszony w specyfikacji WCAG.  Dokument ten określa minimalny kontrast na poziomie 4,5 do 1 – wartość ta obliczana jest matematycznie, jako różnica jasności danego koloru tekstu do koloru tła. Kontrast jest podstawowym wyznacznikiem dostępności stron internetowych, dlatego też zalecane jest stosowanie dużo większych wartości kontrastu niż te określone jako minimalne w specyfikacji WCAG. Dobranie zbyt niskiej wartości tego parametru spowoduje utrudnienia w odbiorze informacji dla wszystkich użytkowników. Największą wartość kontrastu wynoszącą 20 do 1 możemy uzyskać wykorzystując kolor biały i czarny – w połączeniu z odpowiednio dużym rozmiarem czcionki i zastosowaniem podziału tekstu na akapity zapewniona zostanie bardzo dobra czytelność strony.

Elementy graficzne

Zdjęcia oraz inne elementy graficzne mogą być dostępne dla użytkowników niepełnosprawnych, w tym dla osób niewidzących. Warunkiem zapewnienia dostępności grafik zamieszczonych na stronie jest opatrzenie ich w opis alternatywny, który opisuje jego zawartość lub pełnioną funkcję.

Przykład poprawnie zastosowanego atrybutu alt:

<img src=”images/photo.jpg” alt=”Zdjęcie klasowe podczas wycieczki szkolnej” />

Zastosowanie opisu alternatywnego jest jedną z najważniejszych zasad dostępności stron internetowych – brak atrybutu alt sprawia, że obrazek jest niedostępny dla osób niewidomych. Jest to jednocześnie jedna z najprostszych do zaimplementowania wytyczna dotycząca dostępności stron internetowych dla osób niepełnosprawnych.

Treść opisu alternatywnego powinna być dostosowana do funkcji, jaką grafika pełni na stronie. Pierwszą i najczęściej spotykaną funkcją jest przekazywanie informacji. W tym przypadku treść atrybutu alt powinna w kilkunastu słowach, adekwatnie opisywać to co znajduje się na zdjęciu. Długość tekstu alternatywnego, ze względu na wygodę korzystania z serwisów przez osoby niepełnosprawne, nie powinna być bardzo obszerna.  Należy również wiedzieć, że czytniki ekranów, z których korzystają niewidomi użytkownicy, przy zbyt długich opisach zwykle obcinają treść tekstu alternatywnego do 125 znaków. Jeśli element zawiera mapy, schematy, wykresy lub inne rzeczy wymagające obszerniejszego opisu zalecane jest stosowanie atrybutu longdesc, który zawiera odnośnik do dodatkowej strony z opisem. W ten sposób możemy umożliwić użytkownikowi wyświetlenie informacji zamieszczonych na mapie w postaci tabeli, w której dane prezentowane są w sposób bardziej dostępny. Stosowanie atrybutu longdesc nie zwalnia jednak z konieczności umieszczenia na elemencie krótszego opisu za pomocą standardowego tekstu alternatywnego. Następnym powodem stosowania obrazów na stronach jest umieszczanie tekstu w postaci pliku graficznego – zwykle są to banery składające się z tła i tekstu. Jest to niepoprawnym działaniem, jeśli chodzi o aspekt dostępności stron internetowych dla osób niepełnosprawnych, aczkolwiek wciąż jest to bardzo często stosowane. W tym przypadku, aby poprawić dostępność obrazu, treść opisu alternatywnego powinna być identyczna jak tekst, który się na nim znajduje.  W przypadku grafik pełniących konkretną funkcję tekst alternatywny nie powinien zawierać tekstowego zobrazowania zawartości, a opis funkcji jaką pełni. Przykładem mogą być grafiki, które są zarówno odnośnikami do innych stron lub przyciski zamieszczone w formularzach służące do wysyłania wprowadzonych danych. Kolejną najczęściej spotykaną funkcją, jaką pełnią grafiki na stronach jest uatrakcyjnienie wyglądu poprzez stosowanie obrazów dekoracyjnych, ikon, clipartów. Są to elementy wyglądu strony, które nic nie wnoszą do jej treści, nie powinny wiec być przetwarzane przez czytniki ekranu i prezentowane osobom, które z nich korzystają. Jest to jedyny przypadek, w którym wartość atrybutu alt powinna być pusta. Pomimo, że grafika nie zawiera tekstu alternatywnego, powinna posiadać pusty atrybut alt, w przeciwnym przypadku większość czytników ekranu zamiast pominąć ten element zakomunikuje jego wystąpienie odczytując nazwę pliku.

Przykład poprawnie zastosowanego atrybutu alt dla obrazka dekoracyjnego:

<img src=”cliparts/happy.png” alt=”” />

Banery, animacje oraz reklamy

Banery, animacje oraz reklamy są jednym z największych wrogów w walce o dostępność stron internetowych. Jeśli nie ma takiej potrzeby, nie zaleca się ich stosowania. Jeśli z jakichś przyczyn wymagana jest ta forma przekazywania informacji, należy ograniczyć stosowanie dużej liczby elementów animowanych.

Głównymi wadami banerów są:

  • brak dostępności do treści na nich zamieszczonych;
  • utrudniona lub niemożliwa obsługa za pomocą klawiatury;
  • brak alternatywy dla informacji na nich prezentowanych;
  • niewystarczające wsparcie dla czytników ekranu;
  • sprawiają trudności nie tylko jeśli chodzi o odbiór treści na nich umieszczonych, ale przede wszystkim rozpraszają uwagę i utrudniają odbiór informacji zamieszczonej na stronie;
  • natarczywe reklamy lub animacje skutecznie uniemożliwiają korzystanie z serwisów osobom niepełnosprawnym.

Mapy

Kolejnym rodzajem multimediów wzbogacających stronę internetową są mapy. Sposób przedstawiania informacji z ich wykorzystaniem niezwykle rzadko spełnia wymogi dostępności dla osób niepełnosprawnych. Istnieją dwie podstawowe metody zamieszczania map. Pierwsza z nich, najbardziej popularna, bazuje na zewnętrznych serwisach takich jak Google Maps czy Zumi. Mapy pobrane ze wspomnianych serwisów są dodawane na stronę w postaci okienek. Równie często wykorzystywane jest umieszczanie na stronie map w postaci grafiki. Oba te rozwiązania są poprawne pod warunkiem posiadania treści w postaci alternatywnej. Dobrym sposobem na umożliwienie jak największego dostępu do treści zawartej na mapie jest jej przedstawienie w alternatywnej postaci – na przykład w formie tabeli.

Materiały wideo

Rozwój Internetu, a przede wszystkim przyśpieszenie przesyłu informacji, umożliwiło rozwinięcie się nowego trendu prezentacji danych, jakim są treści wideo. Filmy w dobie dzisiejszego projektowania witryn internetowych stały się ważnym i atrakcyjnym sposobem przekazywania treści. Filmy promocyjne, reportaże, wywiady są doskonałym uzupełnieniem treści tekstowych, a w niektórych serwisach stały się dominującą formą przekazu. Rozwój multimedialnej gałęzi Internetu niesie za sobą poważne konsekwencje w dostępności informacji dla osób niepełnosprawnych. Pierwszą grupą osób narażonych na wykluczenie informacyjne są osoby niesłyszące. Większość materiałów filmowych dostępnych na stronach internetowych jest synchronizowana ze ścieżką dźwiękową, która stanowi równie ważną co obraz wartość informacyjną. Z tego powodu osoby z wadą słuchu są w dużym stopniu wykluczone z pełnego odbioru treści. Opatrzenie filmów napisami jest najprostszym sposobem poprawienia dostępności do prezentowanej informacji – napisy mogą być domyślnie ukryte, ale ich włączenie powinno być intuicyjne i nie sprawiać problemów. Nie tylko osoby niepełnosprawne korzystają z napisów podczas oglądania filmów – taka alternatywna forma przekazu informacji może być przydatna w sytuacji, gdy nie możemy sobie pozwolić na głośne odtwarzanie materiału wideo, nie posiadamy głośników lub hałas nie pozwala na komfortowe słyszenie dźwięku. Kolejną grupą użytkowników wykluczonych z pełnego odbioru treści są osoby niewidome, które pomimo swojej niepełnosprawności również korzystają z materiałów wideo. Bardzo często dostatecznym źródłem informacji jest dla nich ścieżka dźwiękowa odtwarzanego filmu. Biorąc pod uwagę, że osoby niewidome do obsługi komputera korzystają jedynie z klawiatury, priorytetem jest zapewnienie, aby zamieszczony na stronie odtwarzacz filmów cechował się dużą dostępnością z poziomu klawiatury oraz był poprawnie interpretowany przez czytniki ekranu. Osoby niepełnosprawne ruchowo, które podobnie jak niewidomi, również posługują się głównie klawiaturą powinny mieć swobodny dostęp do pełnej obsługi odtwarzacza.

Pliki jako załączniki do stron

Częstym sposobem na publikowanie już gotowych dokumentów w formatach PDF czy DOC (Word) jest dodawanie ich jako załączniki do strony, które użytkownik może pobrać, a następnie odtworzyć. Strategia ta jednak wiąże ze sobą wiele problemów, jeśli chodzi o dostępność treści w nich zawartych, dlatego powinniśmy jej stanowczo unikać. Należy pamiętać, że użytkownik pobierający w ten sposób pliki może mieć problem z odtworzeniem ze względu na brak posiadania odpowiedniego oprogramowania. W celu ułatwienia osobom niepełnosprawnym dostępu do treści dokumentów ich zawartość powinna zostać przeniesiona na regularną stronę internetową z zachowaniem wszelkich technik dostępności.

Dostępność nawigacji

Wstęp

Nawigacja, często określana nazwą menu, jest najistotniejszą funkcją serwisu internetowego. Podstawową cechą, jaką powinna wyróżniać się dobra nawigacja jest intuicyjność. Prostota jej używania powinna umożliwić użytkownikowi w szybkim czasie zrozumienie struktury całej strony. Nawigacja powinna wyglądać, a przede wszystkim zachowywać się tak samo na każdej stronie serwisu internetowego, dzięki czemu jest przewidywalna i łatwa w użyciu. Dobrze skonstruowana nawigacja to taka, która niezależnie od niepełnosprawności pozwoli wszystkim użytkownikom na dotarcie do każdej pod strony serwisu.

Nawigacja a osoby niepełnosprawne

Każda strona internetowa zawiera jakiś rodzaj nawigacji. Pomimo wagi zadania, jaką spełnia menu na stronie część serwisów utrudnia lub wręcz uniemożliwia swobodne poruszanie się po serwisie osobom niepełnosprawnym. Niedostępna nawigacja to jeden z największych błędów dostępności. Najczęstszym powodem niepoprawnie przygotowanej nawigacji jest brak świadomości programistów w dziedzinie dostępności stron internetowych oraz sposobu ich obsługiwania przez osoby niepełnosprawne. Skutkiem umieszczenia niskiej jakości nawigacji może być sytuacja, w której osoba niewidząca, korzystająca z czytnika ekranu w ogóle nie zostanie poinformowana o jej obecności. Innym przykładem wykluczenia z dostępu do informacji może być brak obsługi nawigacji za pomocą samej klawiatury – uniemożliwi to korzystanie z serwisu osobom niewidomym oraz niepełnosprawnym ruchowo.

Pierwszą grupą osób narażonych na wykluczenie informacyjne z powodu źle skonstruowanej nawigacji są osoby niewidome. Użytkownicy znajdujący się w tej grupie korzystają z dostępu do informacji za pomocą czytników ekranu, natomiast do interakcji z serwisem posługują się jedynie klawiaturą. Ze względu na sposób korzystania z serwisów przez osoby niewidome najważniejsze jest, aby nawigacja pozwalała na jej poprawne przetworzenie przez czytniki ekranu, oraz umożliwiała obsługę z poziomu klawiatury.  Kolejną grupą użytkowników, których dotyka problem niedostępnej nawigacji są osoby niepełnosprawne ruchowo, które ze względy na trudności z precyzyjnym klikaniem do codziennej pracy z komputerem wykorzystują klawiaturę. Tutaj również najważniejszą zasadą jest udostępnienie obsługi nawigacji z poziomu klawiatury, oraz zapewnienie wyraźnego fokusa, czyli obramowania na aktywnym elemencie strony podczas nawigacji za pomocą klawisza TAB. Osobom niepełnosprawnym trudności w nawigacji sprawiają przede wszystkim wszelkie rodzaje menu rozwijanych za pomocą kliknięcia lub najechania myszką.

Odnośnik jako element nawigacji

Najczęstszym sposobem realizacji nawigacji jest wykorzystanie odnośników, które pozwalają przejść do innej strony tego samego serwisu lub zupełnie innej witryny. Odnośniki przygotowane zgodnie z zasadami dostępności w znaczącym stopniu ułatwiają korzystanie z serwisu osobom niepełnosprawnym. Podstawowa cechą dostępnego odnośnika jest zrozumiałość. Wartość tekstowa odnośnika powinna w jednoznaczny sposób określać dokąd prowadzi, dlatego nie powinno się stosować odnośników o powtarzającej się lub nic nieznaczącej treści takich jak: „więcej”, „tutaj” czy „szczegóły”. Odnośniki, których kliknięcie powoduje otwarcie nowego okna lub pobranie pliku powinny zawierać stosowną informację. W przypadku odnośników graficznych powinny dodatkowo w opisie alternatywnym zawierać przedstawienie funkcji, jaki pełni na stronie.

Usprawnienia nawigacji

Jednym z usprawnień adresowanych dla osób niepełnosprawnych jest umieszczanie na początku strony specjalnego odnośnika, który przekierowuje go do głównej treści strony. Link zwykle nazywany „przejdź do treści” oraz „skocz do treści” pojawia się po pierwszym użyciu przycisku TAB. Technika ta chroni użytkownika korzystającego z klawiatury przed przechodzeniem przez wszystkie odnośniki umiejscowione przed główną teścia strony internetowej. Na poniższym przykładzie znajduję się widok jednej ze stron serwisu Państwowego Funduszu Rehabilitacji Osób Niepełnosprawnych (rys. 1) oraz ukazanie działania odnośnika „przejdź do treści”.

Rys. 1. Widok jednej ze stron serwisu www.pfron.org.pl

Ze względu na odmienne rodzaje niepełnosprawności użytkownicy w różny sposób nawigują w serwisach internetowych. Aby zapewnić wygodę korzystania z rozbudowanych serwisów wszystkim użytkownikom należy zastosować dwa różne sposoby nawigacji. Dobrą alternatywą dla menu może być wyszukiwarka, która w prosty sposób pozwala odnaleźć interesującą informację. Poprawne wdrożenie wyszukiwarki skraca czas poszukiwania informacji nie tylko osobom niepełnosprawnym, lecz wszystkim użytkownikom serwisu. Na poniższym przykładzie znajduje się widok jednej ze stron serwisu Kancelarii Prezesa Rady Ministrów (rys. 2) oraz ukazanie działania wyszukiwarki.

Rys. 2. Widok jednej ze stron serwisu www.premier.gov.pl

Kolejnym z udogodnień stosowanym na stronach internetowych jest zdefiniowanie specjalnych skrótów klawiaturowych, których wciśnięcie umożliwia szybki dostęp do poszczególnych elementów strony. Wbrew założeniu stosowanie skrótów klawiaturowych nie jest bezpiecznym rozwiązaniem, ponieważ może prowadzić do konfliktu z innymi programami, co może przynieść więcej problemów niż korzyści.

Dostępność formularzy

Wstęp

Formularze są elementami, które umożliwiają interakcję użytkownika z serwisem. Za ich pomocą realizowana jest komunikacja, zakupy online czy wyszukiwanie informacji.  Projektowanie formularza dostępnego dla wszystkich użytkowników, a w szczególności dla osób niepełnosprawnych, jest trudnym zadaniem, ponieważ wymaga od projektantów i programistów wiedzy na temat obowiązujących standardów dostępności. Dobrze zaimplementowany formularz powinien wyróżniać się zrozumiałymi etykietami, wykrywaniem błędów w wypełnionych polach, a w przypadku złożonych formularzy powinien zawierać dodatkowe instrukcje oraz wyjaśnienia. Najczęstszą przyczyną niedostępności formularzy są podstawowe błędy techniczne, które znacząco wpływają na łatwość ich obsługi przez osoby niepełnosprawne.

Projektowanie defensywne

Projektowanie defensywne, określane czasami jako projektowanie ubezpieczone, skupia się na przewidywaniu ewentualnych problemów, na które mogą natrafić użytkownicy systemu zarówno podczas jego poprawnego jak i niepoprawnego sposobu użycia. Idea ta zakłada, że możliwe jest wczesne rozpoznanie elementów serwisu, z którymi użytkownicy mogą mieć problem, co pozwala na ich udoskonalenie w początkowej fazie projektu. Technika ta wymaga większego nakładu pracy oraz dużego zaangażowania ze strony osób uczestniczących w tworzeniu serwisu.  Projektant budujący formularze techniką defensywną, na podstawie wiedzy, a przede wszystkim własnego doświadczenia, jest w stanie określić momenty interakcji, w których użytkownicy mogą mieć problemy, a następnie je wyeliminować lub zbudować w taki sposób by ograniczyć zagubienie użytkownika.

Dostępność formularzy

Istnieje kilka zasad, których przestrzeganie sprawia, że formularze stają się przyjazne wszystkim użytkownikom serwisu. Pierwszą i najważniejszą z nich jest poprawne opisanie poszczególnych pól formularza tak, aby użytkownik wiedział, co należy w nie wpisać. Większość stron, pomimo stworzenia odpowiednich etykiet zawierających opis pól formularza nie jest przyjazna osobom niewidomym, które korzystają z czytników ekranu. Nie wystarczy bowiem wizualne opisanie pola formularza, etykieta należąca do pola powinna być w odpowiedni sposób z nim powiązana za pomocą znaczników HTML.

Przykład powiązania etykiety z polem formularza:

<label for=”adres”>Wpisz swój adres:</label>

<input type=”text” name=”adres” id=”adres”/>

Poprawne opisanie formularzy to kolejny najprostszy wymóg dotyczący dostępności, który jest zaniedbywany przez twórców serwisów internetowych. Konsekwencje tego ponoszą osoby niepełnosprawne, a w szczególności niewidome, dla których formularze stają się zupełnie niezrozumiałe i niemożliwe w obsłudze. Poza poprawnym opisem pól istnieje wiele zasad, które powinny być spełnione:

  • formularze powinny być czytelne i zrozumiałe dla wszystkich użytkowników;
  • w przypadku pól wymaganych kolor nie powinien być jedynym ich wyznacznikiem;
  • wprowadzanie informacji nie powinno być ograniczone czasowo;
  • wskazanie błędów powinno być zrozumiałe i jednoznaczne;
  • nie należy stosować zabezpieczeń typu CAPTCHA, w każdym przypadku jest to rozwiązanie szkodliwe dla wszystkich grup użytkowników niepełnosprawnych poprzez uniemożliwienie im samodzielnego obsłużenia formularza. Poprawne zabezpieczenie formularzy powinno odbywać się po stronie serwera, poprzez filtrowanie przesyłanych treści.

Semantyka HTML

Tytuł strony

Tytuł strony służy do bardzo skrótowego opisu pojedynczej strony. Jego treść ma bardzo duże znaczenie dla osób niepełnosprawnych, ale również wszystkich użytkowników Internetu. Tytuł strony w najlepszy możliwy sposób powinien informować o zawartości strony oraz w jakim serwisie się znajduje. Aby tytuł strony był spójny i użyteczny powinien odpowiadać nagłówkowi z poziomu pierwszego znajdującego się na stronie, którą opisuje. Poprawnie zdefiniowany tytuł strony jest bardzo ważny dla osób niewidomych, korzystających z czytnika ekranu, ponieważ jest to pierwsza teść, którą usłyszą po wejściu na witrynę i to właśnie ten tekst stanowi dla nich kluczową informację o zawartości strony. Ważne jest, aby każda strona posiadała swój unikalny tytuł, a jego treść tworzona była w oparciu o jeden ustalony wzorzec, ponieważ w znaczącym stopniu ułatwi to nawigację pomiędzy zakładkami wszystkim użytkownikom serwisu. W celu uniknięcia powtarzających się tytułów stron różnych serwisów, na przykład „O naszej firmie”, dobrą praktyką w zakresie tytułów jest dodawanie globalnej nazwy witryny. Według tego wzorca strona powinna mieć tytuł „O naszej firmie – Nazwa firmy”. Poniższe zestawienie ukazuje użyteczność poprawnie (rys. 1) oraz niepoprawnie (rys. 2) zdefiniowanych tytułów stron:

Rys. 1. Pasek przeglądarki z zrozumiałymi tytułami stron
Rys. 2. Pasek przeglądarki z nie zrozumiałymi tytułami stron

Nagłówki

Zarówno w tradycyjnych publikacjach papierowych jak i w artykułach internetowych nagłówki są ważną częścią tekstu, a ich głównym zadaniem jest zatytułowanie logicznie wydzielonych sekcji krótkim i zwięzłym tekstem. Nagłówki są odpowiednikiem spisu treści zamieszczanego w książkach, dlatego każda pojedyncza strona powinna zawierać zestaw nagłówków opisujących jej treść. Prawidłowe użycie nagłówków niesie za sobą korzyści dla wszystkich użytkowników, sprawiając, że treść serwisu staje się bardziej czytelna. Dla osoby niewidomej nagłówki stają się punktem odniesienia i mogą z ich pomocą wyobrazić sobie układ strony.

Nagłówki powinny być stosowane konsekwentnie na każdej stronie serwisu. Bardzo ważnym aspektem podczas pracy z nagłówkami jest ich hierarchia. W języku HTML mamy do dyspozycji sześć poziomów nagłówków, od <h1> używanego do oznaczania najważniejszych tytułów do <h6> określającego najmniej ważne tytuły.

Listy

Listy są jednym ze sposobów na poprawienie czytelności tekstów, a informacje zaprezentowane za ich pomocą są czytelne, estetyczne i łatwiejsze do zapamiętania. Listy są bardzo ważnym elementem dla użytkowników niewidomych, gdyż dzięki nim mogą komfortowo poruszać się po stronie przechodząc z jednej listy do drugiej. Największym problemem, jeśli chodzi o dostępność list jest ich nieumiejętne wykorzystanie przez programistów tworzących tak zwane „fałszywe listy” – jest to zbiór elementów graficznie przypominający listę, lecz niepoprawnie zaimplementowany w kodzie HTML. Najczęstszym typem list spotykanych na stronach internetowych są listy nieuporządkowane, w których każdy element jest tak samo ważny, stosuje się je, gdy w tekście jest zbyt wiele elementów by umieścić je po dwukropku. Każdy z elementów listy nieuporządkowanej zaczyna taki sam wyróżnik graficzny, na przykład myślnik lub strzałka. Kolejnym typem listy jest lista uporządkowana, której zadaniem jest określenie porządku wymienionych elementów w kontekście stopnia ważności lub kolejności w hierarchii. Każdy element w liście uporządkowanej zaczyna się od liczby.

Język strony

Każda strona serwisu powinna mieć globalnie określony język, w jakim jest napisana. Często redaktorzy tekstów wykorzystują w swoich artykułach obcojęzyczne słowa lub całe zwroty – dla tych fragmentów dobrą praktyką jest ich odróżnienie od globalnie wskazanego języka. Jest to szczególnie ważne dla przeglądarek by poprawnie wyświetlały charakterystyczne znaki dla danego języka. Z elementu określającego język strony korzystają również czytniki ekranu w celu dostosowania prawidłowych zasad wymowy. Pomimo prostoty implementacji wymóg ten jest często pomijany.

Tabele

Tabele są kolejnym ze sposobów na poprawienie czytelności tekstów. Dzięki nim możemy w przyjaznej formie przedstawić dane i zależności pomiędzy nimi. Dobrze zaprojektowana tabela powinna zawierać nagłówki, czyli definicję kolumn lub wierszy. Równie ważne dla dostępności jest zastosowanie opisu całej tabeli wykorzystując atrybut <caption>. Należy pamiętać, że tabele powinny być używane do przedstawiania danych, które do tej formy prezentacji pasują – tak zwanych danych tabelarycznych.  Pomimo tego, że czytniki ekranu świetnie radzą sobie z odczytywaniem informacji z tabel były one zmorą osób niepełnosprawnych. Winę za to ponosili programiści i projektanci, którzy wykorzystali tabele, jako element konstrukcyjny strony, nie zaś do przedstawiania danych.