Podpora Windows 10 končí 14. října 2025. Připravovaná kampaň Konec desítek (End of 10) může uživatelům pomoci s přechodem na Linux.
Již tuto středu proběhne 50. Virtuální Bastlírna, tedy dle římského číslování L. Bude L značit velikost, tedy více diskutujících než obvykle, či délku, neboť díky svátku lze diskutovat dlouho do noci? Bude i příští Virtuální Bastlírna virtuální nebo reálná? Nejen to se dozvíte, když dorazíte na diskuzní večer o elektronice, softwaru, ale technice obecně, který si můžete představit jako virtuální posezení u piva spojené s učenou
… více »Český statistický úřad rozšiřuje Statistický geoportál o Datový portál GIS s otevřenými geografickými daty. Ten umožňuje stahování datových sad podle potřeb uživatelů i jejich prohlížení v mapě a přináší nové možnosti v oblasti analýzy a využití statistických dat.
Kevin Lin zkouší využívat chytré brýle Mentra při hraní na piano. Vytváří aplikaci AugmentedChords, pomocí které si do brýlí posílá notový zápis (YouTube). Uvnitř brýlí běží AugmentOS (GitHub), tj. open source operační systém pro chytré brýle.
Jarní konference EurOpen.cz 2025 proběhne 26. až 28. května v Brandýse nad Labem. Věnována je programovacím jazykům, vývoji softwaru a programovacím technikám.
Na čem aktuálně pracují vývojáři GNOME a KDE Plasma? Pravidelný přehled novinek v Týden v GNOME a Týden v KDE Plasma.
Před 25 lety zaplavil celý svět virus ILOVEYOU. Virus se šířil e-mailem, jenž nesl přílohu s názvem I Love You. Příjemci, zvědavému, kdo se do něj zamiloval, pak program spuštěný otevřením přílohy načetl z adresáře e-mailové adresy a na ně pak „milostný vzkaz“ poslal dál. Škody vznikaly jak zahlcením e-mailových serverů, tak i druhou činností viru, kterou bylo přemazání souborů uložených v napadeném počítači.
Byla vydána nová major verze 5.0.0 svobodného multiplatformního nástroje BleachBit (GitHub, Wikipedie) určeného především k efektivnímu čištění disku od nepotřebných souborů.
Na čem pracují vývojáři webového prohlížeče Ladybird (GitHub)? Byl publikován přehled vývoje za duben (YouTube).
Priznám sa, že keď som pred čosi viac než rokom čítal knihu The Art of Unix Programming od Erica S. Raymonda, tak som nečakal, že by niekedy mohla vyjsť v češtine (či nebodaj v slovenčine). Ale stal sa zázrak :) Na prelomu rokov vyšiel český preklad a mne sa k nemu podarilo prebojovať.
V čom je vlastne táto kniha taká zvláštna a čím sa líší od tých desiatok kníh o programovaní, ktoré nájdete na policiach kníhupectiev? Začneme pekne po poriadku. Knihu napísal Eric S. Raymond, ktorý je jedným z hlavných predstaveľov hnutia slobodného softvéru. Pre tých, ktorý ho príliš nepoznajú, treba povedať, že jeho názory sú niekde na polceste medzi umierneným Linusom Torvaldsom a extrémistickým R. Stallmanom.
Okrem neho do knihy prispeli (formou vlastných krátkych pasáží) desiatky ďaľších autorov, ktorých mená nie sú neznámou. Spomeňme napriklad Briana Kernighana, Kena Thompsona (autor UNIXu), Stevea Johnsona či Douga McIlroye (vynálezca pipe - trubiek - dátovodov).
Knihy však obvykle nekupujeme podľa autora, ale podľa toho, čo v nich nájdeme. Aj v tomto sa kniha líší od konkurencie. Nenaučí vás programovať v Céčku, Perle, či awk. Nedozviete sa ani o tom, ako volať a používať tie, či oné funkcie jadra. Dokonca ani to, ako vlastne jadro funguje. Odpovede na otázku ako na to? sa nedozviete, ale dozviete sa niečo, čo je minimálne rovnako dôležité. Odpoveď na prečo práve takto? Kniha obsahuje postupy, ktoré sa používajú v Unixe a snaží sa ich vysvetliť, ukázať a presvedčiť, že práve oni sú tým pravým.
Umění programovat v Unixu je rozdelená na štyri hlavné časti. V prvej, nazvanej Kontext, sa dozviete, okrem dôvodov, prečo je Unix taký dobrý, aj (a najmä) základy navrhovania programov. Tieto pravidlá sú nosnou časťou prvej kapitoli a na nich naväzuje aj nemalá časť zbytku knihy. Jedná sa o pravidlá, ktoré (do istej miery) pozná väčšina programátorov a snáď sa nimi aj intuitívne riadi. Prevažná väčšina pravidiel je bezkonfliktných a univerzálnych. Dajú sa zhrnúť do jednej vety, ako Píšte jednoduché časti, ktoré sa dajú jednoducho prepojiť. alebo Oddelujte zásadu od mechanizmu a rozhranie od toho, čo je za ním.
Nájdu sa však aj také, o ktorých sa už polemizovať dá minimálne s ohľadom na skúsenosti z iných platforiem a skúsenosti s bežnými používateľmi, ako napríklad Ak program nemá čo povedať, nech radšej mlčí.
Kniha ďalej pokračuje s historickým prehľadom dvoch kultúr (hackerskej a unixovej) o ich vývine a následnom spojení. Záver kapitoly patrí letmému porovaniu operačných systémov. Na škodu je, že autor nepriznáva konkurencii prakticky žiadnu silnú stránku. Tento fakt sa vyskytuje priebežne v celej knihe a najhoršie z neho vychádza (ako ináč) Windows NT & spol.
Druhá kapitola sa zaoberá niečím konkrétnejším. A to prevádzaním skôr spomenutých pravidiel do návrhu aplikácii. Z množstva pravidiel sú vybrané tie najdôležitejšie: Modularita, Zameranie na textové formáty, Transparentnosť, či Medziprocesová komunikácia. Všetky tieto pravidlá sú rozvedené do väčšej hĺbky a čo je dôležitejšie, pre každé z nich je na výber aj niekoľko prípadov z praxe (kmail, gcc, SMTP, POP3). Bohužiaľ v celej knihe nájdeme len jeden antipríklad pre tieto pravidlá, ktorý ukazuje, že občas je výhodné na tieto pravidlá zabudnúť (fetchmail).
Kapitola o návrhu pokračuje pohľadom na minijazyky, teda jazyky, ktoré sú určené pre konkrétnu úlohu, akými sú regulárne výrazy, XSLT, či jazyk používaný v súboroch Makefile. Ďalej pokračuje pohľadom na konfigurácie programov, ich spôsobmi a vhodnými formátmi pre konfiguračné súbory. Nemenej dôležitou časťou návrhu v unixovom štýle je aj návrh rozhrania a ich štandardov. Na záver sa dozviete ešte pár slov o optimalizácii (resp. prečo by ste sa jej mali vyhýbať) a vhodnej zložitosti programov.
V tretej kapitole sa autor posúva ešte ďalej, tentokrát k implementácii. Aj ňou nás sprevádza od úplného počiatku a snaží sa zodpovedať nemálo otázok. Jednou zo základných (a často preceňovaných) otázok je výber programovacieho jazyka. Autor podáva prehľad o programovacích jazykoch C, C++, Perl, Lisp, Java a kedy je vhodné použiť ktorý. Po zvolení jazyka potrebujeme vybrať vhodné nástroje na editáciu kódu (vi, Emacs), generovanie kódu (yacc, lex, Glade), či systémy pre správu verzií. Na záver si autor opäť neodpustil podkapitolku o tom, že Emacs je to pravé vývojové prostredie :). V poslednej časti tejto kapitole sa dozviete viac o znovuobjavovaní kolesa a problematiky licencií k takýmto kolesám.
Posledná kapitola sa venuje problematike unixovej komunity. Predstavuje rady pre prenositeľnosť, dodržiavanie štandardov, či postupy pri dokumentovaní projektu. Kde sa ako východisko zo súčasnej spleti formátov ponúka DocBook. Ako sa správať po vydaní projektu a čo zahrňovať do distribúcie je témou ďaľšej časti tejto kapitoly. Nasleduje ešte letmé porovnanie licencií (MIT, BSD, Artistic, GPL, MPL) a na záver sa dozviete o príležitostiach a možnom nebezpečí, ktoré na nás v Unixe ešte čaká.
Kniha je ukončená vysvetlením použitých skratiek, obsiahlou bibliografiu, ktorá obsahuje aj postrehy k daným knihám, a niekoľkými námetmi na zamyslenie. Tie sú písané po vzoru východných filozofií ako rozhovor medzi žiakom a majstrom.
Toto dielo je jednou z najkvalitnejších kníh o programovaní, ktoré som kedy čítal, ale napriek tomu je potrebné povedať, že k dokonalisti mu ešte čosi chýba. Najväčším problémom je, že autor sa neodvažuje priznať konkurencii žiadne silné stránky. Nie je to len problémom tohto autora, s rovnakým problémom sa potýkajú viaceré skupiny, ktoré chcú presadzovať vlastné názory. Podľa mňa by uznanie silných stránok ešte zvýšilo hodnotu tejto knihy. Druhým (o mnoho menším) problémom je čiastočný extrémizmus, čo je samozrejme právom autora (Na druhé straně stojíme my, bojovníci za svobodu - nikoli jen za naši svobodu, ale za svobodu všech).
Hodí sa ešte spomenúť, že kniha (v anglickej verzii) je voľne dostupná na stránkach www.faqs.org/docs/artu/. Veľmi zaujímavú esej, ktorá sa zaoberá touto knihou, je Biculturism, autorom ktorej je Joe Spolsky, ktorý je programátor pre Windows.
Název | Umění programování v Unixu |
Autor | Eric S. Raymond |
Vydal | Computer Press |
ISBN | 80-251-0225-4 |
Datum vydání | 2004 |
Počet stran | 512 |
Doporučená cena | 590 Kč/880 Sk |
Nástroje: Tisk bez diskuse
Tiskni
Sdílej:
matematické operátory mohou být komunikativní, distribuční a asociativníasocialni by bylo usmevnejsi