Názor k článku Vifm: správce souboru á la Vim od Lael Ophir - Bohužel váš oblíbený interface vám připadá skvělý až...

  • Článek je starý, nové názory již nelze přidávat.
  • 17. 7. 2008 4:38

    Lael Ophir (neregistrovaný)
    Bohužel váš oblíbený interface vám připadá skvělý až poté, co jste se naučil ty stovky příkazů, včetně ovládání vi. Veliká investice, jejíž jediným výsledkem je to, že jste schopen administrovat unixy (tj. přidávat a odebírat uživatele, měnit ACL, a analyzovat logy). Věci z reálného světa nakonec stejně musíte dělat v GUI, se kterým pak typicky neumíte efektivně zacházet. U toho mi tvrdíte, že vás podceňuji, ale na druhé straně vás překvapí ukázky použití GUI. Je mi ale jasné, že když jste provedl tak vysokou investici zcelku zbytečně, musíte nyní najít způsob, jak jí obhájit.

    Ty stovky příkazů jsem někde popisoval - v Single Unix specification je jich uvedeno 160, a to včetně těch vysoce obtížných typu vi a awk. K tomu přičtěte utility pro managament daného OS, X11 serveru atd.

    Jak jsem právě napsal o kus vedle, programování je algoritmizace. Command line interface je věc s kurzorem, kam napíšete příkaz, stisknete enter, a příkaz se provede. Jde o dvě různé věci.

    O Excelu jsem tu psal opakovaně i v této souvislosti. Proč ne přes Excel? Umožní vám zapsat data, a umožní nad ně pověsit skript. Je to jednoduché, efektivní, a nesmírně silné (i ve srovnání s command line). Výsledek lze zabalit tak, že ho může používat i idiot. Co tomu chybí? Excel je z mých oblíbených aplikací.

    Ano, máme odlišné zkušenosti. Jenom zkusím z vašeho vyprávění vypíchnout několik věcí, které se mi nezdají. 1) Microsoft ČR má odjakživa naprosto minimální počet zaměstnanců, a okolo toho spoustu partnerských firem. Velká firma totiž není moc flexibilní (starý známý problém, viz IBM), a malí pružní partneři to dokáží kompenzovat; je to velmi úspěšný model. Z toho důvodu považuji za nepravděpodobné, že by k vám přišel někdo přímoz MS. 2) Protože se v oboru pohybuji nějaký pátek, tak vím, že interní SW, který vás pustí do utajených míst, kde můžete provést tajemné věci, je nesmysl. Jde pouze o neznalost na vaší straně, a o neochotu vám ukázat, o co opravdu jde.
    K tomu "nejde": systémy typu Windows umožňují dělat běžně věci jednoduše. Méně běžné věci jsou o dost složitější, což je na command line stejné (jak jsme si ukázali - nemáte utilitu, tak končíte, stejně jako v GUI). Pokud jsou věci složitější, lidí rádi říkají, že "to nejde". Také to říkají v případě, kdy daná věc není dobrý nápad. Například pokud chcete, abyste na stroji měl nasdílené adresáře v závislosti na přihlášeném uživateli (na unixech s představte NFS exporty podle toho, kdo je přihlášený na konzoli). Spousta lidí bude říkat "to nejde", protože je to z jejich hlediska blbost. Ti, kdo umí (a těch je na světě minimum - zřejmě máte tu čest se mezi takové lidi počítat) vědí, že to jde, a jak to jde. Pak je otázkou, jestli řeknou "to nejde", protože je to blbost, nebo jestli řeknou "myslím, že je to blbost, ale za cenu XYZ to máte mít". Když totiž řeknou to druhé, tak vás zřejmě zákazníka zavedou do bažin jeho vlastních nesmyslných a protichůdných požadavků, ze kterých se pak budete těžko vymotávat.

    A když jsme u zkušeností, tak přidám svojí zkušenost. V organizaci, kde jsem pracoval, řádila společnost Digital Equipment Corporation. Proto vše jelo na Ultrixu. Když se zkoušely PC servery tehdy s Novellem a Lantasticem, upozornili pánové z Digitalu odpovědné pracovníky, že tyhle PC servery jsou pěkný šmejd, a díky tomu mohou způsobit blíže neurčené problémy na síti, které by se potom odstraňovaly velmi draze ("víte, měli jsme již takový případ... velmi drahé..."). Tomu se říká FUD, a jde o formu biče. Pravidelná pozvání pana IT ředitele na kongresy do USA potom byly jistou formou cukru. Doba se pohnula, přišlo OSF/1 (rozdílem byl hlavně xterm a xclock), a s ním nová verze file serveru Digital Pathworks. Servery byly o řád dražší, než PC servery, a nakoupilo se jich cca 20, aby mohly být potroušené po té naší domovině, a složit jako file a mail servery. Bohužel klienti Digital Pathworks se od serveru samovolně odpojovali, což u tehdejších DB systémů založených na FoxPro a dBase IV nedělalo moc dobrotu. Digital následně vydal asi 10 patchů, které měly jako jediný výsledek to, že se problémy logovaly (některé revize problém logovaly, jiné ne, občas se drobně změnila hláška). Protože tehdy nebyly všechny servery síťově propojené (kvůli mailu se ale propojení časem plánovalo), těch cca 10 revizí znamenalo pro adminy hromady cest po republice. S příchodem Windows 95 u Digital Pathworks dokonce fungovaly dlouhé názvy, ale bohužel bez češtiny. Na potvoru české Windows 95 zakládaly nový adresář vždy jako "Nová složka", a ten Pathworks sežraly, ale už nevrátily, takže na síťových discích byly desítky až stovky adresářů "Nová složka (číslo)". Podpora Unicode předpokládám nakonec ani nepřišla. Samostatnou kapitolou byl vývoj serverových aplikací, přece jen FoxPro není ideální prostředí. Ovšem Oracle Forms k němu má také daleko (krásný terminálový interface, zastánci unixů by si přišli na své). Vyjma šílené ceny se jako problém ukázala náročnost vývoje. Co trvalo ve FoxPro napsat jeden den, trvalo v Oracle Forms minimálně týden, ale spíš déle. Výsledné aplikace byly samozřejmě výrazně méně komfortní, a uživatelé je odmítali používat (nebylo jim to nic platné). Vzniklo oddělení o cca 10 lidech se zkušenostmi se sálovými počítači (programátoři, vedoucí, sekretářka, testerka), které non-stop vyvíjelo informační systém, nutno říci bez velkých úspěchů. Mezi tím se staly populárními prostředky typu Visual Basic, MS Access, Delphi, Oracle for Widows, MS SQL Server; file servery a print servery se dávno přesunuly na Windows NT, zahraniční firmy v ČR běžně jely NT 4.0. Nicméně Digital se statečně držel, a za směšně nevýkonné unixové stroje se platilo o řád více než za stroje na Windows. Několik místních poboček bylo examplárně potrestáno za nákup PC serverů značky Compaq.
    Zbytek té historie by byl asi dost nudný (včetně neprokázaných povídaček o úplatcích), nakonec jsem prostě utekl. Uvádím to jako svoji zkušenost s dodavateli unixových systémů, a s unixy jako takovými. Jestli to považujete za odstrašující, nejste sám.

    Lokalizace funkcí v Excelu je dost drsná věc. Naštěstí se mě týká jen na jednom stroji, kde jsem si omylem objednal českou verzi MS Office :(. Lokalizace je pro běžné uživatele potřeba, zvláště v ČR kde lidé jazyky neumí, ale pro mě prostě není. Pravda, k anglickým verzím Windows i Office se dají nainstalovat lokalizační moduly, což potěší mezinárodní firmy.

    Osobně nemusím cvičit techniku vi, abych nemusel přemýšlet nad editací textu stylem "najet sem, označit odsud až tam, vystříhnout, najet támhle, vlepit". To jsou přece po čase naprosto automatické úkony, které vůbec nevnímáte.
    IntelliSense bylo komentováno, a závěr byl ten, že vim toho nenabízí zdaleka tolik, jako VS. Navíc osobně nevidím důvod, proč bych měl dopatlávat takovou věc, jako automatické doplňování. Na to snad nikdo nemá čas.
    Mě také létají prsty po klávesnici, a opět k tomu nepořebuji command line, ani vi. Jindy mi létají prsty po myši.

    QWERTZ klávesnice u nás zdomácněla proto, že se k nám původně vozily německé psací stroje, kde byla jedna typa nahrazena mrtvou klávesou háčku/čárky. Zatím co na malá písmena a české umístění závorek, uvozovek apod jsem si zvyknul, na QWERTZ ne. Samozřejmě anglický text, kód a administraci vždy jen na US layoutu. Lineární klávesnici můžete vidět u blokových klávesnic s abecedním pořadím, zákazníci to nemají rádi.

    Když píšu něco ve Wordu, kontrolu pravopisu a gramatiky samozřejmě používám. Je dost trapné mít v textu překlepy. Automatické doplňování a opravy mají někdy smysl, a jindy ne. Například nahrazování uvozovek za okrouhlé je velmi užitečné. U těch méně užitečných je zcela zásadní, aby šly rychle a pohodlně vypnout. Od uvedení smart tags v Office 2003 to naštěstí jde.
    Ano, Epos o Gilgamešovi je zrovna poměrně zábavný. Bohužel školy mají neuvěřitelný talent měnit víno ve vodu. Když jsme například u práva první noci, která má i v na našem území jistou tradici, tak je to věc pohledu. Z hlediska držitele tohoto práva to může být poměrně zajímavé, a kdyby bylo drženo i dnes, stálo by za úvahu nechat se zaměstnat v komunální sféře. Přece jen práce, to jsou i jiné benefity, než peníze. Stravenky, auto, mobil, právo první noci... Ke stáru už jsem pravda monogamní, takže bych dal přednost soukromé sféře. Hrozná je naopak představa, že by nešlo o právo, ale povinnost. No a z hlediska ženy? To bych asi spáchal sebevraždu. Z hlediska muže takové ženy? To by určitě skončilo úplatkem nebo vraždou.

    Kupodivu letištní přepážky dnes fungují převážně v GUI. Samozřejmě problémem je interface navrhnout tak, aby byl dostatečně efektivní. Když se to ale udělá správně, nemusíte operátory tak dlouho školit, operátoři dělají méně chyb, a efektivita práce je vyšší. Zdůrazňuji, že může být lepší dobrá command line, než mizerné GUI. Na Linuxu to je vidět dost často.

    Vy asi s řadou věcí nemáte problémy. Mě se pravidelně stávalo, že skripty i aplikace havarovaly na názvech souborů obsahujících mezery. Jako příklad jsem uváděl instalaci Oracle, Oracle klienta sqlplus, a velké procento skriptů.
    Data na flash disk zřejmě ukládáte na FAT. FAT má dlouhé názvy v Unicode (i na Windows 9x), takže s nimi není jediný problém. Na Linuxu ale není výjimkou vidět experty, kteří si přimountují FAT s code page ANSI1250 (asi někde tu zkratku uviděli, a chytli se toho), a pak na ní zapisují názvy souborů v UTF-8 nebo 8859-2. Výsledkem je, že se znaky v UTF-8 nebo 8859-2 považují za znaky v ANSI 1250, které se pak převedou na Unicode UFT-16. Uznejte ale, že tohle není problém Windows, ale 1) problém uživatele, 2) problém unixů a jejich zacházení s Unicode.
    U CD je to zřejmě podobný příběh. Joliet extension používá file names v Unicode, a není důvod, aby dlouhé názvy nefungovaly. Typické chyby neznám, protože jsem na Linuxu nikdy CD ani DVD nepálil.

    Jak jsem psal již dříve, chápu, že uvažujete jinak, než jak je navržené GUI. Ale vy zase chápejte, že jste se léta snažil uvažovat jinak, a byl jste holt úspěšný. Lze tedy předpokládat, že vám vyhovují věci, které jsou pro zbytek světa naprosto nepoužitelné. Otázkou je, jaké z toho vyplývá poučení. Třeba "netrapte se učením vi, protože po pár letech takové deformace budete tak mimo, že vám běžné GUI bude připadat jako příšerně neergonomické"?