Bohužel ty pokusy o GUI aplikace typu gVim, SMIT a SAM mají společné to, že ukazují, že přenesení konceptů konzole do GUI nefunguje. Dobré GUI je věda, a autoři KDE a Gnome by mohli vyprávět o tom, jak s věcí bojují.
Registry je úložiště konfigurace. Pravda, vyjma konfigurace aplikací drží také informace o COM komponentách (objemově největší část Registry). Aplikace samozřejmě musí občas hrabat i mimo "svou" část Registry. Například pokud nainstalujete na Linuxu deamon, instalátor zřejmě bude muset zapsat do /etc/rc.d/rc.local (nebo někam jinam), aby se mohl spouštět. A při odinstalaci se zase bude muset odstranit. Nejspíš bude zapisovat i něco do /etc/services (a kdo ví, jestli to po sobě při odinstalaci odstraní). Když nainstalujete plugin pro OpenOffice (představte si třeba intergaci faxového software do Writeru), asi budete muset zapsat do konfiguráku OpenOffice, aby vůbec nějaká integrace mohla nastat. Obdobně to funguje ve Windows.
Rychlost systému se nemění díky rozsahu Registry, stejně jako se rychlost nemění díky objemu koniguráků v /etc nebo pod home adresářem uživatele. Na odezvu počítače mají vliv například shell extensions, tedy COM komponenty, které se volají například při vykreslování kontextového menu. Bohužel některé kousky jsou zvláště "povedené". Naši přátelé ve společnosti nVidia například už jako součást setupu driveru instalují knihovnu, kterou registrují do kontextového menu video souborů. Tento doplněk po pravém kliku na soubor avi/wmv/mpg do kontextového menu přidá položku Play on my..., a poté seznam monitorů a TV. Seznam zobrazovacích zařízení se sestavuje dynamicky, zřejmě voláním driveru. Bohužel u toho dojde k přebliknutí obrazovky. Fuck, shit, který idiot?! Zdržení je naštěstí poměrně malé. Jiné kousky například nabízejí extrakci ze ZIP selfextraktoru, a tedy po pravé myši na souboru .exe testují, jestli v něm není ukrytý ZIP, což chvíli trvá. To je důvod, proč je systém po instalaci pár podobných aplikací poněkud vláčný. Je asi jasné, že vlastní objem databáze Registry není ten problém. Odinstalace je problém typicky u utilit "z CD časopisu ComputerWorld", které píšou prasata. V posledních 5 letech se ale i tohle zlepšilo.
Nového uživatele můžete samozřejmě naklikat, a je to poměrně rychlé. Pokud chcete více uživatelů, můžete je naklikat na jednom místě, a je to také celkem rychlé (GUI na to musí být stavěné). Samozřejmě i ve Windows máte možnost použít příkaz "net user franta pepik /add", nejlépe ještě s /domain (na co zakládat lokálního uživatele, měl by být v doméně). Samozřejmě můžu skriptovat jako v unixu, třeba mohu z command line udělat "for /f %i in (jmena.txt) do @net user %i %j /add". Samozřejmě možnosti skriptování s cmd.exe nejsou takové, jako s bashem, ale nepodceňoval bych je. Vyjma toho můžete založit uživatele ve VBScriptu, nebo jakémkoliv jiném jazyce podporujícím COM (viz http://www.microsoft.com/technet/scriptcenter/scripts/ad/users/manage/usmgvb05.mspx). No a kdybych opravdu potřeboval zakládat uživatele často, tak si vytvořím v Excelu sheet, do kterého dostanu jména (napíšu je tam, nebo naimportuji třeba dotazem z HR databáze), a jedním kliknutím myši spustím skript na pár řádek (prakticky loop nad těmi pár řádky z linku výše), který je vytvoří. Ve srovnání se skriptováním téhož na command line je to podobně složité, ale výsledek je *mnohem* lepší (a když na to přijde, výsledek může používat i sekretářka HR oddělení). Samozřejmě, že tohle neumí udělat člověk, který je jen power userem. Ale člověk, který se zvládne naučit unix, musí zvládnout i takovouhle trivialitu (natož Martin, který si na Linuxu umí opravit chybu v driveru). Věřte mi, že ve Windows se dá automatizovat prakticky cokoliv. Údajně i z PERLu, což opravdu není můj šálek čaje. Bohužel v unixech je GUI výrazně chudší (fakt nevím, jak bych v GUI importoval data z HR DB a zakládal uživatele v LDAP). Proto říkám, že na unixech i já používám raději command line.
Regedit se ke vzdálenému systému připojí se stejným kontextem, ve kterém byste z něj připojil disk. Pokud nemáte doménový účet, nebo nemáte práva na cílovém stroji, nejprve si připojte disk se správným uživatelem a heslem (nemusíte disk mapovat, stačí připojit). Bezpečnost netrpí, je to vše v rámci doménového modelu. Naštěstí ve Windows nemáme nic jako NFS.
Kdybych potřeboval vytvořit hromadu network shares, opět mohu použít command line (viz "net help share"), nebo si v extrémním případě napíšu Excel sheet, který shares založí pomocí těchto pár řádek: http://www.microsoft.com/technet/scriptcenter/scripts/storage/shares/stshvb01.mspx . U shares by jich ovšem musely být opravdu stovky, aby to mělo smysl, protože GUI funguje celkem fajn (stačí pravá myš na adresáři, který chcete sdílet, a vybrat Sharing). Navíc shares mají typicky odlišné nastavení permissions (na co jich jinak vytvářet více), takže ten overhead použití GUI nebude ve všem tom psaní moc velký.
PowerShell ještě mc neznám. Koncept je velmi zajímavý, a jde určitě o pokrok proti klasickému unixovému skriptování voláním utilit a parsováním textů. Důvodem pro vytvoření PowerShellu bylo zřejmě postupné opouštění Win32/COM světa, na které se MS připravuje. S použitím PowerShellu pro administraci systému si podle všeho počkám tak do roku 2009.
OCR/ICR bez GUI je celkem běžná věc. Když zpracováváte třeba formuláře, nemůžete se dívat na každý kousek ručně (to by pak to OCR skoro nemělo smysl). Proto se používá "serverové" OCR. Typicky bývá implementované s command line interface (unixy, windows), COM a .NET interface (Windows), a možná bude něco i pro Javu.
Silnou věcí ve Windows jsou právě komponenty. Když píšete aplikaci, a potřebujete v ní OCR, za pár minut můžete s kreditkou koupit sadu OCR komponent, a tyto ve své aplikaci použít. Pokud potřebujete rastrovat data ve formátu, který ukládá digitální RTG, kupte si komponentu. Pokud chcete obohatit aplikaci o reporting, můžete ušetřit spoustu práce, když si koupíte komponentu. Trh je veliký. Samozřejmě se vyplatí se rozhlížet, jak při koupi čehokoliv jiného, ale možnosti jsou nevídané. Tomuhle těžko něco konkuruje.
Shodneme se asi na tom, že Linux udělal za poslední léta na desktopu pokrok. Jenže když chcete víc, než přehrávat MP3 a brouzdat web, co může opravdu nabídnout? Snadný vývoj, dobrou dokumentaci, hromady komponent? Nevypadá to. Dobré GUI, ve kterém se dají dělat pokročilé akce (typu výše uvedeného přidávání uživatelů)? Nemyslím. Dostupnost aplikací typu profi OCR, imagingu, "systému pro management restaurace" (vezměme to jako symbol pro ty tisíce aplikací tohoto typu)? Asi také ne. Technologie typu řízení priority I/O, .NETu apod buď chybí, nebo jsou hotové napůl, nebo se velmi špatně používají. Samozřejmě je dnes Linux lepší, než byl před 10 lety, a třeba KDE je ve srovnání s CDE (děsný zmetek) neskutečný pokrok. Ale nestačí to.

