MyEgo.cz - Radek Hulán webzine

MyEgo.cz

home foto blogy mywindows.cz kontakt

Užitečné funkce pro PHP - díl 4.

PHP 03.09.2004

Dnes jsem řešil takový zábavný problém, automatický převod cyriliky na latinku, kvůli SEO URL, tedy aby to místo Советский Союз zcela automaticky vytvořilo sovetskij-sojuz. Fonetický přepis do latinky. A vyšla mi z toho tato funkce pro PHP, doufám, že se bude hodit i ostatním:

$global_utf=
  explode(',',
   "КВ,кв,КС,кс,А,а,Б,б,Ц,ц,Д,д,Э,Е,е,Ф,ф,Г,г,Х,х,".
   "И,и,Й,й,К,к,Л,л,М,м,Н,н,О,о,П,п,Р,р,С,с,".
   "Т,т,У,у,В,в,В,в,Ы,ы,З,з,Ч,ч,Ш,ш,Щ,щ,Ж,ж,".
   "я,ь,ю,Ю");
$global_asc=
  explode(',',
   "Q,q,X,x,A,a,B,b,C,c,D,d,E,E,e,F,f,G,g,H,".
   "h,I,i,J,j,K,k,L,l,M,m,N,n,O,o,P,p,R,r,S,".
   "s,T,t,U,u,V,v,W,w,Y,y,Z,z,Ch,ch,Sh,sh,Sht,".
   "sht,Zh,zh,ja");

function utf2ascii($title){
  global $global_utf,$global_asc;
  $i=0;
  foreach ($global_utf as $s)
   $title=
    str_replace(trim($s),trim($global_asc[$i++]),$title);
  return $title;
} 

Teď by bylo ještě zajímavé vyřešit takový fonetický přepis japonštiny, korejštiny a čínštiny :-)

Business model “zdarma a kvalitně”

Business 02.09.2004

Zdá se Vám na tom slovním spojení zdarma a kvalitně něco zvláštního? Nemělo by. Je to jedna z fungujících marketingových technik. Nabízíte-li špičkový produkt na nasyceném trhu, je velice těžké přesvědčit klienty o smyslu investice do Vašeho produktu. Ano, Váš produkt má sice o 30% více funkcí než konkurence, ano, Váš produkt používá ty nejpokrokovější technologie, nicméně, Váš klient již do konkurenčního software nedávno investoval několik (desítek) miliónů Kč, a vedoucí manažer si nemůže dovolit tuto investici odepsat.

Situace se ale změní, pokud licence Vašeho software je poskytována zdarma. IT manažer v přední bance tak má mnohem širší pole působnosti a možností, jak obhájit právě Váš produkt. Nemusí hledět na cenu, ale jen na funkčnost.

Příklad? V roce 1997 jsem založil Total Solutions, s.r.o., společnost, která se od počátku soutředila na komplexní systémy pro obchodování na Burze cenných papírů Praha. Samozřejmě šlo o online obchodní systémy, včetně napojení na SCP, RM-Systém, UNIVYC, moduly pro risk-management, asset management, exporty do bankovního účetnictví, a mnoho, mnoho dalšího. Vzhledem k mému ekonomickému vzdělání jsem měl oproti konkurenci jednu zásadní výhodu - rozuměl jsem mnohem lépe této problematice, a to z vlastní praxe.

Existoval náš špičkový produkt, pod názvem ИVAN, ale situace byla taková, že trh 100 členů BCPP byl obsazen konkurencí 4 zavedených firem českých a 3 zahraničních. Náš cíl byl přitom získat zakázky v největších bankách, členech BCPP.

Analýza ukázala, že nutným předpokladem pro proniknutí do bank jsou, kromě jiného, reference na funkčnost systému. Obrátili jsme se proto záměrně na menší členy BCPP, a dvaceti z nich nabídli systém pod názvem ИVAN zdarma. ИVAN se ukázal natolik kvalitním systémem, že 18 členů BCPP migrovalo z jejich stávajících systémů na systém ИVAN. Migrace dat, následná podpora, školení, integrace systémů, a jeho upgrade již samozřejmě zdarma nebyla.

P2P sítě a Open Source

Technologie 31.08.2004
Stolen

Začala to KaZaA, pak WinMX, a dnes tu máme řadu nových P2P protokolů a jejich variant, jako je Gnutella2, Gnutella1, eDonkey2000/eMule a BitTorrent protokol. Klienti pro tyto protokoly již nejsou komerční produkty s uzavřeným kódem a hromadou spyware a adware, ale kvalitní open source software. Některé z těchto protokolů (jako třeba BitTorrent) byly původně navrženy jako snaha o levnou a jednoduchou distribuci software (Microsoft by například takto mohl s výrazně nižšími náklady distribuovat Service Pack 2, protože čím více lidí BitTorren používá, tím se kapacita sítě a přenosu zvyšuje), nicméně, v praxi jsou používány z 99% pro sdílení hudby, videa a komerčních programů.

Je zajímavé se podívat na sourceforge.net. Nejvíce stahovaný program je eMule, tedy open source eDonkey2000 P2P klient, jedná se přitom o jeden z nejstarších P2P protokolů, na místě druhém je Azureus, což je výborný Java klient pro BitTorrent, poměrně nový protokol, na místě třetím je samotný BitTorrent, na místě čtvrtém je DC++, klient pro Direct Connect protokol pro sdílení souborů, na místě pátém je CDex, tedy program pro ripování CD do MP3 formátu (a jejich následné sdílení klienty uvedenými výše), na místě šestém je VirtualDub, tedy program pro práci s videem (včetně DVD), a na místě osmém je ABC, nativní BitTorrent klient pro Windows, a na místě devátém guliverkli (sada programů pro práci se zvukem a videem).

JEdit - spouštění

Technologie 31.08.2004

Pár lidí se ptalo na to, jak spouštět JEdit, aby měl dostupné více paměti, je to možné provést velice jednoduše, přes zvýšení heapu alokovaného Javou (místo 64 můžete zadat násobek 16, až po hodnotu 128):

"C:\Program Files\Java\j2re1.4.2_01\bin\javaw.exe"
  -mx64m 
  -jar "C:\Program Files\jEdit 4.2\jedit.jar"

Dostupný je rovněž screenshot JEditu na mém počítači.

JEdit - nejlepší programátorský editor

Technologie 31.08.2004
JEdit

JEdit, nejlepší programátorský editor, používám v práci, i doma, mám tam Solaris 8 a Linux (MDK 10), je to javovská aplikace, pod licencí GNU GPL, a je to jednoznačně nejlepší editor, co existuje.

Proč je JEdit lepší než PSPad, UltraEdit, TextPad, Dreamweaver?

  • Je psaný pod Javou, funguje tedy na mých Windows, MacOS X, Solarisu i Linuxu. Všude mám stejné prostředí.
  • Přestože je psaný pod Javou, tak je neuvěřitelně rychlý.
  • Jehu GUI se dá skvěle konfigurovat, moje verze vypadá cosi jako Opera, kdyby Opera byl editor.
  • Pokročilé hledání a nahrazování.
  • Je to editor dělaný programátory v Javě, což je taková vyšší dívčí programování (společně s C++), multiplatformně, přes všechnu úctu ke skvělému PSPadu, JEdit má mnohem více praktických vychytávek pro praktické programování.
  • Podporuje 50 (!) kódování, včetně iso-8859-2, windows-1250 a utf-8.
  • Podporuje architekturu pluginů, a jejich automatickou aktualizaci. Ve svém systému mám pluginy BufferTabs, Character Map, Code2HTML, Console, Docker, Error List, FastOpen, Mouse Gesture Plugin, JDiff Plugin, Mouse Snap, PHPParser Plugin, Project Viewer, Quick Notepad, Rename, Sidekick, TextTools a XML.
  • Dobrá podpora pro XML/XSLT.

Pro instalaci JEdit editoru musíte mít na stanici JRE 1.4.2 nebo vyšší.

Top-10 aplikace pro Siemens SX1

Symbian 28.08.2004

Druhé dojmy ze Siemense SX1 lze shrnout do dvou vět: “Symbian rulez!” a “Siemens rulez!” :-) Po výměně 256MB karty za 512MB MMC kartu, a doinstalování řady programů, jsem získal v podstatě osobní počítač, neustále dostupný. Na Symbianu je úžasné, že člověk se nemusí přizpůsobovat tomu, co navrhl opilý Fin, či Švéd, ale přizpůsobí si vše podle svých chutí a preferencí. Je tak možné libovolně si přeskládat menu, aktivovat volby rychlého vytáčení, kategorizovat kontakty, a hlavně doinstalovat téměř libovolné aplikace.

Top-10 Siemens SX1 aplikace:

Aplikace Popis
Opera 6.20 fantastický XHTML prohlížeč pro Symbian s podporou CSS, JavaScriptu, blokací popup oken, a především skvělého renderování stránek
NetFront velice slušný prohlížeč XHTML, nicméně pro větší stránky se mi jej podařilo párkrát shodit
Doris Browser základní HTML prohlížeč, pokud nemáte MMC kartu, je to stále dobrá volba
CameraFX s touto aplikací je možné dělat mnohem lepší fotky, a ve velice slušné kvalitě, a následně je odesílat třeba emailem
SmartMovie skvělý přehrávač videa, včetně titulků, podpora pro XViD kodek, film o délce 2 hodiny má délku cca 220MB
QuickSheet skvělá implementace Excelu pro Symbian, neuvěřitelně užitečná věc!
QuickWord skvělá implementace Wordu pro Symbian
Handy Book Epoc DOC book reader pro Symbian, je to formát, který používá Palm, a existují pro něj tisíce knih na internetu zdarma, jedna z nejlepších stránek je memoware.com, není od věci moci kdykoliv zjistit stav HIV v Botswaně, ne?
AgileMessanger ICQ, AOL, MSN a Yahoo! pro Symbian
FExplorer skvělý správce souborů

Klávesnice SX1

Klávesnice SX1 je velice inovativní, a je velice dobrá. Musíte na ní psát oběma rukama, a potom píšete mnohem rychleji, než na klávesnici normální. Skělá koncepce. Jen doufám, že ji Siemens zachová i pro příští modely, na rozdíl od příšerných Nokia klávesnic (těch módních výstřelků; inovace za každou cenu), je toto inovace, která má smysl.

Zpívám na kříži

Mám rád... 27.08.2004

And always look on the bright side of life…
Always look on the right side of life…
(Come on guys, cheer up!)
Always look on the bright side of life…
Always look on the bright side of life…
(Worse things happen at sea, you know.)
Always look on the bright side of life…
(I mean - what have you got to lose?)
(You know, you come from nothing - you’re going back to nothing.
What have you lost? Nothing!)
Always look on the right side of life…


Song and lyrics from Life Of Brian (Monthy Pythons).

WAP verze WELL.DONE

Technologie 26.08.2004
WAP

Zprovoznil jsem na http://wap.hulan.cz/ WAP verzi tohoto webu. Testováno na Siemens SX1. Je nutné si v telefonu upravit default encoding ve WAP browseru na UTF-8.

Na hlavní stránce se zobrazí odkazy na 10 posledních článků, po kliknutí na odkaz se zobrazí celý článek, a dole u každého článku je ještě odkaz na komentáře k němu. Tedy plný WAP komfort. :-)

Siemens SX1 - ať žije král!

Symbian 24.08.2004
Siemens SX1

Po prvním rozboru a druhém rozboru aktuální telefonní situace na trhu, a budoucího vývoje, kdy jsem se rozhodoval mezi SonyEricssonem K700i, Nokií 6230 a Siemensem S65, jsem si včera objednal Siemens SX1. Cena? Excelentní, nejlepší dostupný (Smart)Phone za 8.300 Kč (včetně DPH!), k tomu USB kabel za 400 Kč, a 256MB MMC karta za 1.500 Kč. Celý balíček tedy za 10.200 Kč (vlastně, ani ne tolik, ihned jsem v místním bazaru prodal T630 za 5.000 Kč).

SX1 je dokonalá věc. Symbianu jsem se dlouho bránil. Od té doby, co se přestal vyrábět Psion 5mx s klávesnicí, který jsem miloval, jsem na Symbian OS zanevřel. Vzhledem k tomu, že novymobil.cz nabízí SX1 za pouhých 8.300 Kč, rozhodl jsem se to prostě risknout. Na internetu (mobilmania forum) je na tuto firmu mraky pomluv, proto jsem zvolil dodávku na dobírku, nikoliv platbu předem. Objednával jsem SX1 včera ve 12:00 a dnes ve 12:00 jsem jej měl u sebe na stole. V bezvadném stavu, s češtinou, včetně originál záručního listu a českého manuálu.

Nepoužívejte alternate stylesheet!

Technologie 23.08.2004

alternate stylesheets jsou možnost jak jednu stránku ostylovat více různýmí způsoby, možností podporovanou například Firefoxem, či Operou. Nicméně, jedná se zjevně o špatné řešení tohoto problému. Podívejme se na to blíže:

Špatné řešení pro Firefox a Operu:

<link rel='stylesheet' 
  type='text/css' href='primary.css'/>
<link rel='alternate stylesheet' 
  type='text/css' href='gray.css' title='Šedá'/>
<link rel='alternate stylesheet' 
  type='text/css' href='red.css' title='Rudá'/>
<link rel='alternate stylesheet' 
  type='text/css' href='green.css' title='Zelená'/>

V čem je toto řešení špatné?

  • Prohlížeč načítá nejen aktivní stylesheet, ale i veškeré ostatní CSS soubory, a to již při prvním zobrazení stránky (můžete si to ověřit, nainstalujte si výborný Proxomitron). Tímto se zbytečně přenáší desítky až stovky KB dat!
  • Při změně aktivního stylu a přechodu na jinou stránku neumí Firefox ani Opera tento styl udržet i nadále aktivní, čtenáři se tudíž zobrazí primární styl. Což je velice matoucí.
  • Mnoho lidí používá na trvalé přepínání alternativních stylů JavaScript, ale často špatně napsaný JavaScript (používal jej třeba Rony), který Operu identifikuje jako browser údajně nepodporující alternate stylesheet.
  • Microsoft Internet Explorer, zastaralý, ale stále používaný browser, alternativní CSS soubory nepodporuje vůbec. Jeho uživatelé uvidí jen primární styl.

Správné řešení pro veškeré browsery?

Správným řešením je samozřejmě alternate stylesheet vůbec nepoužívat, a přepínat alternativní styly třeba skriptem na straně serveru. Jedno takové řešení jsem již publikoval dříve. Na jeho praktickou realizaci se můžete podívat na demo.blogcms.com.