úterý 2. srpna 2011

... linux monitoring with nmon

When using my Linux desktop things sometimes turn bad. Disk spins, CPU maxed everything's so slow.
WTF is happening to my system?
A lot of utilities will give me an overview: top, htop, iotop etc.

nmon to rule them all, nmon to find them,
nmon to bring them all and in the darkness bind them

Nmon is a Swiss knife when you want to know what's happening under the hood of your PreCious ...

Nmon is also able to collect data for later processing.

středa 27. července 2011

... e-kniha ...poprvé legálně

... je to tak. Po mnoha knihách přečtených z piratských kopií jsem právě objednal první e-knihu. Abych z toho měl úplně dobrý pocit, představoval bych si cenu ještě o pár korun nižší, než je 160Kč. Kolem stovky třeba baťovských 99Kč by se mi líbilo.

Jelikož nakupuji na palmknihy.cz poprvé, ještě musím počkat, než mi přijde aktivační kód poštou. Ano tou papírovou. Prozatím mi jde stáhnout první třetina knihy.

Jsem zvědav, jestli za peníze bude lepší formátování, které je v případě pirátských eknih žalostné.

čtvrtek 21. července 2011

... ranní šálek zloby

Albert, akce, kola za půl darma. Asiat s plným košíkem "koly v akci". Pokladní s nelíčenou radostí posílá potenciálního platícího zákazníka do háje. Kolu si prý může koupit nejvýše po 12 kusech: "12 kusů na osobu, musíte to vyložit, tady to máte napsané na letáku" říká tónem, který nezastírá zášť. Zmatený muž s košíkem plným pet-lahví couvá prodírá se frontou zpět mezi regály. Mezi pokladními se rozvine debata na téma 'no co oni si myslí, nakoupí to tu za desetikorunu a pak to bude támhle za zatáčkou prodávat za pade, hrůza'. Soulad názoru napříč pokladnami a štamgasti ve frontě zachmuřeně pokyvují. Vlna podpory okolostojících a spolupracujících dodá pokladní sílu: "A stravenky taky neberem, jenom hotovost" křičí do vzdalujících se mužových zad s úšklebkem a nadšená svým totálním vítězstvím za mužem vyplázne jazyk. Debatu s kolegyněmi končí větou:"No ty vo'e maj to přece v tom letáku napsaný, ne?"

... přešla mě chuť na snídani částečně z toho jedu, co vyvrhla pokladní ze svých útrob a částečně proto, že jsem sice nepokyvoval, nemručel souhlasně, ale neřekl jsem ani slovo. ... srabe, zní mi v hlavě, když mi automat míchá kávu.

...exot

Chodím po Praze v pláštěnce. Já a lidé, co používají hůl. Kolemjdouci se otáčejí jen za mnou a me je sucho.

úterý 12. července 2011

...install Fedore 15 on Dell D630 - wifi

All installed in basic distro except the firmware. Firmware can be installed using following link:
http://flakrat.blogspot.com/2010/05/how-to-enable-broadcom-bcm4312-wifi-in.html

pondělí 11. července 2011

.. čtyři dohody

... v podání Jaroslava Duška úžasné

čtvrtek 7. července 2011

... Jeseníky a nevyzpytatelné počasí

Totéž místo (přečerpávací elektrárna Dlouhé Stráně horní nádrž) při dvou návštěvách:


pátek 1. července 2011

... realityshow

... konec pohody domácí kanceláře

Domácí kancelář je trend. Homeoffice ... Jsem trendy a v domácí kanceláři občas pracuji. Do včerejška byla klidnějším místem, než náš firemní openspace. Dneska to skončilo. Začaly totiž prázdniny. Děti okupují domácí zábavní centrum, občas se ozývá dunění hudby, občas dunění výbuchů v nějaké střílečce a když se nic neozývá, znervozním a mám nutkání se podívat, jakou že lumpárnu zase vymýšlejí. Příjemně překvapili. Žádná lupmárna. Zmizeli ven...

... dopolední pracovnědenní klid se ale do bytu vrátí zase až v září.

pátek 17. června 2011

... městská policie pomáhá

Bloudím po Střešovicích a jedna uzavírka za druhou mě mezi vilkami vedou téměř jistě úplně špatným směrem. Těch uzavírek z důvodu jakýchsi stavebních prací je asi víc, než se dá na prstech spočítat. Nakonec nalézám uličku, která vede "mým směrem". Jelikož jsem už v časové tísní, vjíždím do uličky i přesto, že vjezd zdobí značka "Průjezd zakázán".

Pomalu projíždím uličkou když v dálce zahlédnu zářící vesty policistů. Vím, že páchám přestupek. Přestupek z donucení. Zastavuji uprostřed ulice a parkuji. Vypnu motor a obejdu auto. Pak jedu dál a policista na konci ulice se na mě vrhá jako sup na mršinu.

Nepřekvapuje mě to a tak mám tentokrát odpověď nachystanou (nečekané situace). Chyba lávky. Dle předchozích mnoha setkání s policií jsem již připraven na standardní postup. Stahuji okénko a očekávám základní policajtskou frázi: "Dobrý den, pane řidiči, předložte ... atd.".
Policista se nakloní do okénka a tónem obvykle používaným ve vztahu dospělý/káraně dítě pronese: "A vy tady děláte co!?"

Takovou neomalenost a aroganci jsem nečekal a veškerá moje příprava je v háji. Bez dalšího jen procedím, že jsem byl támhle na návštěvě. To pro změnu vyvede z konceptu policistu (1:1). Stojí, kouká a až k mým uším doléhá rachocení myšlenkového soukolí, které se ztěžka vyrovnává s nečekanou situací. Jevil jsem se policistovi jako snadná kořist a najednou mu unikám mezi prsty. Složitý výpočet v policistově hlavě doběhl zdárně ke konci a vyhodnotil mě jako ztracený případ slovy: "Tak já vám to tedy budu pro dnešek věřit!".

Odjíždím a v zrcátku sleduji kolegy řidiče, kteří opravdu byli překvapeni a svůj dnešní boj prohráli. Mě v hlavě vězí všechny možné odpovědi a nakonec vítězí následující:
Policista: A vy tu děláte co!?
Já: Dobrý den, pane policisto, co pro vás mohu udělat?

Přemýšlím, zda morální hledisko převáží ručičku váhy spíše na stranu mou "únik oběti buzerace" nebo na stranu policie "únik vytáčejícího se grázla". Sám se samozřejmě stojím na své straně (kdo už také jiný). Průjezd celou čtvrtí je komplikovaný. Mnoho zavřených ulic a pro neznalého bludiště. Jaké měla policie možnosti situaci řešit? Dočasně změnit dopravní značení a po dobu uzavírek umožnit průjezd jednou z mála nerozkopaných ulic, vylepšit dopravní značení pro usnadnění průjezdu.

Místo toho pokutování na konci jedné z mála průjezdných ulic.

... kurz adekvatního jednání v nečekaných situacích

Mám problém. Když se vyskytne nečekaná situace, neumím reagovat. Mám teď na mysli především nečekané převážne verbální interakce s lidmi. Situace: n2kdo někde na mě nečekaně vybafne. Mě napadá miliarda trefných, vtipných, účinných a vubec cool odpovědí, jak daného člověka odpálkovat, pobavit, potěšit, naštvat. Problém je v tom, že ty odpovědi mě napadají v průběhu následujícího dne či dvou. V okamžiku, kdy je potřebuji, mám hlavu úplně vymetenou a většinou řeknu úplnou blbost a "lepším" případě se zakoktám.

Celá věc mi značně komplikuje mou životní roli prudiče a šťoury.

Ovšem o to víc šťourám se zpožděním.

... a kde všude nám letos maturovali

Lokality, kde se prováděla maturitní zkouška - dohledový systém maturitních digitalizačních pracovišť

neděle 12. června 2011

Spring Tool Suite 2.7.0M1 depencies problem in Grails project

After transfering my project from one computer to the other I have started with fresh STS installation. When I have tried to open my Grails project every grails command failed due to some strange class not found exception. I reviewed the project and found Grails Dependencies uninitialized. Even if I tried to Refresh Dependencies using Grails tools this command failed the same way as every previous.
After some more investigation I focused on my user profile Grails cache. When I compared the old project and the newly created one grails cache the directories were different.
I deleted the old project grails cache in my profile ($HOME/.grails/project-name) and invoked Refresh dependencies again. Finally it worked.

I hope this can help some of you. Happy grailing.

úterý 1. února 2011

... děkujeme odcházíme

Dnes odpočet na stránkách lékařské odborářské kampaně ukazuje 27 dnů do odchodu nemocničních lékařů z důvodu jejich platového nedocenění. Musím říci, že s lékaři do jisté míry sympatizuji. Forma protestu a zejména jeho načasování už se mi tolik nelíbí. Že v systému péče je cosi shnilé mi ukázala následující paradoxní situace.

Shell, Jižní spojka. Rádio hlásí, že ministr zdravotnictví právě přislíbil, že v systému veřejného zdravotního pojištění najde 2 miliardy korun na vylepšení platové situace lékařů. Vystupuji z auta a tankuji. Vedle mě zastaví krásné bílé BMW X6. Auto bratru za půldruhého milionu. Za oknem mělo cedulku: "LÉKAŘ". To jsou paradoxy.



Tak si říkám, jestli po zachrastění prasátkem zdravotnického systému bude BMW spíš smutnější, ale někteří mladí lékaři budou mít o klidnější spaní s hypoteční smlouvou pod polštářem, nebo jestli BMW zaplesá a mladé lékaře bude hypoteční smlouva tlačit ve spánku stejně jako dosud.

... tramvajový thriller

Po příjemném posezení s bývalými kolegy jsem se vracel domů noční tramvají. Příběh, který se mi v tramvaji odehrával před očima či lépe řečeno ušima, stojí za zaznamenání. V tramvaji samotné příjemně hřálo topení. Venku mrzlo, až praštělo. Na sedadle přes uličku seděl mladík. Sympatický avšak ve stavu, který měl do střízlivosti daleko. U ucha telefon a probíhala konverzace, z níž jsem mohl zaznamenat pouze jednu stranu:
"... a kde teda si káámo?"
"... jak nevíš? Tak najdi nějakou zastávku."
"... to je jedno, že to tam neznáš, já to taky neznám. Káámo, ja jsem se probudil na konečný a tramvaják mě vyhodil na mráz. Sídliště Řepy, káámo, konec světa."
"... no a na jaký jsi teda zastávce? ... co že? jaká dálnice?"
"... prostě najdi ňákou zastávku a řekni mi, kde seš a já pro tebe dojedu, kámo"
"... káámo ... slyšíš mě? kááámo !?"

Sbírá telefon, který mu upadl na zem a snaží se vytočit číslo, ale trvá mu to.

"... kámo .. si tam?"
"... no to teda je mráz kure*skej, snad 20 stupňů. Si dej ruce do kapes, kámo."
"... a zvládněš to? no to mi neřikej, že by te mohla rozložit jedna pražská zima, káámo, dej siruce do kapes, káámo"
"... kámo ? si oukej káámo?"
"... káámo ... tak najdi ňákou zastávku a přečti mi, kde seš."
"... no a nemáš na telefonu gepesku? ... nemáš si kupovat takový šmejdy, káámo"
"... jo? a jaká je to teda zastávka?"
"... no mě už neni zima, já sem v tramvaji, ale venku mrzne, kaamo, asi dvacet"
"... hej .. kámo ... slyšíš mě? ... slyšíš mě?
nějakou dobu mlčí, snaží se vytočit číslo .... dlouho se mu nedaří se dovolat
"... hej kámo si oukej? ...kámo "
"... já jsem v tramvaji, dojedu na Lazarskou, tam přesednu a pojedu na hlavák a pak vlakem domu, káámo"
"... no a v jakým čísle jedeš? ... "
vstává a rozhlíží se po vývěskách rozhlíží se a pak s ptá
".. prosimvas, co je tohle za tramvaj?"
"... já taky jedu 58 tak to jedeš dobře káámo"
uklidněn končí hovor a usedá a v zápětí usíná a tramvaj dojíždí na Lazarskou
mladík spokojeně spí ...
tramvaj dlouho stojí a čeká na rozjezd
mladík se probere .. a znovu bere telefon
"... no jo to už jsi na Andělu. Tak seď v tramvaji a dojeď na Lazarskou a pak už domu trefíš."
"... jo já jsem taky rád, že sem zase v civilizaci, sídliště řepy, taková prdel světa káámo a tramvaják mě tam vykop na konečný"
najednou se zarazí z rozhlédne
"prosimvás, co je tohle za zastávku"
dozvídá se, že Lazarská, vystřelí z tramvaje a jde hledat přestup
...
...
"... káámo to je kosa co?"
pronáší zase do telefonu, když najde svůj přestup a znovu se vrací do naší tramvaje a usedá
"... co rodina? na rodinu se vyprdni... co by mohli mít za řeči? prostě jsme slavili Vendovo mimino ..."
"... káámo .. a jsem na Václaváku, prádička, za chvilku sedím ve vlaku a za 20 minut jsem doma"

Tak snad našel ten správný vlak a jeho kamarád trefil domů Podle zpráv minulou noc nikdo v Praze nezmrzl. Zato Vendovo mimino bude zdravý jak řípa.

středa 26. ledna 2011

Můj osobní předčítač Android

Kolona. Auta se šnečím tempem posunují kupředu. Já sedím v jednom z nich. Možná si říkáte, že trpím. Očekáváte, že hladina adrenalinu stoupá kvůli stresu. Ještě nedávno byste měli pravdu. Čas je v dnešním světě příliš cenná komodita a nechat ho zbůhdarma utíkat mezi prsty jen kvůli nutnosti dopravit se z místa na místo a nepříjemné náhodě, kdy banální dopravní nehoda zastavila dopravní tepnu.
Vedle mě na sedadle leží kouzelná krabička. Mluvící kouzelná krabička. Příjemný ženský hlas mi předčítá zajímavou knihu. Čte bezvadně, srozumitelně, česky. Nemluví však skutečná žena. Hlas je syntetizovaný v krabičce a předčítá elektronickou knihu do krabičky nahranou. Tou krabičkou je telefon HTC Hero vybavený systémem Android (v mém případě froydvillain 1.7.2 tedy Android 2.2 Froyo). Základní službou OS Android je hlasová syntéza. Bohužel v základní verzi neumí česky (ukázka na konci článku). 
UPDATE 18.4.2017: Na Google Play je možné stánout aplikaci Google Text To Speech, která v aktuální verzi poprvé obsahuje podporu TTS v češtině zdarma.


Update  4.1.2017: SVOX se v posledních měsících ukazuje jako nespolehlivý zdroj, jazyky jdou i nadále kupovat, ale není možné stahnout jazyková data. Proto po nákupu okamžiťe zkontrolujte funkčnost a případně využijte možnost vrácení peněz. V tuto chvíli je ekvivalentním řešením nákup Hlas Vocalizer, kde je navíc možnost volby ze dvou hlasů.

Díky firmě SVOX a jejím mobilním řešením pro syntézu řeči je však možné Androida naučit česky mluvit během pár chvil. Pomocí Play obchodu do telefonu nainstalujte TTS engine (SVOX Classic TTS). V nastavení tohoto poskytovatele syntézy řeči aktivujte. Dále budete potřebovat český slovník pro syntézu hlasu, který si musíte koupit jako placenou aplikaci za necelé 3 dolary (a to se vyplatí, věřte mi).
Na SVOX mě navedl článek popisující instalaci tohoto TTS řešení.
UPDATE 9.1.2012:Alternativou SVOX může být řečový syntezátor Acapella
UPDATE 18.4.2017: Další placenou alternativou je Vocalizer 

Nyní už umí Android česky.

Aby mohl předčítat knihy, je ještě potřeba najít čtečku eknih s podporou hlasového výstupu. Ačkoli je čteček pro Androida mnoho, našel jsem pouze jedinou, http://www.blogger.com/img/blank.gifhttp://www.blogger.com/img/blank.gifhttp://www.blogger.com/img/blank.gifkterá umí předčítat tak, aby čtení bylo použitelné. Opět jde o program, který je třeba si koupit. Je jím Moon+ Reader Pro, přičemž právě Pro je důležité, protože v základní verzi čtečka neumí použít TTS. Tentokrát je cena necelých 5 dolarů (opět musím dodat "a to se vyplatí"). Za cenu necelých 8 dolarů (cca 160Kč) dostanete velmi kvalitní a funkční software.

UPDATE 28.3.2012: Nyní již několik dnů používám k předčítání CoolReader, který je zdarma a funguje skoro stejně dobře, jako výše zmiňovaný placený MoonReader.  Takže stačí zakoupit SVOX jazyk, CoolReader lze získat zdarma.

UPDATE 9.3.2014: A další kandidát na bezva čtečku s hlasovým výstupem. FBReader s FBReader TTS+ pluginem. To + na konci je důležité - výrobce Hyperionics a vše gratis.

Ne všechno je úplně dokonalé, existuje pár mušek. SVOX někdy dělá mezi větami příliš dlouhé pomlky. Při vypnutém displeji občas přestane číst (telefon usne?), ale to je možná způsobeno nastavením čtečky. Po ťuknutí na tlačítko rozsvěcející displej čtení pokračuje.

Po instalaci tohoto programového vybavení již můžete do telefonu nahrát svou první eknihu. Čtečka rozumí formátu epub. K jeho výrobě vám zajisté pomůže SW pro správu vaší eknihovny Calibre.

Bohužel dnes není prakticky možné zakoupit eknihu v češtině oficiálně. Když to jde (www.rajknih.cz) nutí vás prodejce využívat propritárních čteček vynucujících DRM a s Androidem jste nahraní o syntéze řeči ani nemluvě.

UPDATE 22.8.2014: Již  třetím rokem jsem spokojeným zákazníkem palmknihy.cz a někdy kosmas.cz
UPDATE 4.1.2017: Alza také není k zahození, mají většinu ebook nabídky.
No a pokud nestačí eknihy, ale občas je třeba nechat si přečíst webovou stránku, DOC, DOCX, PDF nebo kus textu z klipboardu telefonu, pak sáhnu po  Voice Aloud Read, který dokáže přečíst kde co. Stačí odpovídající text nasdílet do aplikace.

Přeji mnoho pěkných "čtenářských" zážitků.


středa 19. ledna 2011

čtvrtek 13. ledna 2011

javascript closures in ECMA script standard

When using something I have a strong need to understand things as deep as possible. I was struggling advanced javascript code using closures heavily. Almost every explanation I found was "example based". As I really need to know the internals to understand the problem I decided to dive into ECMA script specification to find parts related to closures. At first I searched ECMA-262 second edition published back in the last century (1998). Well ... It is really a history. Nothing related to or similar to closures could be found in this document. The I have tried the fifth edition published in 2009. BINGO!

No explanation of closures will follow in this post. I think the description in the spec is crystal clear and should be read by everyone who wants to understand what's going on when a nested function is used.

The shortcut for those who are curious is here: look for Clause 10.2 in the ECMAScript specification document (http://www.ecma-international.org/publications/files/ECMA-ST/ECMA-262.pdf). Its name is "Lexical enviroments". This clause describes how the javascript engine implements "the magic". Clause 13.2 is otyher usefull part describing function object instantiation.

pátek 24. prosince 2010

Encode movie for IPBOX 420S

The satellite receiver IPBOX 420S is capable to play uploaded MPEG2 files. I was trying to find correct encoder settings for a long time. Finally it is here:

#!/bin/sh
in_vidname=$1
in_subname=${in_vidname%\.*}.srt
out_name=${in_vidname%\.*}.mpeg
echo IN : $in_vidname
echo SUB: $in_subname
echo OUT: $out_name
mencoder \
-sub $in_subname -subcp utf-8 -oac mp3lame \
-subfont-autoscale 1 -nooverlapsub -subpos 70 \
-ovc lavc -of mpeg -mpegopts format=mpeg2:interleaving2 \
-vf scale=720:306,expand=720:576 \
-lavcopts threads=2:vcodec=mpeg2video:vbitrate=2200 \
-ofps 25 \
-o $out_name $in_vidname


Notes:
-oac copy - only usable for some audio (my case - mp3 was fine)
-vf scale=720:304 - find your own depending on movie size - keep aspect if possible

sobota 4. září 2010

Windows 7 sudo alternative

When there is a need to allow unprivileged user to perform certain privileged operation sudo or s-bit are possibilities on UNIX like systems. There is nothing similar on Windows.

Windows 7 (may be even Visto or XP) have EVENT bound scheduled tasks.
The task is scheduled to run under privileged account and is triggered by certain event in event log. The event can be generated by unprivileged account.

How to do it:
As privileged account:

eventcreate /T INFORMATION /L APPLICATION /SO RUN_PRIVILEGED_ACTION
/ID 1 /D "Initial event for source has to be created by privileged account"
schtasks /Create /F /RU SYSTEM /TN PrivilegedTaskRunner /TR c:\windows\system32\privileged-action.cmd
/SC ONEVENT /EC APPLICATION /MO *[System[Provider[@Name='RUN_PRIVILEGED_ACTION']]]


As unprivileged user

eventcreate /T INFORMATION /L APPLICATION
/SO RUN_PRIVILEGED_ACTION /ID 1 /D "running privileged task"