Vlákno názorů k článku Základní základy editoru Vim od Biktop - Taky si všímáte, že méně inteligentní lidé se...

  • Článek je starý, nové názory již nelze přidávat.
  • 9. 4. 2007 21:01

    Biktop (neregistrovaný)
    Taky si všímáte, že méně inteligentní lidé se díky technologiím mohou čím dál lépe prosazovat? Před nějakými 20 lety by se člověku, který chce pracovat s počítačem ale není schopen si přečíst pár řádek návodu a zapamatovat si pár základních příkazů každý vysmál a doporučil by mu třeba zahrádkaření místo toho.
    Jak by asi vypadalo auto, kdyby ho vymysleli až teď? Tři pedály, volant, řadící páka, blinkry, světla, tachometr, otáčkoměr, teploměr, stav nádrže... A pak ty příšerné dopravní předpisy! To je přeci strašně složité pro normálního uživatele, musel by se něco učit. Nebylo by to prodejné, dokud by to nefungovalo stylem "auto, jeď rovně ke křižovatce, pak doleva, doprava, zaparkuj..." Jasně že by to bylo strašně komplikované a náročné po technické stránce a dalo by se s tím dělat mnohem méně věcí, než s klasickým autem s volantem, ale méně schopní lidé si to žádají, aby se taky mohli prosadit. Oni nechtějí (nejsou schopni) využívat všech výhod auta, oni se prostě chtějí dostat z jednoho místa na druhé a přitom nechtějí jet hromadnými prostředky, ať už je ten důvod jakýkoliv.
    Všechno by mělo mít své meze. Člověk je tvor od přírody líný, to ano, ale neměl by techniku používat k tomu, aby mohl vyloženě inteligenčně degenerovat. A přímo za nebezpečné považuji to, aby se tyto věci přizpůsobovaly těmto uživatelům, kteří buď nepotřebují, nechtějí nebo nejsou schopni využívat všech vlastností a schopností technologií, které máme.
    Vemte si UNIX a třeba ten vi(m). Byly doby, kdy člověk, který není schopen si ani zeditovat konfigurační soubor, by tím pádem těžko mohl nastavovat síť. Dnes to možné je, a podle toho to taky často vypadá (ano, i na linuxových serverech). Díky různým "WYSIWYG" editorům dnes může kde kdo sázet knížky, brožurky, časopisy, a podle toho to taky vypadá - samozřejmě naprosto příšerně, protože takový člověk si není schopen někde nastudovat, jak se to má správně dělat! Díky pokročilosti vývojových prostředí a nabušenosti knihoven dnes může programovat i člověk, který by před 20 lety uznal, že na to prostě nemá hlavu - ale opět - podle toho taky ty výsledky vypadají!

    Takže kritikům programů à la "vi" bych vzkázal - pokud nejste schopni zorientovat se v takovémto programu (který je tedy dle mého názoru naopak velmi intuitivní a mocný po té, co se během ani ne jedné hodiny prokoušete základy a pochopíte jeho logiku), pak zvažte, jestli opravdu máte schopnosti na to, abyste se věnovali výpočetní technice na nějaké vyšší úrovni. Smiřte se s tím, že je to standardní unixový editor a stal se jím v dobré víře, že k počítači neusedá s prominutím blb, který čemu hned na první pohled nerozumí, to odsoudí a odmítne se tím zabývat.

    Zkrátka když něco nepochopí laik, tak to neznamená, že ta věc, kterou nepochopil, je špatná, ale spíše to, že je to prostě laik a některým věcem tím pádem nerozumí. Je to jako by se někdo chtěl zabývat matematikou ale nechápal by diferenciální rovnice, tak by se na to prostě vykašlal, zatratil by je jako uživatelsky nepříjemnou věc a bez dalších technologií (jako je třeba Maple) by nadále nedokázal žít. Ovšem takový člověk už se nedá považovat za matematika, prostě na to nemá hlavu. Bylo by asi absurdní matematiku přizpůsobovat takovýmto lidem jen kvůli tomu, aby se jí také mohli zabývat.

    P.S.: Jak tu někdo srovnával vim s editem z MS-DOSu, to mne tedy vážně pobavilo. Já bych to přirovnání otočil - ani edit, který frčel v 90. letech, neměl z daleka takové schopnosti (neměl vlastně skoro žádné schopnosti), jako o 20 let starší vi! A pokud jde o tu intuitivnost, tak když si vezmu MS-Word a vim, tak přesto, že první má ikonky, menu, čudlíčky a běží v grafickém prostředí, tak mi připadá méně intuitivní a práce s ním o poznání pomalejší. Když samozřejmě chápete logiku vim (Word tak logický ani zdaleka není, obsahuje spoustu funkcí, které v praxi k ničemu nejsou a neobsahuje funkce, které by se naopak hodily, nebo je jejich použití komplikované).
  • 9. 4. 2007 22:57

    byF (neregistrovaný)
    Vidím, že podle Vás by se mělo například doktorům zakázat používání počítače.
  • 9. 4. 2007 23:54

    Biktop (neregistrovaný)
    To ani tak ne. Jen kdybych viděl, že si bez toho počítače jako doktor neporadí, tak bych ho nenazýval doktorem.
  • 9. 4. 2007 23:49

    Franta Kučera

    Tenhle příspěvek je snad delší než původní článek. Ale přelouskal jsem ho celý :-)

    "prostě chtějí dostat z jednoho místa na druhé" Tohle mi přijde jako dost důležité, počítač je jen prostředek k dosahování nějakých cílů. Musí být užitečný a užitek z něj musí být vyšší, než moje úsilí, které do toho vkládám. Jinak je to jen krám, který mi zabírá místo na stole.

    Potřebuji nastavit firewall? Prostě použiji kvalitní grafický nástroj pro vytvoření pravidel a konfiguračního souboru. Nebudu se muset učit nějakou syntaxi konfiguračního souboru (a také se vyhnu chybám z nepozornosti) a tím ušetřím drahocenný čas. Takto ušetřený čas můžu věnovat přemýšlení o tom, kde budou jaké zóny, jak rozdělím počítače do podsítí a podobným důležitostem. A nebo prostě ve volném čase půjdu na procházku ven nebo do hospody nebo budu flamovat v internetových diskusích :-)

    Prostě upřednostňuji obsah nad formou, není nejdůležitější, kde se píše jaká závorka, není důležité umět 1000 klávesových zkratek, ani není důležité, jestli dokáži zeditovat soubor za 5 nebo 8 vteřin. To je jenom taková opičí práce, důležitější je ta podstata, inteligentní člověk stráví třeba i hodiny analýzou problému a přemýšlením. Ale konkrétní implementaci napíše třeba v řádech minut.

    Můžu třeba studovat hodiny příručky k TeXu*, nebo můžu stejný čas věnovat studiu literatury o typografických pravidlech a sazbě. V prvním případě se naučím, jak napsat pár příkazů, v druhém případě se naučím, jak by měl dokument vypadat a vysázím ho třeba v nějakém intuitivním editoru (tím není myšlen MS Word**).

    *) zrovna ten TeX není asi nejlepší příklad to tohoto flamewaru. Protože já sám používám LaTeX a ve spojení s dobrým editorem je práce docela intuitivní. I když ne úplně dokonale, protože občas musím hledat v manuálech a návodech. I když psát to v TeXu a ne LaTeXu by asi bylo utrpení, takže je ten příklad vlastně docela na místě :-)

    **) Jen tak mimochodem: i ve Wordu se dá "vysázet" jakž takž vypadající dokument. Jen to dá možná víc práce. Protože LaTeX sám o sobě dělá docela hezké dokumenty. Kdežto Word sám od sebe nedělá nic a když je uživatel prase a nepoužívá styly, tak je výsledek tragický.

  • 10. 4. 2007 2:32

    Biktop (neregistrovaný)
    Ano, je důležité se dostat z jednoho místa na druhé, ale podstatné je za jakou cenu. K tomu, abych zkopíroval soubor, nepotřebuji, aby při tom lítaly ze strany na stranu namalované kousíčky papíru a z repráčků se linuly nějaké zvuky. A nepotřebuji k tomu myš, abych vzal "jako" soubor a hodil ho "jako" někam jinam. I když je to velmi jednoduché a názorné. Stejně tak nepotřebuji kvůli tomu, abych se dostal z domova do práce, speciální silnici, družicový naváděcí systém a auto plné počítače jen proto, že nejsem schopen se naučit šlapat na tři pedály, točit volantem, měnit kvalty a znát dopravní předpisy - kteréžto věci mi umožní jezdit s mým autem nejen z domu do práce, ale prakticky kdekoli, a navíc podstatně rychleji a efektivněji, přičemž všechny ty zbytečnosti (speciální silnice, družicový naváděcí systém a auto plné počítače) k tomu vůbec nepotřebuji. Je otázkou, co je pak větší krám. Tedy pro mne to otázkou není.

    Grafický nástroj... Vzpomínám si, jak jeden známý v 90. letech cosi měnil u uživatelů jedné sítě se stovkami uživatelů s NT serverem. Nejefektivnější v tom prostředí bylo vzít makrokameru a "nafilmovat si" operaci změny pro jednoho uživatele a kliknutí na tlačítko další. Samozřejmě se to občas trošku zaseklo a bylo nutné to hlídat, aby to dělalo, co mělo. Jiná možnost nebyla - leda jen ručně klikat každého uživatele zvlášť. To mi jako úspora času zrovna nepřipadá... Jednodušší by pro mě bylo celou změnu provést nad nějakým textovým souborem pomocí jednoduchého skriptu a awku nebo třeba zrovna v něčem, jako je vim. Výhoda GUI většinou je u jednoduchých problémů, u těch se klasický unixový přístup skutečně může zdát poněkud těžkopádný. Ale jakmile dojde na opravdové problémy, stává se to pro GUI často problémem neřešitelným, zatímco "textové" řešení se projeví jako velmi elegantní a flexibilní. Spíše bych řekl, že s GUI ten čas ušetříte hlavně v počátcích, kdy se nemusíte nic učit, vše je intuitivní, zatímco kolega se učí příkazy a jména proměnných. Ale jakmile se to naučí, bude to on, kdo nakonec ušetří víc času a bude to mít lépe pod palcem.

    "Prostě upřednostňuji obsah nad formou" - no přesně. Tak co Vám vadí na vimu? :-) "Obsah" je skvělý, "forma" se Vám zdá nepříjemná :-) Textový editor není cíl, je to pouze prostředek. My ale jdeme za nějakým cílem. Ovšem použitý prostředek významně ovlivňuje, jak dobře se nám za tím cílem půjde. Bude-li to intuitivní koloběžka, nebo méně intuitivní automobil... Na nákup se asi rychleji dostanu prvním prostředkem, ale budu-li chtít jezdit z Prahy do Brna, tak se asi vyplatí věnovat nějaký ten čas udělání si řidičáku. A jakmile poznám výhody auta, budou mi samozřejmě lidé, kteří používají koloběžky a zatracují auto, protože je méně intuitivní než koloběžka, připadat směšní.

    Jenže ta intuitivita má prostě své meze. Jednoduché věci se dají udělat intuitivně, ty náročnější už ne. Zkrátka protože jsou náročnější, tedy nejsou intuitivní :-) Ony ty věci klidně mohou zůstat intuitivní, ale za předpokladu, že budete mít nějaký netriviální, na první pohled ne tak moc intuitivní "background", který umožní, aby v jeho rámci i složitější věci mohly být intuitivní. Př.: obsah (povrch) čtverce, obdélníku, kvádru, krychle - to jsou celkem intuitivní věci. U kruhu, elipsy, koule už je to intuitivní mnohem méně a u trojosého elipsoidu nebo dvojdílného rotačního hyperboloidu? V porovnání s tím čtvercem, obdélníkem, atd. vůbec! Ale pokud máte background zvaný integrální počet, který sám o sobě není na první pohled zrovna intuitivní a je třeba se ho nejdřív naučit, tak se pro vás stanou intuitivními všechny z těch uvedených problémů. A tak je to i s vimem, (La)TeXem apod. LaTeX je bezva věc, ale jakmile člověk potřebuje něco, s čím LaTeX tak nějak nepočítá, a může to být na první pohled i prkotina, tak se sakra zapotí. To je daň za to, že se toho na začátku stačilo naučit méně. Word nechávám stranou zcela - také jsem viděl 400 stránkovou knihu vysázenou ve Wordu, ovšem považuji to spíše za kuriozitu, srovnatelnou s tím příkladem s Win NT nebo s jízdou na koloběžce do Brna. Jde to, ale jsou i pohodlnější způsoby.

    Tady prostě platí něco jako "těžce na cvičišti, lehko na bojišti". Vim a vůbec celý Unix byl vymyšlen pro lidi, u kterých se předpokládá, že budou počítač využívat profesionálně. Proto je to celé koncipováno jako závodní dráha a v garáži jsou připravené závodní speciály (abych použil přirovnání, jako Luke výše). Na co ještě mít tam babety? Nepředpokládalo se, že tam budou oplendovat nějací amatéři :-) A profík samozřejmě tím speciálem může jen sjet pro nákup, když je potřeba, v tomhle případě to ani není žádný výkon, ale jen to není tak intuitivní, jako ta babeta, no, to se nedá nic dělat. Když se to někomu nelíbí, tak ať neleze na závodní dráhu... :-)
  • 10. 4. 2007 21:24

    Franta Kučera
    Je mi docela líto lidí, kteří nepoznali kvalitní GUI.

    Ono totiž uživatelské rozhraní se dělí na dobré a špatné. A to bez ohledu na to, jestli je to GUI, textové rozhraní nebo konfigurační soubor.

    GUI může být geniálně navržené a i hromadné operace v něm budou záležitost na jedno dvě kliknutí. Stačí aby programátor nebyl lempl a při vývoji přemýšlel. Oproti tomu konfigurační soubor může být tak nešťastně navržený, že se i s malými úpravami konfigurace bude uživatel složitě mořit a navíc to bude muset neustále konzultovat s příručkou (v horším případě postupovat metodou pokus omyl).

    Mým ideálem jsou konfigurační soubory v XML + GUI nástroje pro editaci těchto souborů.
  • 11. 4. 2007 14:40

    Biktop (neregistrovaný)
    Příkazový přístup bude vždycky obecně foremnější, flexibilnější a univerzálnější, než GUI.
  • 11. 4. 2007 21:44

    anonymní
    asi stejne jako je flexibilnejsi vyvoj v nizsich jazycich nez v tech vyssich
    ale za tu cenu, ze stejny projekt je na nizsi urovni mnohem slozitejsi vytvorit
  • 12. 4. 2007 15:35

    Biktop (neregistrovaný)
    Co říkáte je naprostý nesmysl. Je mnohem jednodušší a rychlejší napsat "cp /a/b?0* /c" než někde myší po monitoru (a po stole tím pádem vlastně také :-) lovit nějaké obrázky a trefovat se s nimi do jiných obrázků, i když uznávám, že je to mnohem více intuitivní.
    Rozdíl mezi textovým přístupem a GUI bych přirovnal k rozdílu mezi latinkou a obrázkovým písmem. To první se člověk musí naučit, je to přece na první pohled složitější vypisovat každé písmenko, přičemž ta písmenka jsou absolutně neintuitivní a musí se to nejdřív se slabikářem v ruce naučit, jinak si nepřečte ani "nazdar"... druhé je intuitivní, na první pohled mnohem jednodušší. Namaluju očičko, každý pochopí, že je to oko. Ale ve výsledku sám posuďte, jaký přístup je efektivnější.
  • 13. 4. 2007 13:42

    Franta Kučera
    Ne, efektivnější je stisknout F5 a soubor se zkopíruje.

    Navíc tahle zkratka bude fungovat kdekoli, nejen tam, kde je můj oblíbený správce souborů. Je jedno, jestli tam je Norton, Salamander, Volcov, Midnight Commander, Krusader, Total Commander nebo Dos Navigátor.

    Standardní ovládání má přece jen něco do sebe ;-)
  • 13. 4. 2007 11:34

    Franta Kučera
    Což je ale i nevýhoda, protože v GUI na něco klikneš nebo neklikneš, vyplníš hodnoty do formuláře, předem může být dané, jestli se vyplňuje číslo, datum... dobré GUI ti hodně pomáhá. Kdežto v příkazovém režimu můžeš zadat libovolnou sekvenci znaků a pak teprve čekáš, co z toho vyleze.
  • 13. 4. 2007 12:28

    bez přezdívky
    Na druhou stranu tyto úlohy nejdou příliš dobře automatizovat. Příklad: pokud máte vyplňovat několik desítek různých formulářů (klidně to mohou být cizí formuláře, takže nemáte možnost předem si vytvořit předvyplněnou kopii), které se výrazně liší strukturou, ale chcete do nich stále dokola psát dnešní datum, své jméno, adresu, informace o firmě a další jednotné údaje, primitivní editor vám nabídne pouze ruční vepsání všech údajů. Trochu lepší editor vám nabídne možnost vytvořit si pro každý formulář zvláštní makro, protože se nedokáže vypořádat s odlišnou strukturou dokumentů, a najít správné makro a spustit ho budete muset vy. VIM vám nabídne možnost vytvořit si jediné makro, které bude pracovat přímo se strukturou vybraného formuláře, takže bude fungovat pro všechny, ale ještě navíc můžete VIM nastavit tak, že při otevření prázdného formuláře toto makro automaticky spustí a přesune kurzor tam, kde nejčastěji začínáte ručně psát specifické údaje.
  • 13. 4. 2007 14:14

    Franta Kučera
    GUI znamená graphical user interface. Je tedy určené pro uživatele, ne skripty a automatizaci! Dobrý program (resp. dobrý program, u kterého je to potřeba) má vedle GUI i jinou možnost vstupů - třeba dávkové zpracování XML souboru, Webové služby, DCOP, ... Třeba takový webový formulář mohu vyplnit ručně v prohlížeči, nebo ho vyplnit dávkově pomocí programu wget.
  • 11. 4. 2007 16:00

    Jakub Hegenbart
    GUI může být geniálně navržené a i hromadné operace v něm budou záležitost na jedno dvě kliknutí. Stačí aby programátor nebyl lempl a při vývoji přemýšlel.

    S tím lze obecně souhlasit a myslím, že dobrých návrhářů GUI pořád máme dost málo. To ale nemění nic na tom, že zrovna vývojáři jsou pořád lidé se svébytnými požadavky, se silnými názory (viz všude kolem ;-)) a hlavně to nemění nic na tom, že je-li konfigurák třeba bashovským skriptem, přizpůsobí se potřebám v takové míře, že by si GUI stejně člověk musel předělat. Pěkné konfigurační GUI má z mého pohledu třeba Emacs. Sice není superergonomické, ale používá se slušně a přizpůsobuje se nově nainstalovaným modulům, neb se generuje automaticky. Samozřejmě to není nic proti možnostem konfigurace v ~/.emacs, ale člověk může používat oboje, ne? ;-)

    S tím XML si moc nepolepšíte, pokud ovšem ten nástroj nebude fixovaný na schéma. Pak je otázka, do jaké míry bude flexibilní. Jen bacha na to, že lidé na tom nástroji budou poté závislí, protože slušně se XML konfiguráky ručně editovat nedají. Aby pak (nemaje alternativu) nenadávali na nástroj, který někteří z nich budou muset používat proti své vůli, protože by třeba rádi měli to rozhraní trošku jiné. Ale přeju hodně štěstí při vývoji, každý nápad si cením a třeba se to ujme. :-)

  • 11. 4. 2007 16:30

    anonymní
    no pak uz nezbyde, nez aby nekdo prepsal vim tak, aby umel stejne dabelske veci i s XML :)
    a ze tam by se dalo docela vyradit s takovym XPathem...
  • 13. 4. 2007 11:39

    Franta Kučera
    VIM neumí XML a XPath??? Co je to za zaostalý editor? Vždyť tohle umí kdejaká GUI potvora!

    (tohle berte s nadsázkou :-)
  • 13. 4. 2007 12:04

    Franta Kučera
    1) Člověk má jedinečné potřeby jen výjimečně, mnohem častější je, že stejnou úlohu jako ty řeší tisíce jiných lidí na celém světě. Pak je IMHO lepší používat optimalizované a specializované nástroje s GUI pro daný úkol, než něco univerzálního (resp. takové nástroje vyvíjet).

    2) Na XML jsou super právě ta schémata/DTDčka. Díky nim si mohu zvalidovat (zkontrolovat) konfigurák, který jsem právě napsat/naklikal, a budu vědět, že mi program nezhavaruje až tento konfigurák použiji.*

    "protože slušně se XML konfiguráky ručně editovat nedají." Ve VIMu možná ne (sorry za rýpnutí), ale existuje dost XML editorů, kterým když předhodím DTDčko, tak mi při psaní budou nabízet dostupné volby. Napíšu < a objeví se mi seznam všech elementů, které jsou na daném místě použitelné. S takovým editorem je potom radost pracovat. Kdežto když píšu konfigurák, který je vlastně BASH skript, mám sice tisíc možností jak něco nastavit, ale zároveň i deset tisíc možností kde udělat chybu. Takže musím neustále konzultovat s příručkou. A pak ještě doufat, že daný program bude mít možnost předem zkontrolovat konfigurák, abych se nemusel bát, že se chyby v konfiguraci projeví až při nasazení.

    Pro XML konfigurák není moc složité udělat hezké GUI, protože existuje dost knihoven a je to standardizovaný formát. Kdežto u neXML konfiguráků jsou spousty různých formátů a syntaxí, téměř každý program má svoji.

    "Jen bacha na to, že lidé na tom nástroji budou poté závislí" Právě že nebudou -- kdokoli totiž může vyvinout vlastní GUI editor tohoto konfiguračního souboru (což není moc práce) nebo uživatel může použít univerzální textový XML editor, který rozumí DTD a tudíž uživateli nabídne jen přípustné elementy a nedovolí mu udělat chyby.

    V XML konfiguračních souborech je opravdu síla a zároveň svoboda (kdokoli může snadno udělat svůj editor), takže bych si přál, aby ho aspoň nové programy používaly. Já je ve svých programech taky používám, nikdy nebudu používat proprietární "plain-textové" formáty konfiguračních souborů.


    Další možností je ukládat nastavení do databáze, to je taky bezva a v XML konfiguračním souboru je pak jediná hodnota -- připojovací řetězec do databáze. (to se týká programů, které by beztak databázi používali, u ostatních programů je nesmysl používat DB jen kvůli uložení nastavení).


    *) jistě, hodně programů jde spustit s volbou, která zkontroluje správnost neXML konfiguráku. Ale to znamená implementovat znovu a znovu totéž pro každou aplikaci a každý konfigurák, kdežto XML validátor stačí jeden a už je dávno naimplementovaný.
  • 13. 4. 2007 20:36

    Ash (neregistrovaný)
    Osobně s well-formedizací, validací a reformátováním xml ve VIMu nemám problém, mám na to zkratky ,w ,v a ,r, spolupráce s externími nástroji xmllint xmlval a já nevím jak už se všechny ty mrchy jmenují. Běžné věci jako autoformátování a párování tagů, folding atd. řeší pluginy, nápověda při psaní - to už je pak opravdu vhodný specializ. editor, stejně tak třeba vrmlpad pro vrml a podobně. Nicméně doufám že pro "napovídání" dle dtd brzo někdo napíše nějaký plugin :D všechny potřebné nástroje k tomu už ve vimu jsou. Kdybyste někdo o něčem takovém věděli, dejte vědět...
  • 13. 4. 2007 21:40

    Franta Kučera
    OK, takže když ani milovníci VIMu nemají problém s psaním XML, nic už nebrání tomu, aby se XML konfiguráky používaly. To jsem moc rád :-)
  • 14. 4. 2007 9:57

    Ash (neregistrovaný)
    Asi nevíte, o čem mluvíte, nebo se snažíte mermomocí míchat všechny problémy dohromady :D To že editor nemá problém se zpracováváním konfiguráku a dokáža pomoct při editaci nezaručuje, že lidé změní názor a začnou ošklivé a ukecané (leč pro stroje dobře neziplatformně zpracovatelné a přeositelné atd atd. a pro někoho i elegantní ale pro mnohé hůře čitelné atd.) xml používat. Používat xml znamená na všechno nasazovat xmlprocesory, a je na místě otázka, jestli je to opravdu to, co chceme. Ne každý má totiž xmlprocesor také v hlavě, a dokonalé odstínění zatím neexistuje a ani nebude, podpora v editorech je jakás takás berlička. Masivní rozmach xml konfiguráků nestojí a nepadá to s mírou schopnosti vimu editovat xml.

    Když někomu řeknu "do sekce drivers přidej enable=true" tak to je lidsky přenositelnější, než když mu řeknu "do bloku v namespace "http://foo.boo" - nevím jak ho máš pojmenovaný, pokud máš starší verzi tak možná defaultně, já mám novější tak ho mám pojmenovaný ns2 - přidej <následuje spousta METAinformací pro lidi nedůležitá leč pro stroje nezbytná a nakonec to kýžené "true".

    Samozř. pokud se to všechno naklikává v GUI a xml konfigurák je jen úložiště těchto informací, tak pak je to osatínění DOKONALÉ (pravdivě leč ironicky). Windowsáci už vědí o čem je řeč.

    Nevím "proč jste moc rád", mně připadá že v tomto případě už akorát blbě kecáte, sorry.
  • 14. 4. 2007 13:24

    anonymní
    to ale neni problem XML ale toho, kdo takovy konfigurak tak blbe navrhnul a meni namespaces
    copak tahle nekdo meni syntaxi existujicich konfiguraku?

    pokud jsou ty META dulezite pro stroj, musi byt i v tom vasem textovem konfiguraku

    odstineni je v GUI dokonale ale presto umoznuje pracovat s tim i rucne a to za pomoci vhodneho editoru, ktery zna syntaxi velmi efektivne, rozhodne lepe nez s cistym konfigurakem
  • 14. 4. 2007 17:55

    Ash (neregistrovaný)
    pokud jsou ty META dulezite pro stroj, musi byt i v tom vasem textovem konfiguraku Not true. Povšimněte si, že textové konfiguráky například postrádají uzavírací tagy. Také namespaces se zřídka vyskytují, o dtd nemluvě. Jsou to informace důležité pro xmlprocesor. S textovým konfigurákem zpravidla pracuje ad-hoc procesor, který takovéto meta informace nepotřebuje. Pokud autor aplikace potřebuje výhody plynoucí z použití xml konfiguráku, tak ho použije. Ovšem musí přijmout i ty s tím plynoucí nevýhody.
  • 14. 4. 2007 21:58

    Franta Kučera
    "například postrádají uzavírací tagy"
    To snad nevadí, ne? Pokud použiji kvalitní editor a ne primitivní, tak tyhle koncové značky napíše za mne. Uzavírací značky také přispívají k pořádku a společně s celým XML snižují chybovost.

    Jmenné pro prostory v XML můžu, ale nemusím, použít.

    Absence DTD má být výhoda? Tak to je snad špatný vtip.
  • 14. 4. 2007 23:05

    Jakub Hegenbart
    "například postrádají uzavírací tagy"
    To snad nevadí, ne?
    <olej>Jistěže nevadí. :-) Ve stromové struktuře přeci stačí jen jediná uzavírací závorka. :-)</olej> (Just kidding... ;-))
  • 14. 4. 2007 13:59

    Franta Kučera
    Tak tohle může napsat snad jenom pořádný omezenec z počítačového pravěku (sorry).

    Ona konfigurace programu je často složitější než jen pouhé přiřazení:
    klíč = hodnota

    (ale na to si přijde každý sám, až začne něco pořádného programovat).
  • 14. 4. 2007 18:01

    Ash (neregistrovaný)
    Nemusí to napsat omezenec, stačí abyste to špatně pochopil. Jistě, pokud je konfigurace složitější, tak se použije xml, někde jsem to tu už psal. Ovšem je potřeba přijmout i komplikace, které to přinese. (Jsou menší než výhody, ale jsou.)
  • 14. 4. 2007 22:01

    Franta Kučera
    Já vím a jsem tomu rád (že se používají). Ale bohužel se nepoužívají tak masově jak, by mohly, a proto jsou formáty konfiguračních souborů často zbytečně přiohnuté pro zastaralé ploché soubory s holým textem, což komplikuje život hlavně uživatelům.
  • 17. 4. 2007 9:51

    Ash (neregistrovaný)
    K té složitější konfiguraci programu - napadlo mě, jak by to asi vypadalo, kdyby se vim konfiguroval v xml. Asi se shodneme, že jeho konfigurovatelnost je netriviální, v zásadě neomezená. Pro strojové zpracování by to asi bylo dobré, daly by se nad tím i dobře stavět dialogy, ale z lidského hlediska (gui z principu věci nemůže zvládnout vše čili stále přichází v úvahu práce přímo s konfigurákem) by to pro mne bylo asi nepřijatelné, i kdybych na to měl supr trupr xml editor. Těžko říct proč :) Mne připadá xml výhodné pro sémantické uchovávání dat a výměnu těchto dat. Pro konfiguraci programu to nevidím jako nezbytnou výhodu, na kterou by "teď měli všichni rychle přejít" protože xml rulez. Pro konfiguraci připadají v úvahu různé klasické .cfg, .ini, příkazy, skripty, gui klikátka... ale že by to z nějakého důvodu muselo být zrovna xml a že by to přinášelo nějakou zásadní výhodu bez komplikací si nemyslím.
  • 17. 4. 2007 11:27

    anonymní
    a co je konfigurace jineho nez semanticke uchovavani dat a jejich vymena?

    ini je snad vlastne takovy primitivni strom sekce-parametr-hodnota

    xml editor ti nepomuze pri konfiguraci, pokud ta ma vicemene nekonecne moznosti (i kdyz treba na dane misto se da vlozit jenom nejaka podmnozina), ale jak je takova konfigurace zpracovatelna samotnou aplikaci?

    osobne se mi treba vubec nelibi treba konfiguraky v podobe bashovych skriptu atp. ktere by asi skutecne v XML nebyly prilis efektivni

    neco jineho je jejich pouziti jako maker (odkazovanych treba v ramci hlavni XML konfigurace jako adresar nebo soubor s jejich zdrojaky, nebo primo zapsanych v tom XML (vcetne detailu jako prirazeni klaves, stavu kdy je mozne je pouzit...))

    ale psani maker to uz je neco trochu jineho, nez konfigurace aplikace (to je mj. treba prirazovani tech maker k akcim, ale i spousta jinych veci)

    aplikace, ktera se primarne konfiguruje programovanim neni asi tak uplne aplikace :) nebo to neni aplikace pro koncoveho uzivatele/admina :)

    v XML si lze velmi dobre predstavit konfiguraci ruznych serveru ale i desktopovych aplikaci

    vyhodou by byla i existence standardnich knihoven pro praci se standardnimi sekcemi takove konfigurace (treba volba barev, fontu, volba souboru prislusnym dialogem pro polozky v konfiguraku s nastavenym typem color, font, file, directory atp.)
  • 17. 4. 2007 23:10

    Franta Kučera
    "gui klikátka" mají být lepší než konfigurace v XML? To mi spíše připomíná starý zaseknutý gramofon, který říká "xml ne, xml ne..." ale vlastně ani neví proč.

    GUI je nadstavba pro koncového uživatele, ale pod tím, by měl být nějaký otevřený formát a ideálním je pro tento případ XML.

    Každý konfigurák je omezený množinou vlastností, kterou je z něj schopná aplikace vyčíst. To že do konfiguráku v čistém textu můžeš zapsat kdejaký blábol nic neznamená, pokud daná aplikace tuto konfiguraci neumí načíst a použít. V případě XML je to totéž, aplikace také umí načíst jen nějakou množinu a ne libovolnou náhodnou posloupnost znaků. Akorát to XML mi navíc dává možnost si konfigurační soubor předem zkontrolovat (zvalidovat), abych věděl, jestli v něm nemám chyby.

    XML je obrovsky pružné a nabízí (téměř) neomezené možnosti, můžeme v něm hravě udělat stromovou strukturu, nikoli jen struktury klíč=hodnota nebo skupina: klíč=hodnota. Jiné vztahy mezi entitami než 1:1 (případně 1:0-1) se v textových souborech vyjadřují velmi komplikovaně, kdežto v XML je to hračka.

    "výhodu bez komplikací si nemyslím" komplikace může mít leda ten, kdo používá zastaralé nástroje, které neumí XML a pracuje s těmito soubory jako s čistým textem. Ale všichni ostatní mohou čerpat z výhod XML.
  • 14. 4. 2007 0:27

    anonymní
    I kdyz pro ty konfiguraky a vic strukturovany dokumenty se precejenom vic hodi neco mocnejsiho nez staricke DTD, treba ty pro rucni psani naprosto ohavny xml schemata a nebo naprosto genialni relax ng.
  • 11. 4. 2007 21:47

    anonymní
    vyborne a jste pokud mozno aby vsechny konfiguraky mely pokud mozno podobnou syntaxi a treba i spolecnou hlavicku - proste modularni pristup

    a vydat to treba jako ISO standard :)