14. 10. 2008

Bleskově na AJAX přes Google

Populárních javascriptových AJAX knihoven (frameworks) dnes existuje celá řada. Většina z nich narostla za dobu své existence ke stovkám kilobajt.

Velikost knihoven má spolu s odezvou serveru fatální vliv na rychlost načítání každé stránky, která by je ráda používala. Doba prvního načtení tak může běžně vystoupat až k jednotkám sekund.

Další nemilou (i milou) vlastností těchto AJAX frameworks, je fakt, že jsou v neustálém a zuřivém vývoji. Což má za následek nové a nové verze knihoven. Pokud chcete být v obraze, nezbude než neustále stahovat nové a nové verze. Navíc je to často taky otázka bezpečnosti vašich stránek.

No a na závěr mé obžaloby AJAX frameworks, bych se rád zmínil o replikaci dat. Každý server (stránky) to většinou řeší tak, že si prostě vytvoří svoji vlastní kopii příslušných knihoven. Vývojáři tímto krokem nutí uživatele neustále stahovat (prakticky) tatáž data dokola.

Ale pak se pár chytrých hlav dalo dohromady a řeklo: Dost! A není náhodou, že těch pár chytrých hlav se sešlo ve společnosti Google :-) a vytvořilo AJAX Libraries API.

Výhody jsou zřejmé:

  • Primitivní kód pro vložení – jeden řádek
  • Při načítání knihoven využíváte infrastruktury Google, takže odezva je doslova perfektní.
  • Aktualizaci provedete tak, že přepíšete číslo verze příslušné knihovny.
  • Knihovny jsou před přenosem komprimovány metodou gzip.
  • Skript se načítá z jediné URL a do cache se ukládá jednou pro všechny projekty, využívající AJAX Libraries API

Příklad vložení Prototype verze 1.6 a rozšíření Scrip.aculo.us 1.8.

<script src="http://www.google.com/jsapi" type="text/javascript"></script>
 <script type="text/javascript">// <![CDATA[
google.load("prototype", "1.6.0.3");
google.load("scriptaculous", "1.8.1");
// ]]></script>

Rozhraní dnes dokáže vložit knihovny: Prototype, Scrip.aculo.us, Dojo, jQuery a Mootools. Časem možná přibudou některé další.

#google, #programovani, #webdesign
10. 10. 2008

Geolocation API od W3C

V polovině září přišla W3C s návrhem specifikace Geolocation API. Tato specifikace definuje komunikační rozhraní (API) pro přístup k souřadnicím zařízení.

Specifikace Geolocation API uvádí hned několik možností, jak je možné získat polohu zařízení:

  • Přímé GPS souřadnice (pokud existují)
  • Na základě IP adresy zařízení
  • RFID – radiový identifikační prvek
  • MAC adresa WiFi nebo Bluetooth
  • ID buňky GSM/CDMA

Přesnosti získané polohy se u jednotlivých možností pochopitelně velmi různí. Na druhou stranu je lepší získat alespoň něco, než vůbec nic.

První vlaštovkou, která využívá tohle API, je rozšíření Geode pro Firefox. Toto rozšíření spolupracuje se  serverem SkyHookWoreless.

V připravované verzi Firefox 3.1 se (pravděpodobně) dočkáme nativní podpory Geolocation API. Což může mít v budoucnu celkem zajímavý komerční potenciál. Umím si představit webové aplikace, které Vám, na základě získané polohy, dokáží:

  • vyhledávat volné pracovní místa
  • doporučovat restaurace, obchody, firmy, společnosti, akce
  • přinášet místní zprávy
  • hledat nové přátele, partnery, známé
  • vyhledávat nemovitosti
  • měnit prostředí prohlížeče podle toho, kde právě jste (práce x doma)
  • ještě lépe cílit reklamu
  • (jakkoli) zneužít získané data

Ano tahle specifikace se někomu může zdát, jako vystřižená z Velkého Bratra. Firefox přeci používá přes 40 procent z nás. Vše se dá vypnout, na druhou stranu to zase někdo může zapnout. Pak je k zneužití už jen malý krůček.

#gis, #gps
3. 10. 2008

Online WYSIWYG editory

Při svém ranním šálku čaje Maroccan Mint od Dilmahu jsem se rozhodl napsat malý přehled WYSIWYG editorů pro HTML.

TinyMCE
Prvním, zřejmě nejznámějším, editorem je TinyMCE. Tento editor používá celá řada systémů, namátkově jmenuji alespoň WordPress, ze kterého právě píšu. Tento editor je zdarma jako opensource dostupný pod LGPL.

Editor TinyMCE je postaven na Javascriptu. Jeho implementace je velmi jednoduchá. Stačí vložit pár skriptů a Vaše TEXTAREA se promění k nepoznání.

Nespornou nevýhodou je velikost editoru. Základní verze má cca 2 MB, což skutečně není málo. Na druhou stranu můžete použít Gzip kódů a snížit tak přenášená data o 75 procent. K tomu ale potřebujete nějaký skriptovací jazyk na straně serveru.

FCKeditor
Druhým editorem je FCKeditor. Tento editor je postaven na stejných technologiích jako předešlý kousek. Grafika editoru výrazně připomíná Word 97 (je vlastně stejná). Editor je možné získat zdarma pod licencí LGPL. Navíc můžete editor mít také pod komerční licencí.

Nevýhodou je opět velikost editoru, ten je ještě o něco větší než TinyMCE. Integrace editoru rovněž bez problémů.

WYMeditor
Třetí zástupce, WYMEditor, si získal mé srdce svou velikostí, která se drží v základu pod 0.5 MB. Takže odpadá otravné a zdlouhavé nahrávání na FTP.

Tento editor se navíc snaží striktně dodržovat standardy W3C. Což jenom chválím! Smutné je, že nefunguje v Firefox 3. Snad se do budoucna dočkáme nějaké opravy (Google Chrome to zvládá).

markItUp
Poslední komentovaný editor markItUp trochu vybočuje z řady. Není totiž WYSIWYG. Spíš je to takový užitečný pomocník, který Vám usnadní zápis HTML, Wiki Syntax nebo BBCode. Navíc si editor můžete rozšířit i o další syntax (např. Texy!). Tento editor je rovněž možné získat zdarma pod MIT/GPL.

No a na závěr ještě několik dalších odkazů:

#programovani, #webdesign
26. 9. 2008

Google Moderator – co si žádá lid

oogle Moderator je nová webová aplikace ze stáje Google App Engine. Moderator je druh veřejného chatu v němž mohou lidé zapisovat svá vyjádření nebo postřehy k různým tématům. Možná si říkáte nic převratného.

Každý z uživatelů si může vytvářet vlastní tématické okruhy. Nebo se může vyjadřovat k těm existujícím jako jsou například: např. Ask World Leader, Ask a Google engineer a podobně. Stále nic převratného.

A teď to příjde! O veškerých příspěvcích je možné následně hlasovat. Špatné otázky a příspěvky přirozeně zapadnou do propadliště dějin. Ty dobré se vyhoupnou na čelo žebříčku. Google Moderátor Vám pomůže naslouchat hlasu lidu.

Jen tak pro zábavu nadhazuji tato témata:

#google, #weblbinky
22. 9. 2008

Sdílení souborů bez limitu a zdarma

Před časem jsem napsal článek o sdílení souborů na internetu. Dnes jsem narazil na službu MediaFire, která nabízí neomezený prostor pro vaše soubory zdarma. Trošku jsme ji otestoval, zde jsou mé poznatky.

  • Neomezený prostor pro vaše soubory (neomezený download/upload ani šířka pásma).
  • Jednoduchost, bez zbytečných funkcí.
  • Velikost souboru je limitována na 100 MB.
  • Nahrané soubory můžete dělit do složek. Složky je možné sdílet.
  • MediaFire dokáže nahrát více souborů najednou, prostřednictvím flash uploaderu.
  • Své obrázky můžete prohlížet přímo přes rozhraní MediaFire.
  • Soubory je možné nahrát bez registrace.
  • Nepotřebujete nic instalovat – vše běží přes prohlížeč (i když na desktop klientu se prý pracuje).
  • U Free verze nesmíte nahrávat zakódované ZIP soubory.

Myslím, že díky neomezenému prostoru, je tato služba ideální pro sdílení fotografii. Ostatní soubory bych si raději nechal na svém HDD, nikdy nevíte, kdo se bude dívat.

Verze PRO nabízí nahrávání souborů přes SSL. Žádné reklamy, zálohování no a soubory do velikosti 10 GB. Cena za měsíc se pohybuje kolem 6 dolarů – tak6e Vás to na buben rozhodně nepřivede.

#jak-na-to, #weblbinky