Michal Čihař - Archives

IDN - hračka nebo praktická věc?

Je sice pěkné, že můžu mít doménu se všemi nabodeníčky, ale má čihař.com vůbec smysl? Jednak se najde dost programů, které si s IDN ještě nerozumí, takže někteří uživatelé se na tuto doménu vůbec nedostanou, pak ale stejně všichni jsou zvyklí zadávat domény bez nabodeníček. Nebo aspoň všichni v mém okolí :-).

Přiznám se bez mučení, že doménu jsem zaregistroval hlavně abych si vyzkoušel jaké problémy s IDN můžou nastat. Pak jsem taky nechtěl, aby mi to náhodou nějaký spekulant nekoupil :-).

Jak jste na tom vy s IDN?

Blog split detected

Tak už došlo na to o čem jsem dříve psal . Z jednoho blogu se stávají dva. Jaké bude rozdělení příspěvků a kolik jich bude v obou nedokážu odhadnout, ale určitě drobné postřehy a upozornění týkající se mých programů (kterých zde stejně moc nebylo) budou pouze v angličitě (stejně většina publika umí anglicky). Kdo tedy nechce o nic přijít, nechť se podívá na blog.cihar.com , případně do své čtečky přidá RSS .

A až Leoš napíše podporu pro vlastní RSS, tak se zápisky budou objevovat i tady :-).

V čem blogovat?

Odpověď překvapivě nebude abclinuxu.cz, přestože tu tento zápis je :-). Blog tu už používám nějaký ten pátek a kromě mnoha nevýhod to přináší i pár výhod. Mezi výhody určitě patří to, že se člověk nemusí starat o běh systému a že je zaručená poměrně slušná návštěvnost (dokud ho většina lidí na portálu nebude blokovat). Nevýhody vyplývají z webového prostředí (editace v textarea není nic moc), strachu portálu o zisky (nekompletní RSS) a omezenosti publika (anglicky mluvící člověk sem nezabloudí).

Nějak jsem dospěl k názoru, že už se v mém případě nevýhody a výhody tak nějak vyrovnaly a je na čase s tím něco udělat. To něco znamená založit anglicky psaný blog ve vlastní režii. Prozatím to neznamená kompletní zrušení tohoto blogu. jen jeho omezení. Nepředpokládám, že by moje řeči někomu zásadně chyběly :-).

Zatím zbývá vyřešit otázku v čem psát. Požadavků mám jenom pár, tak to snad nebude moc těžké:

  • napsané v jazyce kterému rozumím (Python, PHP, shell)
  • každý příspěvek může být ve více kategoriích
  • RSS pro kategorie
  • generovat validní XHTML
  • nějaký jednoduchý markup pro zápisy (bez nutnosti používat html)
  • rozumná editace textů (nejlépe v mém oblíbeném editoru vim)

Zatím se zdá že všemu vyhovuje NanoBlogger , což je hromádka shellovských skriptů, které umí vše co od blogu chci. Ještě si s ním chvíli pohraju než výsledek pustím do světa, ale zatím mi vyhovuje. Ovšem jestli někdo znáte něco lepšího, tak rychle poraďte :-).

phpMyAdmin a ods

Nebojte se, nejedná se o vyjádření podpory politické straně :-). Jenom jsem se konečně dokopal k tomu přečíst si něco o OASIS Open Document formátu a naimplementovat export (prozatím spreadsheet) do phpMyAdmina.

Z toho, že je to věc kterou se chystám napsat už asi rok a půl, je vidět, že se mi do toho nijak moc nechtělo. Nějak jsem byl vždy odrazen specifikací, tedy hlavně jejím rozsahem. Nakonec jsem se jejímu čtení vyhnul a použil jenom pár stučnějších návodů. Teď jenom doufám, že to co z phpMyAdmina vypadne. jí odpovídá. OpenOffice.org to zpracují správně, ale to se mi jako test moc nelíbí. Asi by to chtělo najít nějaký OpenDocumentlint :-).

Můj free software 8. - Wammu

Tak a je tu poslední díl pojednávající o programech s trochu kryptickými a podobnými jmény. Poslední na řadu přišlo Wammu , přestože je z nich asi pro většinu uživatelů nejpoužitelnější.

Přestože jsem velmi dlouho vybíral, v čem toto GUI psát, dnes této volby lituji. Ne že by wxPython byla vyloženě špatná věc, ale nekompatibilita různých verzí, které se vyskytují v různých distribucích je až neuvěřitelná. To je umocněno tím, že se nejedná o nijak moc využívaný framework, takže v mnoha distribucích je značně zastaralá verze (nebo alespoň naprosto nemožně zkompilovaná, zdravíme Fedoru). Z toho důvodu jsem musel mnohem víc energie věnovat na různé obezličky, abych zajistil kompatibilitu, místo vývoje nových funkcí, které bych určitě uvítal nejenom já.

Kromě nějaké základní práce s kontakty, kalendářem, úkoly a zprávami, umí program také zálohovat, a to hned do několika formátů souborů. Zprávy si můžete nahrát třeba na IMAP4 server, což se na zálohování celkem hodí, hlavně je k nim pak přístup odkudkoliv (pokud mobil umí IMAP4, tak i z něj :-)).

V současné době moc nových věci nepřibývá, projekt tak trochu vyčkává na to, až se dostatečně naštvu a přepíšu GUI do PyGTK. Nějaké návrhy už mám, ale jak dlouho to bude trvat nikdo netuší :-).

Průnik je problém image?

Jistě už jste zaregistrovali informace o průniku do slovenského NBÚ . Použitá hesla vypovídají cosi o neschopnosti administrátorů, nebo aspoň z mého pohledu ano. Nicméně bývalý (netuším proč, tolik dění na Slovensku nesleduji) šéf NBÚ trvdí, že je to spíš problém image než bezpečnosti . Takže asi celý NBÚ bude spíš otázka image a ne bezpečnosti ;-).

A přestaňte tu už s těma politickýma kydama, kdo v tom má hledat něco trochu zajímavého?

Proč nemám rád poštu?

Proč mě vždycky pošta dokáže naštvat? Na to jak jí nevyužívám mi to přijde až moc často. Jediné věci které mi jejím prostřednictvím chodí je výpis z účtu (ne že bych na to trval, ale pro zrušení bych asi musel na pobočku, takže to je odloženo až tam budu muset z jiného důvodu) a dva předplacené časopisy.

S předplatným se dnes pošta opět vyznamenala. To že mi chodí až s dvoutýdením spožděním už považuji za normální a až tak mi to nevadí. Ale to že mi časopis prostě pohodí před dveře bytu mi přijde už docela jako nehoráznost. Aspoň až mi příště něco vůbec nedorazí, budu vědět proč.

Můj free software 7. - python-gammu

Tento zápisek bude trochu stručnější. Nevím moc co o tomto lepidlu mezi Pythonem a Gammu napsat. Prostě jsem se rozhodl psát GUI v Pythonu, protože se mi tento jazyk líbí a píše se mi v něm dobře, tak vznikla nutnost vytvořit tuto mezivrstvu.

Při psaní šlo v podstatě jenom o implementační detaily, protože základ API byl jasný – něchtěl jsem se moc odlišit od libGammu. Jediné zásadní rozhodnutí (a dodnes nejsem přesvědčen jestli bylo správné nebo špatné) bylo ukládání všech dat do slovníků. Hlavně kvůli jednodušší implementaci, ale nakonec se to ukázalo být poměrně praktické i pro použití v programu.

Možná si kladete otázku proč jsem nepoužil swig nebo jiný generátor rozhraní. Asi to je jen mojí neschopností, ale opravdu jsem nepřišel na to, jak zabalit volání libGammu pomocí swigu tak, aby to bylo méně práce než to napsat ručně.

A na závěr jedna ukázka jak snadno se to dá použít :-).

 import gammu

sm = gammu.StateMachine()
sm.ReadConfig()
sm.Init()

message = {
    'Text': 'python-gammu testing message', 
    'SMSC': {'Location': 1}, 
    'Number': '123456789',
}

sm.SendSMS(message)

Můj free software 6. - Gammu

No už se pomalu dostáváme do současnosti :-). Po dopsání KAlcatelu do relativně použitelného stavu jsem si začal uvědomovat, že aplikace pracující pouze s jedním typem telefonu, která je nerozšiřitelná, nemá moc velkou budoucnost. Tak sem se koncem roku 2002 začal porozhlížet po něčem obecnějším.V té době (a IMHO to tak stále je) připadaly v úvahu asi jeno Gammu (tehdy ještě MyGnokii) a Gnokii. Pak ještě existuje GSMLib, tam ale není zaměřen na nic jiného než AT příkazy a rozšiřitelnost je problematická.

Po vyzkoušení obou projektů a zběžném prozkoumání zdrojáků jsem se rozhodl pro MyGnokii. Kromě toho, že se na rozdíl od Gnokii rovnou komunikovalo s mým telefonem, rozhodlo interní používání unicode. Dnes s odstupem času pořád nejsem schopný říci, který z projektů je vnitřně uspořádán lépe. Gnokii má určitě výhodu ve stabilnějším API, především s ohledem na implementaci různých funkcí a předávání parametrů. Gammu je zase o něco jednodušší na používání díky předávání jen těch parametrů, které budou zpracovány (u Gnokii se vždy předává struktura obsahující pointery na všechno možné) a díky internímu unicode nejsou problémy s nabodeníčky.

Po pár prvních patchích jsem Marcina přesvědčil, že MyGnokii není nejlepší název a navrhl Gammu, které se kupodivu ujalo :-). Pak už šel vývoj poměrně rychle a kromě drobných i větších úprav pro AT kompatibilní telefony přibyla koncem roku první verze podpory pro nativní protokol Alcatelů.

Od té doby už v podstatě jenom udržuji co jsem napsal a občas implementuji nějakou drobnost, která mě na mailing listu zaujme. Většina patchů jsou však opravy různých obskurních chyb, které se projeví při používání z Wammu.

Nvidia a suspend do paměti

Už jsem ani nevěřil, že bude rozhození framebufferu po suspendu do paměti někdy opraveno, ale zdá se, že poslední ovladače to opravují. Takže konečně můžu po obnovení pracovat i na konzoli.

A nějak nechápu proč s touto verzí mají lidi tolik problémů, kromě fungující konzole jsem si žádné změny nevšiml. Teď jenom doufám, že nechválím nvidii zbytečně a oprava není způsobena přechodem na kernel 2.6.16 :-). No co hlavně že to je opraveno.