Užitečné funkce pro PHP - díl 4.
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ě”
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

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í
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

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
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
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

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!

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!
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.