Engelbartovo prokletí aneb proč jsme za padesát let nevymysleli lepší GUI? | Kapitola 3
Seznam kapitol
Je to už více než padesát let, kdy přišel Xerox Alto (1973), který přinesl systém Alto Executive – první komerční operační systém ovládaný přes grafické rozhraní (GUI). A od té doby vypadá ovládání počítačů velmi podobně, protože se nám za ta léta nepodařilo vymyslet a prosadit nic lepšího.
V osmdesátkách se objevila celá řada „okenních systémů“, ať už šlo o GEM pro Atari ST (1985), Workbench pro Amigu (1985) nebo GEOS pro Commodore 64 (1987), což dodnes považuji stále za pořádnou haluz, jelikož šlo o osmibit s až podezřele slabým procesorem. GEOS se nasazoval hlavně na Commodoru 128 s procesorem o dvojnásobném taktu doplněný rozšiřující pamětí, ale stále to byla docela šílená věc.
Jako ony první Windows 1.0 (1985) byly taky šílené, ale po svém. Nedovolovaly překrývání oken, běžely v reálném režimu a jejich multitasking byl navržen jako kooperativní, což bylo naprosté peklo na zemi. První použitelnější Windows byly Windows 3.11, ale programovat pro to bylo bez nějakého middleware taky naprosté peklo, protože jste jako aplikační programátor v podstatě zodpovídali za to, že neshodíte jádro systému. To, že to padalo jenom několikrát denně, byl v zásadě úspěch.
Raný pokus o GUI určené pro Unix byl Blit/Mux od Bell Labs (1981). Šlo o experimentální grafické rozhraní pro Unix od Kena Thompsona a Roba Pikea, které podporovalo jak okna, tak multitasking. Ovládal se jak skripty, tak myší, takže představoval mezistupeň mezi CLI a GUI. Byl zjevně inspirovaný Xeroxem Alto – a kdo ví, možná měl potenciál přinést okna do Unixu dříve, než se objevila ve Windows. Problém byl v tom, že pro unixové fanatiky bylo takové GUI zbytečné, zatímco pro začátečníky naopak nedostatečné.
Potom přišla celá řada pokusů o alternativy k oknům, jako například stack-based GUI, které za boha nedokážu dohledat a které se objevilo v druhé polovině 90. let jen proto, aby prakticky okamžitě zmizelo. Šlo o to, že jste neměli ani normální desktop, ani běžný souborový systém, ale „zásobník dokumentů“, které se organizovaly podle data změny v mnoha verzích, takže to byl tak trochu operační systém s automatickým verzováním. Bylo to zajímavé, ale ukázalo se, že brát pro práci s dokumenty čas změny jako primární klíč není zrovna intuitivní – a to ani jako analog práce s běžnými dokumenty.
Jedním ze systémů, které se místo emulování klasických dokumentů pokusily o jejich expanzi, byl Project Xanadu Teda Nelsona. Ten konstatoval, že je nesmyslné pokoušet se emulovat klasický papír s jeho omezeními a jako odkazy využívat hypertextové linky, ale místo toho navrhoval provazování dynamických dokumentů pomocí transkluze (xanalinky, jumplinky).
To znamená, že jeden dokument obsahuje provázaný jiný dokument (paralelní text) a jakákoliv změna se promítá do všech míst, která jsou navzájem provázaná. Systém přitom zvýrazňuje vložený text a viditelné odkazy na zdroje, se kterými je provázaný. Podobně navrhoval nahradit také klasický souborový systém a stromové datové struktury, což se ale také neujalo.
Jinou poněkud šílenou alternativou byly ZUI (Zooming User Interfaces), jako například Pad++ (1998). Pokud to chápu dobře, tak se tvůrci soustředili na ideu nekonečné a nekonečně zoomovatelné plochy, kterou pokrýváte dokumenty, se kterými pracujete tak, že na ně nazoomujete. Neptejte se mě, jak to má fungovat a „jaké problémy to řeší“ (o čemž mluví informativní video), protože celá tahle šílenost mi připadá jako jeden obří problém sám. Naprosto si například nedovedu představit, jak by se na tom pracovalo s tisícovkami dokumentů a jak byste se v tom měli orientovat.