Hlavní navigace

Softwarová sklizeň (20. 8. 2008)

Miroslav Suchý

Oblíbená sonda do světa (převážně) otevřeného software. Dneska si povíme, co je to perceptuální hashování, připomeneme si relační algebru a ukážeme si paralelní bunzip2. Pak se chvíli podíváme na hry. Jednak na gamebooky, a pak na to, jak si udělat vlastní retro hru. Na závěr si ukážeme, jak schovat data do mp3 souborů. A hádejte, jestlipak dneska bude blbinka?

pHash

pHash je implementací perceptuálních hashovacích algoritmů. U klasického hashování (MD5, SHA1) dojde při malé změně na vstupu k dramatickému rozdílu na výstupu. Perceptuální hashování má ovšem opačný požadavek: Aby drobná změna na vstupu vyvolala jenom nepatrnou změnu na výstupu. Vstupní data nejsou tedy brána jako proud bytů, ale jako celistvé objekty. Obrázek, který je otočen o 90 stupňů nebo obrázek, který byl otitulkován, bude mít velmi podobný fingerprint jako obrázek původní. Perceptuální hashe není vhodné používat pro bezpečností aplikace. Ale je vhodné je použít jako vyhledávací engine pro obrázky, nebo vyhledávání chráněného obsahu („Najdi mi obrázek podobný tomuto.“). pHash o sobě tvrdí, že je „kolekcí“ různých algoritmů, ale já jsem si všiml jenom algoritmu pro hashování obrázků. Je jasné, že pro hashování zvuku nebo videa bude asi nutné zvolit jiné algoritmy. Jestli se v tomto programu objeví časem, je otázkou.

http://www.phash­.org/, 0.1, GPLv3

Relational

Relational je skvělý nástroj na výuku relační algebry. Ta je stále základním kamenem pro výuku relačních jazyků, ale je pravda, že demonstrace některých operací je únavná. Aby demonstrace za něco stála, musí relace obsahovat několik n-tic a ty musí mít alespoň dva atributy, ale raději více. A to už vyžaduje hodně křídy a/nebo hodně mazání a přepisování a mnoho příkladů tak nestihnete projít. Proto mě zaujal program Relational, který umí načíst relaci z textového souboru a poskytuje krásné GUI, kde můžete psát dotazy v relační algebře a okamžitě je vyhodnocovat nad načtenou relací. To, že program poskytuje pythoní knihovnu pro práci s relační algebrou a umí konvertovat dotaz napsaný v relační algebře do pythonu, už beru jenom jako příjemný bonus.

Relational

http://galile­o.dmi.unict.it/wi­ki/relational/, 0.5, GPLv3

Lbunzip2

Lbunzip2 je paralelní implentací bunzip2 nepoužívající systémové volání lseek(). Co to znamená? Jelikož nepoužívá lseek(), tak může fungovat jako filtr (čte data ze STDIN a posílá na STDOUT) – to většina paralelních bunzip2 implementací neumí. A jelikož je paralelní, tak můžete efektivně využívat všechna jádra vašeho procesoru a snížit tak čas dekomprese skoro lineárně s počtem zapojených jader.

Lbunzip2

http://phptes­t11.atw.hu/, 0.01, GPLv3

The Gamebook Engine

Pamatujete si někdo ještě na gamebooky? Ať už se jedná o edici Lone Wolf nebo Vyber si vlastní dobrodružství? Ty knížky byly populární v devadesátých letech. Jejich děj nebyl lineární a v některých místech jste se mohli rozhodnout za hlavního hrdinu. Vypadalo to asi takto: Chceš-li vědět, co je v pouzdru, pokračuj na straně 84. Jestliže ses rozhodl požádat o radu profesora Burnse, pokračuj na straně 110. (citováno z knihy Vetřelci z nitra Země). Na psaní takovýchto knih existuje Hyena gamebook formát a k jeho interpretaci můžete použít The Gamebook Engine. Kromě textu umí zobrazovat i obrázky a do textu můžete vkládat i lua skripty, takže některé volby můžou být dostupné jenom za určitých podmínek (našli jste klíč, mluvili jste s určitým člověkem). Dokonce si můžete ukládat a načítat své pozice ve hře. Hra – to je fakt – už není ani tak gamebook, jako spíše textová adventura.

http://www.fre­egameengines.or­g/gamebook-engine/, 0.1.3, GPL

O.H.R.RPG.C.E

Official Hamster Republic Role Playing Game Construction Engine (O.H.R.RPG.C.E) je nástroj pro tvorbu retro her (rozuměj z doby 16 bitových počítačů). Jako demonstraci obsahuje hru „Vikings of Midgard“. Psaní hry je velmi jednoduché (pokud máte alespoň potuchu o procedurálním programování a víte, co asi může dělat příkaz if) a tak jediné, co budete potřebovat, je: umět kreslit – nástroj na kreslení spritů je součástí O.H.R.RPG.C.E – a v neposlední řadě mít talent a trpělivost na psaní takových her.

RPG

http://hamste­rrepublic.com/oh­rrpgce/index.php/Ma­in_Page.html, 2008–08–16, GPLv2

Mp3nema

MP3nema vám umožní ukládat a číst informace, které jsou ukryty mezi jednotlivými bloky dat v mp3 proudu. Mezi těmito bloky můžou být libovolná data (ačkoliv je doporučeno je předtím uencodovat) a mp3 přehrávače tyto data přeskakují (např. Shoutcast takto tuším ukládá své metadata), takže byste neměli mít problém výsledný mp3 soubor přehrát.

http://www.757lab­s.com/projects/mp3ne­ma/, 0.01, GPLv3

Blbinka

Statistika: jak roste Linux (a hlavně jeho vývojáři).

Našli jste v článku chybu?
Lupa.cz: Kdo pochopí vtip, může jít do ČT vyvíjet weby

Kdo pochopí vtip, může jít do ČT vyvíjet weby

Vitalia.cz: Vychytané vály a válečky na vánoční cukroví

Vychytané vály a válečky na vánoční cukroví

Měšec.cz: Zdravotní a sociální pojištění 2017: Připlatíte

Zdravotní a sociální pojištění 2017: Připlatíte

DigiZone.cz: ČRo rozšiřuje DAB do Berouna

ČRo rozšiřuje DAB do Berouna

Měšec.cz: Komu musí od ledna zvýšit mzdu?

Komu musí od ledna zvýšit mzdu?

Podnikatel.cz: Chtějte údaje k dani z nemovitostí do mailu

Chtějte údaje k dani z nemovitostí do mailu

Měšec.cz: U levneELEKTRO.cz už reklamaci nevyřídíte

U levneELEKTRO.cz už reklamaci nevyřídíte

Vitalia.cz: Jmenuje se Janina a žije bez cukru

Jmenuje se Janina a žije bez cukru

Vitalia.cz: Pamlsková vyhláška bude platit jen na základkách

Pamlsková vyhláška bude platit jen na základkách

Vitalia.cz: Mondelez stahuje rizikovou čokoládu Milka

Mondelez stahuje rizikovou čokoládu Milka

Podnikatel.cz: Snížení DPH na 15 % se netýká všech

Snížení DPH na 15 % se netýká všech

Měšec.cz: Kdy vám stát dá na stěhování 50 000 Kč?

Kdy vám stát dá na stěhování 50 000 Kč?

Vitalia.cz: Proč vás každý zubař posílá na dentální hygienu

Proč vás každý zubař posílá na dentální hygienu

Vitalia.cz: Paštiky plné masa ho zatím neuživí

Paštiky plné masa ho zatím neuživí

Lupa.cz: Teletext je „internetem hipsterů“

Teletext je „internetem hipsterů“

Měšec.cz: Stavební spoření: alternativa i pro seniory

Stavební spoření: alternativa i pro seniory

Podnikatel.cz: Udávání a účtenková loterie, hloupá komedie

Udávání a účtenková loterie, hloupá komedie

Lupa.cz: Propustili je z Avastu, už po nich sahá ESET

Propustili je z Avastu, už po nich sahá ESET

Lupa.cz: Co se dá měřit přes Internet věcí

Co se dá měřit přes Internet věcí

Měšec.cz: mBank cenzuruje, zrušila mFórum

mBank cenzuruje, zrušila mFórum