Hlavní navigace

Softwarová sklizeň (26. 7. 2000)

26. 7. 2000
Doba čtení: 8 minut

Sdílet

Jelikož jsem si dopřával minulý týden dovolenou (což logicky vyústilo ve skutečnost, že stále pršelo a v poslední den mého pobytu se konečně udělalo pěkně - rtuť teploměru vyšplhala na neuvěřitelných 16 stupňů Celsia), Sklizeň se nekonala. Tak si to pojďme dnes vynahradit.

Úterý 25. 7.
Skvělý animační a vizualizační program Blender se dočkal první betaverze nové řady 2.0 a jak bylo přislíbeno, je to nyní zcela neomezený freeware a některé části jsou navíc šířeny ve zdrojové podobě. Verze 2.0 by měla být vpravdě revoluční a některé změny tomu nasvědčují. Například přibyla podpora fyzikálních zákonitostí a zvuků. Na domovské stránce se objevil také základní tutoriál, který snad pomůže začátečníkům. Apropos, když už mluvíme o domovské stránce projektu, tak ta se při této příležitosti oděla do poměrně ohavného hávu. No nic, podstatné je, že se stále zlepšuje program :)
Faqprocessor.cgi je velmi jednoduchý systém pro publikování FAQ – často kladených dotazů – na webu. Základem je jednoduchý textový soubor, v němž jsou dotazy uvozeny sekvencí Q: a odpovědí A: a o zbytek se postará už skript samotný. Vzhled stránky je dobře konfigurovatelný, o čemž se můžete přesvědčit na několika příkladech.
Od stejného autora pochází i skript PerlBoard, který podobně jednoduchým způsobem umožňuje obohatit svou stránku o diskuzní fórum s podporou členění do vláken. Kromě obvyklých funkcí podporuje například přihlašování heslem, autologin pomocí cookies či vkládání HTML tagů do příspěvků. Program neumí spravovat více diskuzních fór, je nutné jej kopírovat nebo linkovat pro každé fórum zvlášť, což by se mělo v krátké době změnit.

Pondělí 24. 7.
Další možností, jak jít na dynamicky generovány WWW stránky, je projekt SteelBlue. Jde o aplikační server inspirovaný komerčním Cold Fusion od Allaire, který lze provozovat jak na Windows, tak na un*xech – pracuje jako CGI skript. Základem je nativní podpora několika SQL databází (včetně ODBC) a vkládaný skriptovací jazyk podobný Perlu, který lze rozšiřovat pomocí C++ API. Na domovské stránce projektu najdete poměrně pěknou dokumentaci i s příklady použití a jedno online demo.
Po několika notoricky známých distribuovaných výpočetních systémech, jako je SETI@Home nebo louskání šifer, se objevil také distribuovaně počítaný screensaver. Program ElectricSheep je šetřič obrazovky, který zobrazuje MPEG animaci fraktálních plamenů. Zároveň počítá další iterace, které odesílá na server. Musím říct, že některé animace jsou opravdu úchvatné, jak se můžete přesvědčit z příkladů, které si můžete stáhnout.
AFT je další textový preprocesor pro generování dokumentace v různých formátech. Jeho výhodou je podle mě to, že zdrojový text používá velmi jednoduché značky a vlastně skoro připomíná obyčejný zformátovaný text (viz například hvězdičky jako odrážky atp.). Mezi zajímavé funkce patří například generování obsahu (TOC), vkládání obrázků či členění textu do sekcí. Výstupem může být například HTML či XML či další formáty.
Hru Heroes jsem ve Sklizni zmínil už dvakrát (což není moc obvyklé) a nedá mi to, abych to neudělal potřetí, tentokrát kvůli přidání editoru levelů. Pro ty, co nevědí, oč jde, připomínám, že Heroes je hra, která vychází z klasického červa, sbírajícího jablíčka/lístky/čís­líčka/… za účelem prodloužení svého těla, ovšem rozdíl mezi tím, co známe třeba z mobilních telefonů Nokia, a Heroes je podobný, jako rozdíl mezi obecní pastouškou a Empire State Building :)

Neděle 23. 7.
Linuxový port OpenBSD FTP démona nazvaný Virtual FTPD má jednu zajímavou vlastnost. Jak už název napovídá, podporuje virtuální uživatele, což umožňuje vytvářet FTP přístupy bez skutečných systémových účtů. Na jednu stranu tím odpadají starosti, jestli se náhodou uživatel nedostane přes svůj systémový účet někam, kam by neměl, na stranu druhou to poněkud komplikuje například použití diskových kvót a přibývá i problém synchronizace hesel mezi službami (POP3, IMAP, FTP).
Síťové hry jsou velmi populární a to zejména pokud podporují mód deathmatch – s kolegy spolupracujete denně alespoň osm a půl hodiny, tak proč nebojovat někdy proti nim (pokud s nimi naopak bojujete osm a půl hodiny hodiny denně, tak doporučuji hrát raději hry v režimu cooperative :) Teď se ovšem všechny populární pařby, jako je Doom, Heretic, Hexen, Quake a bůhvíco ještě, budou muset odklidit do ústraní. Přichází totiž tuzemská hra 0verkill, akční, návyková a krvavá 2D střílečka, k jejímuž hraní nepotřebujete supernadupaný grafický akcelerátor. Veškerá „grafika“ je totiž tvořena ASCII znaky v 16 barvách :)
Se skvělým nápadem přichází projekt Autojot. Není to program, ale modul pro FilterProxy (o které už zde byla řeč), který předá každou stahovanou stránku k indexaci (používá se indexer SWISH++). Pokud někdy náhodou zjistíte, že byste již navštívenou stránku rádi viděli znovu a nemůžete si ani za zlaté tele vzpomenout, jak se jmenovala či jak jste se na ní dostali, snadno ji dohledáte ve vašem privátním indexu (zatímco šance, že ji najdete třeba pomocí Altavisty je poměrně mizivá). Opravdu chytré.

Sobota 22. 7.
Ten, kdo někdy programoval v Borland Pascalu nebo C, bude zřejmě mít ještě v živé paměti funkce pro práci s textovou obrazovkou, namátkou třeba gotoxy(), textcolor() a podobné. Věřte nebo ne, stejné funkce můžete používat i při programování v Linuxu a jako bonus bude takto napsaný program přenositelný i na Win32. Postará se o to knihovna Terminality. Mimochodem, součástí je i několik demíček, které jsou opravdu docela pěkné.
Server HTMLHelp.com nabízí mimo jiné online validátor HTML kódu poměrně slušné kvality. Novinkou je ale možnost stáhnout si tentýž validační program a používat ho lokálně na svém počítači. Program Offline HTMLHelp.com Validator je napsán v Perlu a je šířen pod stejnou licencí plus pro případné zájemce i pod GPL.
Knihovna s poetickým názvem Panda je určena pro dynamické generování PDF dokumentů. Knihovna je zatím v plenkách, ale s textem si poradí. V budoucnu by měla přibýt samozřejmě i podpora obrázků. Použití knihovny je poměrně jednoduché, neboť funkce se snaží být co nejpodobnější standardním IO funkcím ze stdio.h (open == pdfopen, apod.).

Pátek 21. 7.
Je stále dost programátorů, kteří neradi používají při psaní GUI aplikací RAD nástroje, návrháře formulářů a podobné skopičiny. I přesto jsou určité kroky, které se opakují vždy s každou aplikací, a které není od věci nějak zautomatizovat. A právě k tomu slouží program KAppTemplate. Jeho název už asi prozrazuje, k čemu je určen. Stačí mu zadat pár vstupních parametrů a KAppTemplate vygeneruje kompletní zdrojové kódy „prázdné“ aplikace pro KDE2. Velkým plus je i to, že se program postará i o šablony pro autoconf/automake, takže po vygenerování by mělo v podstatě stačit použít „svatou trojici“ ./configure, make, make install a máte hotovou a zkompilovanou prázdnou aplikaci :)
Piranha je systém, který dodává Red Hat ve svém high-availability serverovém systému. Piranha je šířena pod licencí GPL, takže ji lze použít i pro jiné systémy. Zvládá jak zálohování primárního serveru (failover, dva uzly), tak rozdělování zátěže (load balancing, neomezený počet uzlů), k čemuž využívá Linux Virtual Server. Samozřejmostí by měla být u podobných systémů kontrola funkčnosti uzlů (heartbeat) a Piranha není výjimkou.
Pod názvem SpaceBall 3000 se ukrývá pokus o vytvoření herního projektu podobného například velmi populárnímu Diablu. Zatím je projekt spíše v plenkách.
A zase jsem našel jednu specialitku. Chcete si pořídit vlastní pasivní sonar? Pak vás možná zaujme projekt HASAS, neboli HydroAcoustic Signal Analysis System. Ten totiž umožňuje pro analýzu signálu používat PC (Win32, BeOS, un*xy) se zvukovou kartou. Mimo jiné dokáže generovat 2D i 3D obrazy, ukládat je či tisknout, generovat 2D i 3D audio signál, ukládat jej, případně i tvořit CD disky s nahrávkami. V sekci Hardware najdete i doporučené konfigurace pro různé situace, od malé rybářské loďky až po velké výzkumné stanice.

Čtvrtek 20. 7.
Jednou z možností, jak zrealizovat třeba jednoduchý news server může být modul mod_xslt pro Apache. Jak název prozrazuje, slouží tento modul k převodu XML dokumentů do HTML pomocí XSLT šablon (jako procesor se používá projekt Sablotron). Pokud si vyžádáte nějaký dokument, server si z jeho jména odvodí název zdrojového XML dokumentu, zjistí z něj, jakou XSLT šablonu má aplikovat a po provedení transformace odešle výsledek zpět klientovi. Takto lze například velmi snadno udržovat design celého webu, neboť změnou šablony (nebo šablon) okamžitě dosáhnete změny vzhledu všech souvisejících stránek.
WAP Mailbox je již druhý Open Source WAPový emailový klient, tentokrát pro POP3 protokol. Readme říká, že program pracuje v read-only režimu, což může znamenat buď, že zprávy nelze mazat, nebo že je nelze posílat (nebo obojí :). K provozu budete potřebovat PHP 4.0 nebo vyšší.
Kombinace HTML a částí kódu, jak jej používá PHP má svoje klady i zápory. Mezi zápory patří možná i zvýšení nepřehlednosti programu a proto vzniklo několik systémů, které se snaží opět kód a HTML oddělit (to jsou paradoxy :) Jedním z nich je i Fast Template, pro nějž existuje rozšiřující module (či jak to nazvat) jménem Fast Template with caching. Ten zajišťuje, aby se zbytečně neaplikovaly opakovaně stejné šablony a výsledky vrací z cache. To může u velmi vytížených serverů znamenat velkou úsporu procesorového času.

root_podpora

Středa 19. 7.
ImPress je WYSIWYG vektorový editor napsaný v Tcl/Tk. Nelze od něj očekávat nějaké zázraky, ale pro mnoho účelů by měl zcela postačovat. Podporuje všechny běžné primitivy (čáry, elipsy, obdélníky, polygony, …), ruční kreslení, šipky na koncích čar, text, to vše samozřejmě v různých barvách. Objekty lze natáčet, zmenšovat a zvětšovat, přemísťovat a duplikovat. Lze vytvářet skupiny objektů, používat pravítka a vodící čáry atd. Program umí tisknout (postscript).
Grafickému formátu PNG se vyčítalo, že nemůže nahradit GIF, dokud nebude podporovat animace. Ve skutečnosti existuje rozšíření PNG, které právě animování umožňuje. Zove se MNG (Multiple-image Network Graphics) a objevují se i aplikace, které jej podporují – prohlížeče mezi nimi pohříchu nejsou (nevím, jak Mozilla, nezkoušel jsem). V každém případě lze nyní MNG generovat i dynamicky pomocí Open Source knihovny libmng. Autor slibuje, že pokud se kamarádíte s knihovnou libpng, nebude vám rozhraní libmng dělat přílišné potíže.
Pod názvem RFB proxy se skrývá nástroj, který zaznamenává všechny události, které vznikají při použití VNC. S pomocí dalšího programu jménem rfbplaymacro a obyčejného VNC klienta pak můžete uložené sezení opět „přehrát“. Tak lze například zautomatizovat a načasovat některé úkony.
Open Source hra Save And Rescue mě zaujala tím, že je zcela nemilitantní. Náplní je totiž létání se záchrannou helikoptérou a vyhledávání (a samozřejmě zachraňování) obětí různých nehod a katastrof. Více jsem se bohužel o hře samotné nedozvěděl a na vyzkoušení nemám potřebný hardware. Grafika je totiž kompletně 3D (a je docela pěkná), jak jinak, než na bázi OpenGL.

A to je pro dnešek vše…

Byl pro vás článek přínosný?