Webdesign

Adobe a grafika 35 Google 27 PHP 78 Webdesign, CMS 304

MyEgo.cz má po dvou letech nový design

MyEgo.cz, spuštěné téměř před 2 roky, má nový design. Za grafiku a šablony je zodpovědný Pavel Kout (Webface) a jsem s jeho prací moc spokojen. Nové pojetí, které má připomínat tištěné noviny, je modernější, integrovány jsou odkazy na Facebook, Twitter a Linkuj.cz, zlepšené jsou i komentáře.

Je fakt, že poslední dobou nemám tolik času na psaní, ale v (téměř) nadcházející zimě člověk nebývá tolik sportovně aktivní, takže toho bude vycházet více 🙂

Za dobu 6 let existence blogu jsem mimochodem napsal přes 1 500 článků a publikováno je přes 24 000 komentářů.

7 komentářů

Soud v Texasu zakazuje Microsoftu prodávat Word - update

Reuters.com: soud v Texasu dnes zakázal s realizací nejpozději do 60 dnů prodej Microsoft Wordu v USA, respektive veškerých Microsoftích aplikací zpracovávajících Open XML (DOCX, DOCM). Důvodem je údajné porušení patentu kanadské firmy i4i z roku 1998, který se zabývá obecným "oddělením obsahu dokumentu od jeho architektury či formy".

Osobně to nechápu a očekávám, že ve stejných intencích bude zakázán celý World-Wide-Web, respektive kombinace HTML a CSS. Obecně, oddělení obsahu a formy je něco tak standardního, že nikdo asi nechápe, jak to může být patentováno.

Microsoft považuje uvedený patent za neplatný a samozřejmě se odvolá, ale bude velice zajímavé sledovat výsledek.

Mimochodem, na základě toho samotného patentu může být identicky zlikvidován i OpenOffice (ODF), jenže tam není tolik peněz.


Aktualizace 4.9.2009: ten samý soud uvedený zákaz dnes zrušil, dokud poběží odvolání Microsoftu.

Microsoft tedy může prodávat Word a Office i nadále.

13 komentářů

IIS7 a Custom Error Pages

Pokud používáte v IIS7 Custom Error Pages, tak je nutné při volbě "Execute URL" zaslat v onom odkazovaném souboru i patřičný HTTP stav.

Apache se v tomto chová jinak, a i když 404 přesměrujete na onen error.html soubor, tak stále vyhodí "404" jako HTTP hlavičku. IIS nikoliv, soubor je totiž nalezen a HTTP kód je "200".

Jediná možnost jak ošetřit v IIS7 při "Execute URL" HTTP kód je tedy použít třeba PHP a v něm pomocí funkce header() jej vygenerovat a až pak zobrazit vlastní ERROR stránku.

Samotný HTML soubor jako 404 stránka fungovat nebude (pokud použijete "Execute URL"😉. Je to samozřejmě poměrně logické, ale to by člověk nesměl dělat věci "automaticky" podle toho, jak je kdysi dělal na Apache.

Custom Error Pages na IIS7
3 komentáře

Pubertální viry na ULOZ.TO a trestní oznámení

Nějaký redardovaný puberťák šíří na ULOZ.TO a dalších serverech "virus" jako primitivní BAT soubor, a je v němž obsaženo toto:


at 1:00 shutdown -s -f -t 00
at 1:30 shutdown -s -f -t 00
at 2:00 shutdown -s -f -t 00

A tak dále, což znamená, že pokud hledáte na ULOZ.TO warez a jste dostatečně hloupí na to, že ručně spustíte tento BAT soubor bez jeho prohlédnutí, tak se vám každých 30 minut vypne počítač.

Dále "virus" otevře zhruba 5 mých webů (včetně MyEgo.cz), a snaží se poškozené přimět k tomu, aby si mysleli, že jsem autorem daného kódu.

Text primitivního "viru" zřejmě psal -náctiletý idiot, protože je plný gramatických chyb.

Podle zkoumání uvedeného primitivního BAT souboru stačí k deaktivaci této pitomůstky, kterou si musíte ručně stáhnout a následně ručně spustit, následující - spusťte si příkazovou řádku (command prompt) a tam napište at /delete. Tím uvedené úkoly zase smažete a PC se přestane pravidelně vypínat.

Požádal jsem ULOZ.TO o pečlivou archivaci IP adres člověka, co tam uvedené BAT soubory 12.7. ve 20:25 až 20:29 v množství 30 kousků nahrával a zítra na něj podám trestní oznámení na Policii ČR.


Update 1: ULOZ.TO reaguje velice rychle 🙂

Dobry den,

soubory smazany, IP jsou evidovany az dorazi pozadavek od policie cr, data samozrejme predame.

S pozdravem

Standa Pacan
technicka podpora uloz.to


Update 2: podal jsem 14. 7. 2009 trestní oznámení na neznámého pachatele, který se dopustil trestného činu poškozování cizích práv.

Policie ČR případ řeší pod číslem jednacím KRPP-9342-2/TČ-2009-030516.


Update 3: uvedený kriminální živel nyní šíří keygen-XXX.exe virus v souborech s velikostí 24KB, které obsahují Trojan-Dropper.Win32.BATDrop.l. Na odstranění samozřejmě nefunguje výše uvedená metoda, budete muset použít nějaký kvalitní antivirus.

Policie ČR i server ULOZ.TO jsou o vývoji situace informováni.

25 komentářů

Opera je odporná firma s komunistickými manýry (update)

Osobně jsem velice alergický na komunistické (či komunismus připomínající) chování. Pokud chcete vyjádřit svůj nesouhlas s odporným chováním Opera Software ASA, která požaduje aby její dlouhodobě neúspěšný prohlížeč byl nasazen "úředním rozhodnutím" do operačního systému třetí strany (konkrétně Microsoft Windows), můžete se stát fanouškem Facebook skupiny We demand IE8 in european version of Windows 7.

Rovněž odinstalujte Opera prohlížeč z vašeho PC. Používáním Opery totiž podporujete firmu, která je dlouhodobě neschopná se prosadit, a tak se neštítí doslova komunistických manýrů proti lepší konkurenci. Stáhněte si místo toho skvělý Internet Explorer 8 a mouse gestures.

Zajímavé je, že tento krok Evropské komise a Opery nepodporuje snad nikdo (včetně uživatelů Opera prohlížeče), tedy až na pár úředníků, kteří budou inkasovat případnou pokutu.

V této souvislosti je vhodné připomenout i fiasco, které Evropská komise zažila už s Windows N, tedy Windows bez multimediálního přehrávače. Úředníci tehdy rozhodli, že Microsoft zahrnutím Windows Media Player do základní instalace Windows prý zneužívá svého postavení a znesnadňuje prodej konkurenčních přehrávačů, zejména špatného komerčního Real Player, a následně donutili Microsoft nabízet verzi Windows bez přehrávače multimédií. Je historií prokázané, že o toto úřednické rozhodnutí neměl trh zájem, Real Player stále nikoho nezajímá, nicméně úředníci si přišli na pěkných pár set miliónů €. A dnešní situace s prohlížečem je podobná.

Nabízí se i otázka, co přijde na řadu dále. Integrovaná defragmentace? Kalkulačka? Wordpad? Střih videa? Proč Microsoft, jako soukromá firma, nemůže v Evropě dodávat takový operační systém, jaký uzná za vhodné? Proč úředník rozhoduje o něčem, co trh zjevně nechce? Proč se úředník stejně nenaváží do Linuxových distribucí / Firefoxu a Appple / iTunes / Safari?

Z mého pohledu se jedná o další zásadní porušení práva na soukromé vlastnictví, což je znakem právě komunismu.

Rozhodnutí Evropské komise a žaloba Opery jde proti zájmu všech uživatelů, jedná se pouze o komunistické zneužití pravomocí nepostižitelných úředníků, kteří si podávají ruku s Opera Software ASA. Volný trh je nejlepší metoda jak určit zájmy a potřeby 700 miliónů obyvatel Evropy, ale rozhodně ne názor jednoho úředníka diktující soukromé firmě, co by podle něj měla dělat!

Microsoft je v této kauze jediný, kdo si zachoval morálku a čest. Na Evropské unii a Opera Software ASA naopak ulpěla další špína.

Související: EU Plans to Prosecute Microsoft On More Antitrust Charges Despite IE Decision

47 komentářů

Adobe, Macromedia, odkup nebo sloučení a Ben Forta

Adobe CS4

Minulý týden se konala akce Adobe nazvaná Buducnost internetu je v RIA. Většina obsahu konference se do značné míry shodovala s akcí mnohem rozsáhlejší - Adobe Max v Miláně, které jsem se před půl rokem zúčastnil, takže to nebylo (pro mě) moc nových informací. Pokud chcete podrobnosti, přečtěte si tedy spíše ony starší zápisky.

Zajímavější byl ovšem rozhovor s Ben Forta, což je technický evangelista Adobe. Na rozhovor byli pozváni i zástupci Živě.cz a Zdroják.cz, ale nějak se jim (z neznámého důvodu) nechtělo, tak jsem s Benem u kávy neformálně pohovořil sám 🙂

Adobe koupilo firmu Macromedia přesně před čtyřmi roky. Můj komentář z té doby nebyl právě nadšený - viděl jsem to primárně jako omezení konkurence a výrazné zúžení možností pro webdesignéry.

Ben Forta v té době pracoval právě jako vývojář Macromedia. Dle jeho slov se ovšem nejednalo v praxi ani tak o "násilné převzetí" či odkup, jako o sloučení dvou podobně silných firem, kdy management obou firem dostal 50:50 šanci ovlivňovat následné dění.

Po 4 letech je možné celou akci zhodnotit jako mimořádně povedenou. Sloučení (myslím si, že to je v uvedeném případě výrazně vhodnější slovo než odkup) Adobe s Macromedia se opravdu povedlo.

Celý článek 2 komentáře

Adobe Flex / Air versus Microsoft SilverLight

Minulý týden jsem absolvoval školení v Adobe ČR pro Adobe Flex - programovací jazyk původně navržený firmou Macromedia a využívající jako svůj runtime běžně dostupný Flash přehrávač.

Musím říct, že jsem byl k Flexu nejdříve velice skeptický. Co si budeme nalhávat, Flash přehrávač je pro většinu lidí synonymem otravným reklam a dokonale zbytečných animací, kde hlavním prvkem animace je tlačítko "skip intro". Pokud navíc někdo dávno zkoušel tragický ActionScript 1.0 ve Flashi a jeho "programování" v keyframech, nebude mít asi zájem ani o Flex. Ale měl by mít!

On je totiž Flex a ActionScript 3.0 dnes úplně někde jinde. Líbí se mi.

ActionScript 3.0 možná není tak dokonalé řešení jako možnost výběru z C#, Visual Basicu, IronPython či IronRuby v SilverLightu 2.0, ale je to přesto moderní objektový jazyk s většinou vymožeností, které znáte z C# či Javy.

Rovněž Eclipse (na kterém je postaven vývojový nástroj pro Flex nazvaný Flex Builder 3) je velice slušné vývojové prostředí, které příliš nezaostává za etalonem, tedy Visual Studio 2008. Visual Studio 2008 je sice stále lepší nástroj pro vývoj (s integrací na Blend 2.5), ale s Flex Builderem 3 se dá pracovat také velice dobře.

Flex, tedy kombinace MXML a ActionScriptu 3.0, si získal mé sympatie.

Flex s MXML a C# s XAML mají hodně společného

Obě technologie Microsoftu a Adobe nejsou tak odlišné pro vývojáře, jak by se na první pohled mohlo zdát. Například takto zapíšete nové tlačítko ve Flexu se zavoláním "kliknuto" události:


<mx:Button id="jméno" click="kliknuto(event)" />

A takto v SilverLightu:


<Button x:Name="jméno" Click="kliknuto" />

A takto implementujete danou metodu v ActionScriptu 3.0:


private function kliknuto(event: MouseEvent):void {
	// do your stuff 
}

A takto v SilverLightu:


private void kliknuto(object sender, RoutedEventArgs e) {
	// do your stuff 
}

Zásadní odlišnosti? Naopak, základní věci jsou v C# a XAML versus ActionScript 3.0 a MXML až pozoruhodně podobné.

Celý článek 13 komentářů

Jak migrovat z MySQL na Oracle 10g databázi + PHP

Před pár měsíci jsem zde popisoval 10 bodů jak migrovat z MySQL na SQL Server 2008 + IIS7 + PHP. SQL Server 2008 považuji za současnou nejlepší databázi. Pro jeden projekt si klient přál použít Oracle 10g (má v ní obrovské skladiště jiných dat), takže bylo nutné pracovat s etalonem a matkou všech databází, a to na úrovni poměrně starého OCI8 rozhraní v PHP verze 5.1.6.

Náš redační systém tak už běží na MySQL 4.x (mysql), MySQL 5.x (mysqli), SQLite 2.0, SQLite 3.0 (přes PDO), SQL Server 2008 databázi (přes sqlsrv) a nově i na Oracle 10g (přes oci8).

Práce s Oraclem je v PHP poměrně dobře zaběhnutá a stabilní, přesto se hodí sumarizace hlavních rozdílů, pokud předěláváte redakční systém (kromě doplnění databázového layeru) z MySQL na Oracle.

1. Neexistuje LIMIT start, offset

Podobně jako SQL Server, tak ani Oracle nemá pohodlné stránkování v SQL přes LIMIT start, offset příkaz, jako umí (jinak velice primitivní) MySQL. Obejít se to dá ale snadno za použití sub-selectu a magické funkce ROWNUM, tedy obdoby ROW_NUMBER() z SQL Serveru:


SELECT * FROM (
	SELECT ROWNUM as CisloSloupce, fieldsX ORDER BY fieldsY ) 
	WHERE CisloSloupce BETWEEN ($offset+1)  AND ($offset+$limit)
	

Dobré je upravit si vaši metodu pro SQL příkaz v databázovém layeru, která SQL dotaz s LIMIT klauzulí automaticky modifikuje na vnořený SELECT, takže se nemusí nic dalšího přepisovat v CMS.

Celý článek 3 komentáře