Choval sa k vám už nejaký softvér tak, ako by ste boli malé dieťa? Ukazoval vám bezcennú informáciu, rozčuľoval vás, alebo sa snažil hrať na vášho priateľa z letného tábora? Nuž, podľa niektorých vývojárov je to tak správne. Nedeľník TOUCHIT vážne i nevážne. Nezviazané IT témy na tisíc spôsobov.

Počítače, či už v podobe smartfónov, notebookov či akéhokoľvek iného výrobného formátu používajú rôzne typy ľudí. Sú mladí, starí, technicky zdatní aj nezdatní. Niektorí chápu princípy rýchlo, iní pomalšie, ale na tom všetkom v základe nič zvláštne nie je. Počítače sú totiž strojom ako každý iný.

Používateľské rozhrania softvéru sa neprestajne menia a ako roky postupujú, čoraz častejšie si všímam nepekného trendu infantilného poskytovania bezcennej informácie, v súvislosti s jeho inštaláciou a takisto aj prevádzkou.

Vývojári sa snažia používateľom všemožne prihovárať, pričom v snahe byť čo možno najviac ľudskí sa veľmi často dopúšťajú hlúpeho povýšenectva a úbohosti. Zaujímalo by ma, akej veľkej skupine ľudí toto vadí, avšak na našom webe príliš nemá zmysel robiť anketu tohto typu. Čitatelia technického média totiž nie sú dobrou reprezentatívnou vzorkou „obyčajnosti“.

Keďže sa tieto mechanizmy vyskytujú aj na produktoch veľkých firiem, predpokladám, že toto majú vývojári podchytené na základe reálneho prieskumu bežných používateľov. Je teda dosť dobre možné, že drvivá väčšina ľudí naozaj preferuje to, že pri inštalácii četovacej aplikácie nevidia priebeh štýlom – inštalujem, 10%, 80%, hotovo, ale „Hej chlapče, už to čoskoro bude! Ešte momentík a budeš so svojou babenkou četovať ako po masle. Juchú. Tešíš sa?

VYDRŽ EŠTE TROŠIČKU, PRIPOJENÝ BUDEŠ ZA CHVÍĽOČKU

Asi prvým skutočne významným príkladom tohto typu bol inštalátor Windows 8 a výraznejšie Windows 8.1, pričom celá situácia pokračuje dodnes aj v rámci Windows 10.

Nejde pri tom o to, že by sa inštalátor horšil ako celok. Jeho rozhranie sa neprestajne vyvíja a ak porovnám ten súčasný s jeho predchodcom, ktorý bol prítomný na Windows XP, či na Windows 98, ide vskutku o skvelý krok dopredu.

Je pravda, že ten novší obsahuje omnoho menej informácií. Na tých pôvodných ste mohli napríklad sledovať kopírovanie s výpisom konkrétnych súborov. Avšak rozdelenie do základných kategórií vám dáva dobrý pohľad na to, čo sa s vašim počítačom práve deje.

Problém je, čo sa deje potom. Po prvej základnej fáze inštalácie totiž prichádza na rad druhá, ktorá začala byť doplňovaná o infantilné texty na farebnom pozadí.

Čím sú iné? Nuž, hlavne tým, že nehovoria vlastne nič. Obrazovka používateľa síce víta a zdraví a povie mu „Všetko pripravujeme“, alebo „ešte chvíľočku“, avšak ukazovateľ progresu nie je vidieť. Z týchto textov nikto nevie, čo vlastne inštalátor práve robí, pretože informácia, ktorú dostaneme, má podobu „Už len pár drobností“, alebo „Teraz musíme vykonať dôležité nastavenie“.

Dobre si pamätám na moment, kedy som sa s inštalátorom tohto typu stretol prvý krát. Bol som tak trochu v šoku a zhrozil som sa, pretože to bolo po veľmi dlhej dobe prvý krát, kedy som nemal ani potuchy, čo počítač vlastne robí.

Náhle mi už nebola cudzia tá veta veľkého zástupu ľudí, ktorí sa „báli Windows inštalovať“, takže to nechávali niekomu skúsenejšiemu, aby niečo nepokazili. Na nich takto cudzo a mysticky totiž pôsobila celá inštalácia. Nenamietam pravdaže nič proti tomu, aby Windows mohol nainštalovať každý. Práve preto musí byť predsa rozhranie prívetivé a dobre pochopiteľné.

Ale pomáhajú tomu takéto obrazovky? Namiesto technickej informácie, ktorej by niekto rozumel, niekto čiastočne rozumel a niekto vôbec nerozumel, sme sa dostali do doby, kedy sa poskytuje informácia, ktorej nerozumie absolútne nikto.

Oprávnená kritika tohto môjho názoru je, že to len zle vnímam, pretože sa v prostredí IT pohybujem celý život. Som v tomto teda zrejme len prehnane kritický a trpím nejakou chorobou spôsobenou mojou profesiou. Je to ale naozaj tak?

Nuž, skúsim to aplikovať inde. Napríklad ja osobne sa vôbec nevyznám v automobiloch. Som ako Česi v súvislosti s počítačmi hovoria – BFU, teda „bežný Franta uživatel“, ktorý auto riadi a tankuje do neho benzín, ale to je tak všetko. Pneumatiky si nechávam meniť v pneuservise, olej, peľové filtre a podobné veci si nechávam meniť počas každoročnej servisnej prehliadky. Ak sa niečo pokazí v motore, neviem to opraviť. Ak niečo začne od niekadiaľ klepať, pravdepodobne nebudem vedieť čo.

Ak sa mi ale na palubnej doske objaví, že mám ihneď zastaviť, pretože sa pokazil automatický spätný enkabulátor (ak neviete čo to je, tu je vysvetlenie), budem pravdaže naštvaný, ale nie zmätený. Neviem síce absolútne čo to je, ale vidím, že dostávam presnú informáciu o tom, čo sa stalo. A to je dobre!

Ak zoberiem telefón a zavolám do servisu, môžem im povedať, že sa „pokazil automatický spätný enkabulátor“ a predpokladám, že technik bude vedieť čo to je a teda dosť presne mi povie, aké je to vážne, ako dlho bude trvať oprava a koľko ma to asi bude stáť.

Ak sa mi namiesto toho na palubnej doske objaví „Ups, voľačo sa práve pokazilo“, čo môžem robiť? Neviem ako vy, ale ja sa rozhodne nebudem cítiť pokojnejšie a po používateľskej stránke prívetivejšie. Očividne totiž technikovi nemôžem telefonicky povedať nič a typ poruchy sa dozviem až pri diagnostike v autoservise, za predpokladu, že mi povedia pravdu.

Možno si poviete, že to je jedno, pretože vo výsledku musí ísť auto aj tak do servisu. Nuž ale to nemusí byť vždy pravda. Pri oprave počítačov, tak ako pri oprave akejkoľvek inej techniky, existuje vždy nejaký počet triviálnych problémov, ktoré dokáže riešiť každý. Som si istý, že dokonca aj pri tak komplexných veciach, ako sú nukleárne reaktory, existujú poruchy v štýle – vypálila sa táto červená žiarovka na kontrolnom panely, je treba ju vyskrutkovať a dať tam novú.

Informácia typu Aka fuka funda luka, funda kava kevenduka, ak fuk funda luk, funda kava kevenduk

Porovnajte to s tým, keď sa váš počítač zasekne pri „Čakajte momentíček, práve niečo pripravujeme“, alebo sa zobrazí správa „Trvá to trošku dlhšie ako sme čakali, ale robíme čo sa dá“, ktorú môžete vidieť na displeji notebooku vyššie. Komu toto pomôže ozrejmiť situáciu?

Nie je lepšia správa „Práve inštalujem ovládač grafického čipu“, alebo „Práve na disku vytváram súbory používateľského účtu“ či „Sťahujem z internetu nové vezie integrovaných aplikácii“? Dostávame sa tu k tomu, čo vlastne je a čo naopak nie je dobrá chybová alebo priebehová správa pre používateľa.

ČO JE DOBRÁ A ČO ZLÁ CHYBOVÁ SPRÁVA?

Ak dizajnér používateľského rozhrania navrhuje texty, ktoré sa zobrazujú v priebehu inštalácie produktu, alebo pri výskyte rôznych problémov, čím by sa mal vlastne riadiť? Kto určuje čo je dobrý a čo zlý prístup?

Trefnú prezentáciu v tejto súvislosti vytvorila v roku 2014 Michelle Carey, informačná architektka firmy IBM. Tá zhrnula problematiku navrhovania chybových správ na niekoľko základných bodov:

Sústreď sa na problém, nie na chybu. Zvoľ správny tón. Nehádž vinu na používateľa. Nepoužívaj katastrofické popisy ani prehnane technický žargón. Poskytni užitočnú informáciu a ponúkni používateľovi relevantný nasledujúci krok.

Na prvý pohľad to môže pôsobiť samozrejme, ale stačí sa len pozrieť na príklady a sami uvidíte, ako často ste sa s nesprávnou podobou chybových správ stretli. Nevhodný návrh správ, sústreďujúcich sa na chybu, ale už nie na problém, je totiž veľmi častý.

To pravdaže neznamená, že čím detailnejšia správa je, tým lepšie. Extrémne technický žargón je obvykle nevhodný, pretože drvivú väčšinu softvéru používajú obyčajný používatelia, nie administrátori. Zlé prípady z tohto hľadiska sa vyskytujú najmä vďaka tomu, že niektoré chybové správy píšu vývojári sami pre seba a nie vždy predpokladajú, že ich bežný používateľ uvidí.

Ak sa tak stane, je to katastrofálne:

Tu môžete vidieť, že v oboch prípadoch je správa písaná vývojárom, pre vývojára. Ide o idiotickú chybovú správu, ktorá nerobí z používateľa batoľa, ale dospelého idiota.

Pravda je ale taká, že ako idiot sa používateľ cíti zbytočne, pretože chybovú správu tohto typu nechápe nielen on, ale ani administrátor, programátor a vlastne z externého hľadiska ani nikto iný. Chápe ju len samotný vývojár konkrétnej aplikácie (v tom lepšom prípade).

Kto je tu teda nakoniec idiot?

A čo takto používateľa vystrašiť. Ach, naše maličké bábätko. Používanie nášho softvéru neradno brať na ľahkú váhu. Bu-bu-bu. Takže treba používať strašidelné správy, aby sa nedajbože používateľ nedozvedel, čo je vlastne naozaj vo veci a aký vlastne problém vzniká.

Opačná, ale pri tom rovnaká situácia nastáva, ak sa vývojár namiesto strašenia podujme k humoru a pokúsi sa frustrovaného používateľa rozosmiať. To sa možno na prvý raz podarí, ale pri opakovaných zobrazeniach to rýchlo prejde do hnevu.

Ak používateľovi niečo nefunguje, je fakt nevhodné zobrazovať správy typu „Hups, nezbedný škriatok nám ukradol nejaké jednotky a nuly, dúfame, že sa to už nestane“.

Dobrá chybová alebo priebehová správa ukazuje to, čo sa deje a ak je niečo zle, povie čo a prečo. Neskrýva sa za infantilnosť, strašidelnosť či technický žargón. Ak je niečo zle, používateľovi treba povedať čo. Možno to vyrieši sám, ak nie, požiada niekoho o pomoc. To, že bude vedieť čo je vo veci je vždy len dobre.

Vágnosť je zlá. Vágnosť ničomu neprospieva. Vágnosť je na škodu v každom prípade a to aj v tom úplne najtriviálnejšom. Stačí sa pozrieť na vyššie uvedený príklad, ktorý Google dáva vývojárom aplikácii. Ak sa používateľovi poskytuje bezcenná informácia, nezlepšuje sa jeho zážitok a ani vzťah k softvéru ako takému.

Skutočne neviem, kde sa v niektorých vývojároch používateľského rozhrania alebo aplikácii vzala predstava, že používateľa treba od užitočných informácii odtieniť. A najlepšie pravdaže je, keď sa vývojári neobťažujú už ani s tou detskou rečou a odtienia ho úplne od všetkého:

Vyskytla sa chyba. Vďaka za informáciu Spotify.

 

INDIKÁTOR POSTUPU TYPU KNIGHT RIDER

Indikátor postupu, či v angličtine Progress bar, je starý tak ako grafické rozhrania softvéru ako také. Vlastne je ešte starší, pretože je ho možné vytvoriť napríklad aj z pribúdajúcich pomlčiek v príkazovom riadku.

Jeho princíp je extrémne jednoduchý. Ide skrátka o pásik, ktorý sa postupne vypĺňa od 0 do 100 % podľa toho, koľko percent z úlohy už je dokončené. Typicky ho vidíme napríklad pri kopírovaní alebo sťahovaní súborov.

Jedného dňa sa však nejaký idiot rozhodol, že tento priamočiary koncept je až príliš priamočiary a začal tento progress bar používať ako bezcennú softvérovú informáciu. Zrodil sa tak progress bar, ktorý ja osobne označujem ako typ „knight rider“. Som si istý, že ohromný zástup ľudí používa rovnaké, alebo nejaké ekvivalentné pomenovanie.

Progress bar typu Knight Rider pripomína predný indikátor auta z rovnomenného populárneho seriálu z 80. rokov minulého storočia, v ktorom hral hlavnú rolu David Hasselhoff. Auto KITT a jeho predný červený pásik posúvajúci sa zo strany na stranu určite poznáte.

Dodnes som nepochopil, prečo tento progress bar existuje. Nechápte ma zle. Som si plne vedomý toho, že u niektorých typov úloh sa nedá odhadovať, koľko percent už je hotových, pretože sú buď prakticky nekonečné (stále môžu prichádzať nové dáta), alebo je napríklad finálne číslo v podobe počtu súborov, ktoré sa postupne spracovávajú, zatiaľ neznáme.

Progress bar typu Knigt Rider je teda len indikátor prebiehajúcej činnosti, nie stavu postupu. Jasné. Dobre. Ale prečo teda existuje?

Od počiatku grafických rozhraní sme mali za týmto účelom vytvorené rôzne grafické prvky, pričom v rámci Windows šlo napríklad o presýpacie hodiny, točiace sa okolo kurzoru myši. V základe vždy indikovali to, že sa niečo deje a niečo prebieha a počítač nezmrzol (ak zamrzol, hodinky sa prestali točiť a kurzor sa nehýbal).

To je pravdaže len jedna z možností. Existovalo ich viac, pričom vo väčšine prípadov šlo o nejaký točiaci sa objekt. Prečo sa preboha jedného dňa niekto rozhodol, že ho začne nahrádzať knight rider progress barom, ktorý bol vždy jasne určený na indikáciu postupu? Prečo nás preboha nejaký grafik takto trestá?

Moja odpoveď je jednoduchá. Nejaký idiot nemohol odolať móde bezcennej softvérovej informácie a celý proces sa rozšíril. Dnes teda vidím knight rider progress bar častejšie, ako regulárny progress bar a to prosím pekne aj pri veciach, ako je napríklad inštalácia softvéru, kde je jeho existencia masívnym výsmechom.

Nie je totiž dôvod, aby tam nebol regulárny progress bar. Inštalácia má presne známy počet krokov, ktoré je potrebné vykonať a inštalačný program tak regulárnu informáciu postupu vždy môže poskytovať. Lenže nejaký idiotický grafik či programátor sa rozhodol, že to netreba.

Prečo? Pretože lepšie je Tu-Tu-Ru-Tu, Tu-Tu-Ru-Tu, Tu-Tu-Ru-Tu-Tu-Tu!!!

O TOM, ČO SA KDE NAINŠTALUJE, UŽ TY NEROZHODUJEŠ

A na záver ešte jeden evergreen, ktorý považuje používateľov za batoľatá. Jednoklikové inštalátory. Myslím si, že za túto aktuálnu vlnu môže vo veľkej miere predovšetkým Google. Ten totiž inštalátor tohto typu začal používať pre prehliadač Chrome, ktorý sa stal postupom času suverénne najrozšírenejším programom tohto typu, čo je už samo o sebe veľmi zlé (Žijeme znovu v útrpnej ére Internet Exploreru 6).

Hrozné praktiky, ktoré bez pádneho dôvodu rúcajú zažité postupy, sa totiž rozšíria obvykle až potom, ako ich začne uplatňovať nejaký gigant. Ostatní vývojári sa následne cítia povzbudene a začnú to aplikovať tiež. Veď predsa, keď to robí aj Google, nemôže to byť zle.

Google sa pri tom k jednoklikovému inštalátoru neodhodlal len kvôli tou, aby používateľa neobťažoval nastaveniami a pár klikmi. Hlavným dôvodom bolo, že chcel, aby sa jeho prehliadač masívne rozšíril všade kde mohol, pričom to vyžadovalo, aby ho mohli inštalovať aj tí najmenej skúsení a z hľadiska systémových práv najviac obmedzení používatelia.

V tej dobe Microsoft čoraz viac razil nový a prísnejší režim prístupových práv, odlišujúci bežného používateľa od administrátora. Praxou začal byť podobne ako na Linuxe prístup, že používateľ mal v základe obmedzené práva a len v prípade potreby ich zdvíhal. Jedným z hlavných dôvodov tejto zmeny bol boj so škodlivým softvérom. Google však využil takpovediac zadné vrátka.

Namiesto desaťročia trvajúcich praktík (siahajúcich až do 80. rokov minulého storočia), v rámci ktorých sa inštalované programy na Windows prednostne inštalovali do priečinku programových súborov – C:/Program Files (ak používateľ nerozhodol inak), sa Chrome automaticky, ticho a bez akéhokoľvek zvolenia, nainštaloval priamo do používateľského účtu. Konkrétne do oblasti vyhradenej na špecifické súbory programov v súvislosti s aktuálnym prihlásením (C:/Používatelia/Účet/AppData).

Toto správanie tak trochu pripomínalo škodlivý softvér, pretože inštalátor „potajme“ a úmyselne podbehol obvyklé mechanizmy Windows, čo umožnilo nainštalovanie programu aj používateľom s prakticky nulovými právami.

Keďže takto sa Chrome inštaluje už deväť rokov, dnes už sa nad tým asi nikto nepozastaví. Vo svojej dobe ale šlo (a prakticky doteraz ide) o obrovský konflikt so zaužívanými normami v rámci inštalačných programov. Ak na počítači používate viac používateľských účtov, z tohto dôvodu musíte Chrome inštalovať na každý zvlášť, čo pre normálne správajúce sa programy neplatí.

Ja pravdaže plne chápem, že drvivá väčšina ľudí tieto záležitosti nerieši a v inštalátore nič nemenia. To je v poriadku. Nič nenamietam proti tomu, aby sa po spustení inštalátora zobrazilo len tlačidlo s nápisom Inštalovať a po jeho stlačení sa všetko vykonalo samo.

To nie je nič prevratné. V dávnej dobe sa to nazývalo skrátka „expresná inštalácia“, alebo „expresné nastavenie“, pri ktorom sa použili prednastavené hodnoty a inštalátor či program sa následne už na nič nepýtal. Vždy ale bolo možné kliknúť na podrobnú inštaláciu, ktorá zobrazila konfiguráciu toho, kam sa program má nainštalovať, bolo možné vybrať či sa má program integrovať do systémových menu, alebo či má nemá preberať asociácie jednotlivých súborov a podobne.

Moderné jednoklikové inštalátory to ale nezaujíma. Nielenže vám neumožnia cieľovú lokalitu nainštalovania programu zmeniť, ale oni vám ani neoznámia, kam automatická inštalácia vlastne smeruje a čo inštalátor na vašom počítači robí. Vytvára nové procesy na pozadí? Integruje sa do kontextového menu? Nikto nevie. Uvidí sa, až skončí.

Ak by dnešný inštalátor Chrome vyzeral nasledovne, s malou ikonkou konfigurácie v rohu, žiadneho neskúseného používateľa, ktorý chce program inštalovať jedným klikom, by to nepobúrilo ani nezmiatlo. Ale Google sa rozhodol, že to už netreba. Trhnite si nohou.

Ak sa ti to nepáči, choď inam. Najprv ale pravdaže odinštaluj program, ktorý sa ti práve automaticky nainštaloval pri kliknutí na setup súbor, bez toho aby sa ťa niečo pýtal. Natlačil sa pritom všade kam mohol a vytvoril niekoľko na pozadí permanentne bežiacich procesov. Nemáš za čo…

A ono, ísť niekam inam nie je ľahké. Koncom minulého roka prešiel na jednoklikový inštalátor aj Firefox, pretože Mozilla si zrejme myslí, že čím viac sa bude podobať na Chrome, tým viac používateľov Chrome na Firefox prejde, pravdepodobne asi omylom alebo čo.

Jednokliková inštalácia, pri ktorej nemá používateľ možnosť akokoľvek interagovať s celým procesom a rozhodnúť čo sa stane, je skrátka moderným trendom. Má ju dokonca aj aktuálny kancelársky balík Office.

Spustíte a ide sa! Inštalátor nielen že nezaujíma vaša preferencia cieľa, ale ani to, čo vlastne chcete inštalovať, čo je v súvislosti s tým, že Office je veľký balík programov rôzneho typu vskutku úžasné. Chcel si inštalovať len Word a Excel? Ha, ani náhodou.

Také praktiky sú zastarané. Spustíte inštalátor a už to frčí. Inštaluje sa všetko bez otázok a ihneď. Vám zostáva už len čakať a cesty späť už nie je. Tvorca inštalačného rozhrania sa rozhodol, že všetci používatelia sú batoľatá.

Prečo? Lebo! Tu máš cumeľ do úst a daj pokoj.

Nedeľník TOUCHIT hľadajte na našom webe ako inak než v nedeľu. Ak ste predchádzajúce zmeškali, nájdete ich všetky pod rovnomenným kľúčovým slovom.

František Urban

František Urban
Zameriavam sa najmä na prehľadové a analytické články z oblasti najrôznejších technológií a ich vývoja. Nájdete ma takisto pri diagnostike HW a SW problémov.