Celostátní vyhledávač v jízdních řádech, web jizdnirady.idnes.cz (neboli někdejší
iDOS) používá mnoho lidí, lze říct, že s ním přišel do styku skoro
každý, kdo se kdy ošoustl kolem českého internetu. Služba je to výborná
a nenahraditelná, datově dá se říci až fenomenální – nevím jak kdo,
ale já v něm nikdy nenarazil na chybu a mám v něj větší důvěru než
ve všechny tištěné jízdní řády a placenou informátorku na Florenci
dohromady. Ale to rozhraní, to uživatelské rozhraní (UI)…
Na tomhle webu víc než kde jinde je vidět, že uživatelské
rozhraní – to je ta vrstva mezi tunami dat kdesi v databázi a vaším
prohlížečem – prostě nesmí navrhovat programátor. Takový programátor
spoustu věcí považuje za naprosté zbytečnosti, je zvyklý sledovat ladicí
výstupy na konzoli a za vrchol uživatelského komfortu považuje, když má
data na výstupu oddělena čárkami. Jú!
Programátor není psycholog, moc neřeší specifické problémy svých
budoucích uživatelů, hlavně, když to nějak funguje. Ony ty jízdní řády
taky „nějak fungují“ a přes pohledné barevné GUI (grafické vizuální
rozhraní) není ani moc vidět, že to uživatelské rozhraní pod ním je
dílem programátora-sadisty. Všimněte si toho rozlišení pojmů GUI a UI.
Grafické rozhraní je jen (tou menší) částí UI, ty obrázky, barvičky a
šoupátka, které vidíte na stránce, jsou to míň podstatné, hlavní roli
hraje ta vrstva pod nimi: to, jak je navržena komunikace, navigace, způsob
zadávání dat, architektura celé aplikace, vnitřní logika. Dost často tady
hraje roli lenost programátorů, síla charakteru (a vůbec samotná existence)
projektového manažera a především přítomnost nebo naopak absence
návrháře UI/UX. A právě tady je ono místo, kde ten iDOS dost fatálně
selhává.
Scénář 1
Chci jet z Kladna do Prahy na Florenc. Zvolím si – jednu
z nejpoužívanějších – možností, vyhledávání v jízdních
řádech vlaků, autobusů a MHD velkých měst. Zadám tedy počáteční
místo „Kladno“, cílové místo „Praha, Florenc“.
Pojďme postupně: Kladno [CR]? Asi ano, nebo ne? Jenže správně
je druhá možnost, Kladno [KD] – to CR neznamená ČR, ale Chrudim.
Okresy byly zrušeny před drahně lety a bývalé SPZky bude znát stále
méně lidí. Napsat do závorky [CR] místo [okres Chrudim]
není nic než programátorova lenost. Nemluvě o tom, že to východočeské
Kladno se hledá asi tak milionkrát méně často než největší město StČ
kraje, méně blbé UI by při shodách nenabídlo první položku v abecedním
pořadí, ale položku releventnější. (Mohl bych zde posloužit
historkou, jak moje tehdy malá sestřička vyrazila prvně sama do světa za
námi do Kladna na návštěvu a místo toho skončila v noci sama vprostřed
temné návsi jisté východočeské vesničky.)
Nenalezená „Praha, Florenc“, to je naprostý fail, a to hned
několikanásobný. Když si totiž jízdní řády omezíte pouze na pražskou
MHD, Florenc a všechny ostatní zastávky tam jsou. Ve spojení
s celostátními jízdními řády jich ale většina zmizí. Nenajdete
Florenc, Anděl, Můstek, Muzeum, skoro nic. Současně to ale neplatí opro
všechny – některé z nich v seznamu jsou. Najdete Hradčanskou
(v podobě Praha,, Hradčanská, ty dvě čárky jsou pro iDOS
typické), ale Malostranská není. Je tam Bílá Hora (Praha,, Bílá
hora), ale Červený vrch už ne. Zákonitost jsem nevysledoval. Zmíněnou
Florenc nenajdete žádným způsobem. Když zvolíte zadání adresy, iDOS
cílové místo Praha, Florenc přijme, ovšem vrátí vám tento
výsledek:
A do Čertous. Tam ovšem jet nechci. Třetí možností je mapa. Pokud
Prahu dobře znám a dokážu se v té předpotopní a polofunkční mapě
zorientovat, podaří se mi Florenc najít. Kliknu na ni, do cílového pole se
vloží „Florenc“, což ovšem taky nebude fungovat.
Chápu-li správně, že [*I] znamená Itálie (achjo,
programátoři!), je mi po výběru z mapy nabízena cesta do Florencie…
Čistě pro úplnost, jedno řešení se přece jen dá najít. Stačí si
vybrat Způsob zadání místa: Zadání jména z kategorie a tam
zvolit zastávky (Praha) a pak napsat Florenc – ale pouze
přesně takto, zadáte-li něco jiného, např. Praha, Florenc nebo
metro Florenc, získáte jen staré známé objekt
nenalezen.
Scénář 2
Našel jsem si cestu do Prahy, přijíždím autobusem na Knížecí, na
Andělu mám jednání a později během dne se budu potřebovat přesunout
z na Staromák, mám tam sraz se známým (ten prý dorazí nějakým autobusem
MHD, co staví poblíž). Že Anděla v nabídce jen tak nenajdu, už jsme si
řekli výše. Ale vím, že se to tam přece jmenuje „Na Knížecí“, tak
to zadám místo toho. A úspěch se hned dostaví!
Bez komentáře.
A co ten autobus? Můj známý se bude přesouvat na to Staroměstské
náměstí odkudsi autobusem, třeba bych se tam taky tak dostal? Nalezení
autobusů stavících někde poblíž Staroměstského náměstí přenechám
laskavému čtenáři jako domácí cvičení.
Scénář 3
Volá žena z práce, jestli bych nenašel nějaká spojení na nedělní
výlet, aby podle toho naplánovala nějaké další věci. Najdu asi deset
vhodných kombinací spojů a začnu koukat po způsobu, jak bych jí to poslal.
Ale ouha, můžu si vytisknout nebo mailem poslat statický výstup, nikoli
stránku se živými odkazy (např. na trasy spojů atd.). Tak si tu stránku
aspoň uložím do bookmarků a projdeme to večer.
Večer si ale projdeme leda kulové, stránka v bookmarcích pochopitelně
není, celá aplikace je bezstavová, líní programátoři si táhnou všechny
informace v session a uživateli neposkytují žádné pevné body
k uložení. Místo toho nabízejí uložení a vlastní správu bookmarků
uvnitř aplikace – což je funkce poměrně utopená – já jsem nějaké
Moje oblíbené na tom webu vlastně nikdy ani nezaregistroval. Až do
dneška, kdy to zkoumám trochu podrobněji.
Podobný případ je odkaz „Trvalý odkaz“. Toto slovní spojení jednak
mnohému laikovi nic neřekne (kdežto každý programátor ho důvěrně zná
z blogů a fór), jednak je opět utopené, mezi skupinou tlačítek se zcela
odlišnými funkcemi. O použití nějakého zkracovače adres, nedejbože
o napojení na sociální sítě ani nemluvě. Kdo dokáže na první dobrou
poslat vyhledané spojení na Facebook?
A to je jen opravdu maličký zlomek problémů iDOSu povětšinou
pramenících ze špatného nebo dokonce žádného návrhu UI/UX. Jen pár
příkladů, na které jsem narazil během dneška, nehledal jsem cíleně
speciální špeky pro P.T. čtenářstvo. Kdyby ten web podstoupil pořádnou
analýzu, byla by těch chyb a problémů kupa na pěkně macatý
tlustospis.
Vyvíjíte-li nový web, držte své programátory od návrhu UI tak
daleko, jak jen to jde.