Michal Čihař - Blog Archives for Life

Česká pošta - dnes podáte, zítra ztratíme

Už jsem se České poště nechtěl nikdy věnovat, ale prostě to co jsem viděl dnes při odchodu z domu se nedá nekomentovat.

Víte jak vypadá doručování doporučených dopisů podle České pošty? Položí se na rozvaděč vedle vchodu :-).

Já nechci aby moje maily končily jako spam

Tak jsem si nějak povšimnul, že veškeré moje maily, odeslané na nejmenovaný největší český freemail, skončí jako spam. Kupodivu u jiných příjemců se tento problém nevyskytuje, tak to asi nebude úplně triviální problém a stojí za prozkoumání.

Posílám si tedy mail na jedno z nepoužívaných kont, které tam mám a v hlavičkách vidím X-Spam-Status: score=14.2 . No to je celkem slušné skóre, co za to asi může? Že by se tomu nelíbila moje adresa michal@cihar.com? Změna odesílatele na cosi@email.cz a hle, už mám jenom X-Spam-Status: score=8.2 . Bohužel pořád dost na to aby to skončilo ve spamu.

Jako první mě samozřejmě napadl nějaký obskurní blacklist, ale jakékoliv online nástroje pro kontrolu blacklistů mi potvrzují, že můj server na žádném není, tak v tom snad problém nebude. Zkouším ještě poslat mail přímo ze serveru a najednou to projde ... tak že by se kontrolovaly Received hlavičky oproti blacklistům?

Vložení Received s IP adresou přes kterou se připojuju (kabelovka, NAT pro nepočítaně lidí, takže nejspíš je na všech možných i nemožných blacklistech) opravdu způsobí onen závratný růst skóre. Proč má jediná hlavička takový vliv netuším, ale jediná moje možnost je přenastavit si mailserver aby tyto adresu maskoval.

Naštěstí nalezení návodu pro Exim je otázkou jednoho dotazu na pana Googla a změna je na světě:

 received_header_text = Received: \
  ${if def:sender_rcvhost {from ${if def:authenticated_id \
  {127.0.0.1 (helo=authenticated.user.fuck.seznam)} \
  {$sender_rcvhost}}\n\t}\
  {${if def:sender_ident \
  {from ${quote_local_part:$sender_ident} }}\
  ${if def:sender_helo_name {(helo=$sender_helo_name)\n\t}}}}\
  by $primary_hostname \
  ${if def:received_protocol {with $received_protocol}} \
  ${if def:tls_cipher {($tls_cipher)\n\t}}\
  (Exim $version_number)\n\t\
  ${if def:sender_address \
  {(envelope-from <$sender_address>)\n\t}}\
  id $message_exim_id\
  ${if def:received_for {\n\tfor $received_for}}

O tom nakolik je takovéto chování od mailserveru korektní spekulovat nebudu a názor si vytvořte sami.

Čím složitější tím lepší

Už nějakou dobu pozoruju jak se některé firmy snaží udělat ceník služeb co nejnepřehlednější, aby se v tom zákazník náhodou nemohl vyznat a aby bylo na čem ho oškubat. Česká spořitelna se touto cestou úspěšně začala ubírat zavedením Osobního účtu (znám dost lidí co na něj přešlo, všichni si mysleli že ušetří, ale opak byl pravdou) a úspěšně v tomto pokračuje zavedením Chyté karty.

Jakožto dlouholetý klient České spořitelny jsem jaksi nemohl přehlédnout reklamu na nový úžasný produkt, který se nazývá Chytrá karta a prý mi ušetří až 30%, zaplatí penzijní pojištění a kdo ví co ještě. Nu což, tak se podíváme na jejich stránky a zjistíme si nějaké informace.

Reklamních keců tam je sice požehnaně, ale nějak se mi ze stránek nepodařilo ani najít jestli se jedná o kreditní nebo debetní kartu. Jediné z čeho se dá usuzovat jsou podmínky založení, které vypadají jako podmínky pro kreditku, ale nikde to jasně napsané není. Při čtení podrobnějších podmínek už se však jasně mluví o kreditní kartě.

Výhody to jsou vskutku lákavé, co třeba vrácení rozdílu ceny pokud jinde mají to samé levnější? Po přečtení pojistných podmínek už to tak lákavě nevypadá - pokud do deseti dnů někde jinde (pokud zlevní v tom samém obchodě, máte smůlu) v kamenném obchodě (internetové obchody jsou vyloučeny) mají to samé za nižší cenu a není to zboží v akci, tak dostanere rozdíl (maximálně však 5000 Kč, celá nabídka se vztahuje na zboží do 30000 Kč). Ovšem ještě je potřeba zmínit, že se nesmí jednat o mobilní telefon, součástky nebo příslušenství motorového vozila (takže třeba autorádio) nebo lodě, stavebniny, optické výrobky (nespadá do toho i fotoaparát a videokamera?) a spoustu dalších věcí, viz všeobecné obchodní podmínky .

Pojištění poškození věci při převozu je ještě lepší - "úmyslné i neúmyslné zanedbání nebo přehlédnutí pokynů výrobce" nebo "zničení z důvodu nedbalosti" je důvodem k odmítnutí plnění. Když mi spadne televize, tak jsem nejspíš nerespektoval pokyny výrobce (určitě tam bude něco jako nepouštějte z výšky na zem) a ještě jsem to zničil svojí nedbalostí, takže nemám nárok na nic a to se vyplatí :-).

Na zbytek výhod už jsem se radši ani nedíval, předpokládám, že to bude podobně výhodné. Asi už je opravdu na čase přemigrovat k jiné bance. Jak jen najít nějakou rozumnou, to už mi asi nikdo neporadí :-).

Konečně jsem se dočkal

Při psaní minulého zápisku o fungování pošty , jsem ani nedoufal, že by mi peníze mohly dorazit v dohledné době a počítal jsem spíš s dalšími pár měsíci. Ale při pohledu na transakce na účtě jsem s překvapením zjistil, že se neuvěřitelné stalo skutečností - po pouhém půl roce mi dorazily peníze za dobírku. Teď jsem jenom zvědavý až mi přijde výsledek reklamace a jestli se z něj dozvím jestli chyba byla na české nebo slovenské straně hranic :-).

Update: Tak oznámení o výsledku reklamačního řízení jsem našel dnes ve schránce - reklamace je odůvodněná, omlouváme se Vám. Zásilka byla dodána 10. 1. 2008. Dobírková částka byla opětovně zaslána 10. 6. 2008.

Code of the day

Why the hell do I have to hit various obscure pieces of code today? Current winner is part of system-config-printer:

def monitor_session (*args):
    pass

try:
    bus = dbus.SessionBus()
    bus.add_signal_receiver (monitor_session)
except:
    print >> sys.stderr, "%s: failed to connect to session D-Bus" % \
          PROGRAM_NAME
    sys.exit (1)

If you don't know D-Bus or Python: It listens to all signals on session bus and does nothing with them. All this code causes is eating up memory and CPU cycles when there is some higher load on session bus.

PS: Maybe I miss some nice idea behind this code, please enlighten me.

Time for change, time for DebConf?

Okay I did thing I considered already for several months - I decided to quit my current job at SYSGO, make one month holidays in summer and find some new job meanwhile. So I'm looking forward to free August, which I will probably spend travelling somewhere :-).

This brought up again question whether to go or not to go to this year DebConf. The only problem with this is distance - flight to Buenos Aires will be something around 2000 USD and it means lot of money for me. I applied for sponsorship for half of the price (well I'm not sure if I can really pay the other half, but I would feel really bad for asking that much money) and let's see how it turns out. On the other side, I'd love to visit Argentina, but that would probably require much more time and money. Let's see how it all turns out, there is still time to decision...

PS: If you have some interesting job offer, just contact me at michal@cihar.com.

My cycle computer got crazy

After today short ride, I just wanted to look at how fast I was (well rather slow as my body is slowly getting used to usual travel distances). There was nothing surprising in most values, but maximal speed did really impress me:

171 km/h on bicycle

I just hope that it is really mistake of the computer and I did not really go that fast at some point ;-).

Slovenská pošta vrací úder

Když jsem popisoval problémy s posláním balíčku na Slovensko , myslel jsem, že to nejhorší už je za mnou a zbytek transakce proběhne bez problémů. Doručení tak opravdu proběhlo, adresát mi během pár dní napsal, že mu balíček v pořádku dorazil. Bohužel to samé se už nedá říct o penězích, které měly dorazit na můj účet.

Koncem února (25. 2.) (tedy po téměř dvou měsících) jsem se vydal na poštu zjistit stav. Když i oni uznali, že už to trvá dlouho, sepsali jsme reklamaci a já čekal. Česká pošta má lhůtu na vyřízení reklamace dva týdny, Slovenská měsíc a komunikace mezi nimi asi taky trvá měsíc a tak jsem se 12. 5. dočkal vyjádření.

V tom se píše, že "23. 1. 2008 byla částka připsána na účet 1188198038/0800 správně (původně chybné číslo účtu).". No říkal jsem si, že napsali na jaký účet to poslali omylem (změna oproti mému číslu není až tak velká, takže bych celkem dokázal pochopit, že se jednou někde přepsali) a čekal jsem, že mi peníze dorazí.

Dnes už jsem usoudil, že se nedočkám a vyrazil jsem si zase popovídat na poštu, jak že to tedy s mými penězi je. Pán celkem ochotně vyhrabal reklamační protokol, který dostali od Slovenské pošty a z něj jsem se konečně dozvěděl, jak to bylo - peníze nejdříve poslali na úplně jiné číslo účtu, kupodivu se netrefili do existujícího a peníze se jim vrátily. Na druhý pokus už se asi zběžně podívali, jak to číslo účtu má vypadat, a už se skoro trefili a peníze asi taky někam došly (nebo si nevšimli, že se jim vrátily).

Po prozkoumání podacího lístku pán usoudil, že to číslo je napsané dostatečně čitelně a netuší jak z toho někdo mohl vyrobit nějaké úplně jiné, ale že prý se tyto informace několikrát přepisují, tak to možná pár lidí přepsalo blbě. No nemám slov, obzvlášť za situace, kdy to tam při podávání přede mnou slečna přepisovala do počítače.

Výsledek mého dnešního výletu je tedy ten, že peníze ještě asi pár měsíců neuvidím. Česká pošta v pondělí vymyslí, jestli budou reklamovat reklamaci nebo vytvoří novou reklamaci a pošlou to na Slovensko. Pokud budou pokračovat v nastoleném tempu, tak možná v srpnu vyzkoumají, že ty peníze jsou opravdu na jiném účtě.

Na závěr nezbývá než doporučit využívání služeb těchto skvěle fungujících institucí.

Jabber server side message archiving

One of reasons to setup my own Jabber server was to be able to store history on server while having data under my control. I use Jabber clients from several locations and having history on the server seems to be logical step.

Unfortunately implementations of XEP-0136 are a bit lacking. During install I enabled mod_archive, but it was not using up to date specification and there is no client which works with it, so there was no way to view data in it. Recently I found out that rewrite of this module exists - mod_archive_odbc. It is implementing current version of XEP-0136 and is using SQL database for storage (so at least writing SQL query to grab data is not that complicated as with Mnesia database used by original version).

Migrating of current history went quite good using wswutils, at least I did not notice any problems so far. The only problem is no support from clients. The only reliable way which works for now is Jabber archive web reader, but I'd really like to see integration in Gajim, any volunteers? :-)

How to name your job?

If you don't know much about things you do, work for a small company and want to look like a professional working for a big company, then the Japanese way to do this is to write following job name on your business card:

Embedded System Technical Division
Operating System Section
Chief Engineer

When I saw this for first time, I thought this business card is some kind of joke, but not, they're real.