Webdesign

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

Nová prezentace a eshop: RAF.cz

F-ART AGENCY s.r.o. vytvořila novou webovou prezentaci s eshopem a aplikaci pro společnost RAF ARMATURY s.r.o., výrobce komplexního sortimentu vodovodních baterií a doplňků určených pro koupelny, kuchyně a různé průmyslové objekty, zkrátka všude tam, kde se pracuje s vodou.

Prezentace je založena na redakčním systému F-ART:CMS 5.0 a nabízí 3 jazyková provedení.

RAF.czRAF.cz
0 komentářů

Zaostalý Apple iPad je nejhorší možné zařízení pro procházení webu

Upozornění: pokud jste z nějakého důvodu člověk trpící komplexem z mého názoru, tak tento článek nečtěte. Ke stavu "mít rád Apple" fakt nepotřebujete moje posvěcení, stačí víra 🙂

Apple se snaží propagovat svůj Apple iPad, tedy nejzaostalejší zařízení pro procházení webu, a tak kope kolem sebe, poslední dobou především do Adobe. Pojďme se tedy podívat, jak neuvěřitelně špatně se zaostalý Apple iPad vyrovná s procházením webu a s běžnými úkony:

  • Dívali jste se někdy v prohlížeči na iDNES.cz, BBC.co.uk, CNN.com, Novinky.cz, Blesk.cz, Youtube.com či Vimeo.com na video? Na iPadu máte smůlu, nepodporuje Flash.
  • Hráli jste někdy libovolnou hru na internetu? Na iPadu máte smůlu, nepodporuje Flash.
  • Dívali jste se někdy na screencast na internetu? Na iPadu máte smůlu, nepodporuje Flash.
  • Chcete se podívat na ZOH? Potřebujete Silverlight. Na iPadu máte smůlu.
  • Chcete si přehrát video v Xvid s českými titulky? Na iPadu máte smůlu.
  • Chcete se podívat na webovou prezentaci Breitlingu, Omegy či Cartier? Na iPadu máte smůlu, nepodporuje Flash, většina zážitkových prezentací jej přitom používá.
  • Chcete se kouknout na HD video v MKV? Na iPadu máte smůlu.
  • Chcete si spustit editor obrázků, upravit je, a nahrát na web? Na iPadu máte smůlu.
  • Chcete napsat delší email nebo komentář? Na iPadu máte smůlu, nemá použitelnou klávesnici.
  • Chcete uskutečnit video hovor s přítelkyní? Na iPadu máte smůlu, nemá videokameru.
  • Chcete zařízení, které nemá tyto vady, a stojí v ČR do 10.000 Kč? Na iPad zapomeňte.

Jak vidíte na příkladech výše, internet bez Flashe není plnohodnotný internet. Maximálně tak 50%. Většina lidí ani netuší, kde všude se Flash používá. To, že Apple nabízí zařízení s pomalým procesorem a bez akcelerace videa pomocí GPU neznamená, že by tyto svoje vady měl maskovat kydáním špíny na Adobe. Nicméně dělá to... Před pár dny jsou musel použít (kvůli klientovi) OS X 10.6.2 pro nějaký test, a byl jsem zhrozen - zaostalejší a méně stabilní systém si člověk těžko dokáže představit.

Celý článek 32 komentářů

Přihlášení uživatele a ukládání hesla v databázi

Přihlášení uživatele je na většině webů realizováno pomocí kombinace uživatelské jméno / heslo. V databázi je uživatelské jméno uloženo typicky jako plaintext a heslo jako nějaký hash. Většina starších systémů používá md5(heslo) (třeba i tento web, MyEgo.cz, protože hesla jsou zde z roku 2003, kdy md5 bylo považováno za dostatečné; nicméně budu to měnit), novější třeba sha1(heslo), moderní například sha1(SALT.heslo). Sůl je v tomto případě náhodný řetězec, třeba |L$k!#Lcj29+RbXA=*N), unikátní pro každou instalaci. Důvodem pro použití soli je stížit možnou rekonstrukci skutečného hesla z hashe, pokud by tento byl odcizen.

Tento postup je jednoduchý na realizaci a všeobecně známý. Zajímavější je, jak poznat, že je klient přihlášen. Osobně toto řeším uložením náhodně vygenerovaného hashe do cookie. Tento náhodný řetězec přitom nijak nesouvisí s heslem. Generuje se třeba takto:


mt_srand( (double) microtime() * 100000000);
$this->cookiekey = sha1(COOKIE_SALT.uniqid(mt_rand()));

Poté, co je ověřeno jméno a heslo klienta, vygeneruje se a zapíše do databáze a do cookie tento hash s tajnou solí. Při návratu klienta na web je tato hodnota v cookies porovnána na databázi, a pokud se shoduje, je uživatel přihlášen. Navíc je více než vhodné kontrolovat IP adresu.

Tento postup samozřejmě nezamezí tomu, že někdo odposlechne danou cookie a má identickou IP adresu (zejména za NATem to není nemožné), ale pro běžné (nebankovní) redakční systémy je to rozumný kompromis mezi bezpečností, pohodlím a náklady na zabezpečení.

Celé je to samozřejmě možné ukládat do session namísto cookies, což dále zvýší bezpečnost, ale sníží komfort.

Pokud používáte ve svém CMS jiný postup, budu rád když se o něj podělíte v komentářích.

35 komentářů

Používáte Google? Pak nerozumíte IT

V ČR se někteří lidí mohou doslova zbláznit z Google. Většinou proto, že mají málo informací a neví, že Microsoft či další firmy nabízí mnohem lepší služby.

Pojďme se podívat na pár prostých fakt o zdarma dostupných službách obou firem:

  • Webové úložiště: Nově představený Google Drive nabídne prý zdarma 1GB prostoru. To je směšné. Microsoft nabízí už více než rok zdarma SkyDrive s 25GB volného místa. Navíc pomocí aplikace Gladinet si tento prostor namapujete jako disk ve Windows.
  • Email: Pár lidí také používá Gmail se starým IMAP protokolem. Nabízí kapacitu jen 7GB a neumí sync kontaktů s Outlookem (zcela klíčová věc pro email; u Google jen v placené variantě). Microsoft Live (Hotmail) email s moderním MAPI má kapacitu 500GB, tedy 71x větší než Gmail, a umí i sync kontaktů na váš Outlook přes Outlook Connector, plus nabízí zdarma vynikajícího emailového klienta Windows Live Mail. Vše je pochopitelně integrováno na kalendář a úkoly, protože řada emailů představuje právě úkol.
  • Instantní zprávy: Někteří lidé pro komunikaci používají Google Talk (Jabber). Směšné. Windows Live Messenger má výrazně více funkcí, spolehlivé audio i video hovory, sdílení a přenos souborů, podporu pro fotogalerie a je integrován na další služby Microsoftu.
  • Vlastní doména: Máte omezený Google Apps Standard na vlastní doméně? Zase chyba. Microsoft Live Custom Domains nabízí zdarma vedení neomezeného množství vašich domén (i firemních) a ke každé až 500 emailových schránek (s 500GB pro každou pro emaily a 25GB SkyDrive úložiště) zcela zdarma. Pokud vám nestačí 500 schránek, můžete požádat o další.
  • Synchronizace souborů: Google nemá vůbec nic, Microsoft má skvělý Live Mesh s 5GB webového úložiště zdarma a syncu libovolných složek ve vašem PC mezi libovolným množstvím uživatelů.

Používáte Google pro jiné služby než je hledání a reklama? Pak prostě nerozumíte IT.

Nicméně to je zcela v pořádku, důležité je, že jste spokojeni. Fakt!

54 komentářů

Facebook je nový a mnohem lepší koncept internetu než ten starý, protože lidé si nejsou rovni

Facebook je internet, který všichni chytří lidé chtějí. Jsou tam jen vámi zvolené inteligentní bytosti a žádní blbci. Nejsou tam chudáci, co potřebují psychiatrickou léčebnu, protože se neumí vyjadřovat bez vulgarit, zakomplexovaní puberťáci s beďary řvoucí na každého kolem sebe, lidé otravující se spamem v komentářích, či skupinky pomlouvačných debilů pobírajících sociální dávky a schovávajících se za zdánlivou "anonymitu".

Ne, Facebook je internet pro vámi vyvolené chytré lidi.

Facebook je elitní záležitost. Facebook je jako reálný život. V běžném životě se nebudete bavit s ošklivým hňupem, preferujete kolem sebe krásné a inteligentní lidi (jako jste vy) s podobnými zájmy. A přesně to vám Facebook nabízí. Vytvoříte si internet přesně podle svých potřeb a přání.

Mám rád Facebook. Je to internet, který se musí chytrým lidem líbit. Báječně kastuje a filtruje, protože lidé si nejsou rovni v tom co umí a jak se chovají. Blbci se v reálném životě kamarádí většinou zase jen s dalšími blbci, chytří naopak s chytrými. Internet ovšem tuto přirozenou a žádoucí rovnováhu narušuje.

S neustálým rozšiřováním Facebooku doufám, že jednoho dne nabídnou podobnou filtraci i weby třetích stran, a to propojením s Facebookem přes jeho API. Budete si číst třeba článek na Živě.cz, ale uvidíte jen komentáře vámi vyvolené elity, snadno oddělíte zrno od plev.

Elitní internet bez nudné a neužitečné anarchie podprůměrných je to, co potřebujeme. Současný internet je totiž (z velké části) pro ty chytré neuvěřitelná ztráta času.

14 komentářů

Linuxový desktop je i v roce 2009 nedokončený a nabízí mizerné aplikace

Nemám vůbec rád Linux na desktopu, protože mám pocit, že jej místo designérů a expertů na UI navrhují uhrovití programátoři s nulovým smyslem pro ergonomii. I po 15 letech vývoje na mě stále Linux působí nedokončeným dojmem. Namísto toho preferuji Windows 7, nový systém Microsofu, a aplikace pro něj. Ostatně jako většina lidí.

Při používání Linuxu a aplikací pro něj trpím. A nejsem sám.

Někteří uživatelé Linuxu tvrdí, že "jejich" systém se nepoužívá masově proto, že jej lidé neznají. Nevědí prý vůbec o něm, o jeho úžasnosti. To je hloupost. O Linuxu se píše neustále, je dostupný zdarma, každý to ví, ale přesto jej používá jen 1% lidí. Bing hledání vrátí na slovo Linux zhruba 246 miliónů stránek a to je opravdu hodně.

Proč tedy Linux skoro nikdo nechce? Protože se s ním, a s aplikacemi pro něj, opravdu špatně pracuje. Jsou to sice aplikace zdarma, ale graficky většinou ohavné a funkčně nedostatečné.

Mizerné aplikace pro Linux, dokonalé pro Windows?

Následující testování probíhalo na poslední verzi Ubuntu 9.10, vydané zhruba před měsícem.

Otevření souboru

Při psaní článku na tento blog používám často HTML šablonu, která je umístěná na webu. V poslední verzi Ubuntu jsem si tedy nainstaloval Bluefish editor a pokusil se tento HTML soubor otevřít. Nejde to. Bluefish / Gnome asi neumí používat zhruba milión let starý http protokol:

otevření souboru v Ubuntu nefunguje pro http

Ve Windows 7 je vše nejenom graficky mnohem hezčí, ale otevřít soubor z běžného souborového dialogu přes http (či ftp, atd.) protokol samozřejmě není problém:

otevření souboru ve Windows je plně transparentní
Celý článek 55 komentářů

Hostujeme PHP aplikace na Windows (namísto Linuxu)

Naprostá většina webových programátorů v PHP / MySQL hostuje své aplikace na Linuxu, využívajíce LAMP platformu, nicméně vytvářejí je většinou na Windows. Řada z nich si nedokáže představit jiný postup. Tento článek by měl popsat výhody a nevýhody Windows hostingu pro PHP aplikace a zkušenosti s migrací aplikací mezi Apache -> IIS a MySQL -> SQL Server 2008.

Windows hosting versus Linux hosting (pro PHP)

Přestože osobně také preferuji na desktopu Windows (a aplikace pro ně), pro hostování PHP / MySQL aplikací jsem řadu let používal jen a pouze Linuxové webhostingy. Od spousty lidí nakonec stále není problém slyšet "axiom" na server patří Linux (aniž ovšem dodávají proč), a o Windows webhostingu vůbec neuvažují.

Výhody Windows 2008 Server hostingu

K přechodu na Windows hosting vás může přimět:

  • potřeba využívat i jiné databáze než MySQL, například Microsoft SQL Server 2008, které mají lepší možnosti programování,
  • potřeba provozovat současně PHP i ASP.NET aplikace na jednom serveru,
  • pokud chcete hostovat větší množství domén, a vyplatí se vám tedy fyzický či virtualizovaný vlastní server, ale je pro vás (jako pro většinu lidí programujících na Windows) snazší administrovat si Windows 2008 Server než třeba Gentoo Linux,
  • výrazná nespokojenost (podpořená zkušeností) s low-cost LAMP hostingy s "neomezeným" počtem domén, které se sice tváří jako ve všem nelimitované, ale v důsledku vás stojí spoustu nervů a zbytečného úsilí,
  • potřeba ovlivnit nastavení serveru, které sdílená LAMP platforma nenabídne,
  • snadná správa serveru i aplikací z Windows desktopu i mobilního telefonu,
  • používání aplikací, které znáte z desktopu (správce souborů, editor, atd.), i pro práci na serveru,
  • stabilní systém a "nezbořené" MySQL tabulky, jak je známe snad ze všech sdílených LAMP webhostingů.
Celý článek 6 komentářů

Facebook i Twitter jsou internetovou revolucí, ale opravdový význam získají až s propojením na váš mobil

Čím dál tím více lidí používá Facebook i Twitter.

Seesmic Desktop

Já osobně Twitter používám nejen jako obdobu mikro-blogu, tedy své prezentace, ale i jako zdroj informací pro mě samotného, který nahradil RSS. RSS čtečky jsem nikdy neměl moc rád, a dnes je vůbec nepoužívám. Twitter je efektivnější. Stačí se zaregistrovat, kliknout na follow u lidí co vás zajímají a vše potřebné ihned vidíte na webu, mobilním telefonu či v desktopových klientech (třeba v Seesmic Desktop na obrázku).

Facebook je podobně užitečný, ale pro informace o tom, co dělají vaši přátelé. Naprosto geniální je Facebook ovšem až poté, co jsou data z něj integrována do běžných kontaktů na mobilním telefonu, jako to dělá HTC HD2 telefon s HTC Sense prostředím. U každého člověka najednou nevidíte jen jeho email, který jste tam ručně někdy napsali, ale i profilovou fotku z Facebooku, telefon (pokud jej publikoval), nově přidaná fotoalba, aktualizace stavů (kde je a co dělá) a vše je to zcela automatické. Nemusíte ani hnout prstem pro získání těchto informací. Telefon vám také ukáže kde se právě koná jaká party, kdo má narozeniny, a komu se narodilo dítě 🙂

Tato data si navíc nemusíte nijak udržovat, když si někdo změní emailovou adresu či pracovní pozici, budete o tom ihned vědět.

Web 2.0 představovaný Twitterem a Facebookem jsou užitečné služby na PC, ale až jejich propojení na váš mobil s datovým tarifem a s online dostupnosti kdekoliv jim dávají obrovskou užitečnost.

Facebook a Twitter dokonale integrované s ostatními aplikacemi v mobilním telefonu jsou ta nejlepší technologická věc pro rok 2010.

10 komentářů

SQL Server 2008 - dotaz pro vypsání parametrů tabulky

Jedna ze základních funkcí každého redakčního systému je editor číselníků. V každé aplikaci jich existuje spousta, a mají mezi sebou různé relace. Máme jej napsaný pro různé databáze, od MySQL, přes Oracle po SQL Server 2008.

V praxi to funguje tak, že se skript napojí na INFORMATION_SCHEME, načte si automaticky strukturu tabulky, datové typy, délky polí, autoincrementy, komentář k polím, přidá k tomu případné odkazy na jiné číselníky (třeba tabulka měst se odkazuje na tabulku krajů), a tyto umožní pohodlně editovat. Textová pole jsou samozřejmě zpracovávána WYSIWYG editorem. Je to prostě komfortní možnost jak rychle upravit parametry aplikace pro běžné uživatele.

V případě MySQL existuje INFORMATION_SCHEME.COLUMNS tabulka, v níž je vše potřebné. Na SQL Server 2008 musíte použít poněkud složitější dotaz, a to třeba takovýto:


CREATE VIEW [dbo].[dbscheme] AS
SELECT t.name AS TabulkaNazev, c.colid AS SloupecPozice, c.name AS SloupecNazev, ISNULL(i.CHARACTER_MAXIMUM_LENGTH, i.NUMERIC_PRECISION) AS SloupecDelka, i.DATA_TYPE AS SloupecTyp, i.COLUMN_DEFAULT AS SloupecDefault, CAST(cd.value AS varchar(255)) AS SloupecPopis,
COLUMNPROPERTY(OBJECT_ID(i.TABLE_NAME), i.COLUMN_NAME, 'IsIdentity') AS IsIdentity
FROM sys.sysobjects AS t JOIN sys.syscolumns AS c ON c.id = t.id JOIN INFORMATION_SCHEMA.COLUMNS AS i ON i.TABLE_CATALOG = 'databáze' AND i.TABLE_SCHEMA = 'dbo' AND i.TABLE_NAME = t.name AND i.COLUMN_NAME = c.name LEFT JOIN sys.extended_properties AS cd ON cd.major_id = c.id AND cd.minor_id = c.colid AND cd.name = 'MS_Description'
WHERE t.type = 'u'

Výsledkem bude pohled, který vám nabídne název tabulky, jméno a datový typ sloupce, jeho defaultní hodnotu, velikost datového pole a description ke sloupci (SloupecPopis), který následně můžete zobrazit uživateli jako textový popis (takže namísto technického itemid aplikace vypisuje automaticky sloupec jako Číslo článku).

Celý článek 2 komentáře