Archiv tagů o’reilly

Web jako platforma

Web jako platforma (Web as Platform) byl původně obchodní model navržený společností Netscape, jednou z typických společností, které ovlivňovaly vývoj internetu v době Webu 1.0. Netscape se snažila se svým (tenkrát velmi používaným) prohlížečem převzít kontrolu nad tím, jaký obsah a aplikace budou uživatelé používat při navigaci internetem – stejně tak, jako měl Microsoft pod kontrolou PC trh desktopových aplikací. Jejich „webtop“ měl nahradit klasickou uživatelskou „plochu“ (desktop), kterou nabízel operační systém. Tento „webtop“ by nabízel informace a aplikace od poskytovatelů obsahu, kteří by si nakoupili vysokorychlostní servery od společnosti Netscape.

O’Reilly dává do kontrastu k tomuto modelu přístup společnosti Google. Ta začala nabízet nativní webové aplikace poskytované jako službu zákazníkům, platícím jak přímo, tak nepřímo. Google je také jasná ukázka přístupu „věčné betaverze – perpetual beta“ – jeho aplikace nemají žádné pevné verzování nebo pravidelné vydávání a jejich funkcionality jsou aktualizované průběžně. Takový druh aplikací nevyžaduje portování na jiné systémové platformy a díky webovému prostředí nevyžaduje ani klasickou distribuci ve formě instalačních souborů, jak je známe u tradičních desktopových softwarů.
Někteří vizionáři si dokonce myslí, že by časem bylo možné programové vybavení instalované na dnešních PC zcela nahradit právě webovými aplikacemi (Antoš, 2007b).

Zčásti je tento proces přesunu práce z desktopu na web viditelný již dnes, například balík kancelářských aplikací Google Docs and Spreadsheets (s mnohými alternativami), sada nástrojů Microsoft Live nebo nedávno uvedený „webový Photoshop“ společnosti Adobe na úpravu fotografií. Byl by to v jistém slova smyslu návrat k tenkým klientům a terminálům. Kritici často namítají, že provozovat na webu plnohodnotné aplikace s množstvím funkcionalit, jak je známe z desktopů, není možné. Novátorská firma 37signals však dokazuje, že ne vždy je podstatné nabídnout plnou sadu funkcionalit. Na základě výzkumů postupů, které lidé při práci nejvíce používají, nabízí aplikace, které „dělají přesně to, co potřebujete, a nic navíc“.1

O’Reilly dále říká, že v minulosti Microsoft dokázal vítězit nad svými rivaly právě svou platformou – při masovém nasazení Windows nebylo nic jednoduššího než naprogramovat balík kancelářských aplikací tak, aby fungoval v dokonalé symbióze s operačním systémem. Stejný příklad bychom mohli najít i na poli internetových prohlížečů, kde celkové zakomponování do operačního systému bylo ještě markantnější (viz princip „uzamčení“ v kapitole o síťových efektech). V dnešní době se ale střet neodehrává mezi aplikacemi na platformě operačního systému (aplikace vs. konkurenční aplikace), ale o jednu úroveň výš – tedy přímo mezi platformami (operační systém vs. web jako dvě platformy). S tím také souvisí, že internet a www už nejsou pouze doménou osobních počítačů, silnými hráči se stávají také mobilní telefony, PDA nebo konzole2 s vlastními operačními systémy. A cílem je, aby uživatelé, díky webovým aplikacím běžícím pouze v prohlížeči, nepoznali rozdíl, ať už pracují na svém osobním počítači nebo mobilním telefonu. To bude vyžadovat větší důraz na dodržování standardů jak na straně webu, tak na straně klientů, což dnes rozhodně není pravidlem. Jako důsledek této nedisciplinovanosti uveďme příklad velmi časté rozdílné interpretace kaskádových stylů u dnešních prohlížečů. Více se problému budeme věnovat v kapitolách o technologiích.

  1. Zde by autor doporučil zhlédnout záznam přednášky „The Story of Ribbon“ z vývojářské konference Microsoftu, ve které je vysvětleno, co vedlo ke změně uživatelského rozhraní v balíku MS Office 2007. Bylo to zjištění, že největší masa uživatelů používá pouze základní funkcionality.
  2. Či domácí spotřebiče

Datová základna

Zásadní význam pro Web 2.0 služby má práce s daty, která při jejich používání poskytují uživatelé. O’Reilly dává ve své práci za příklad společnost Google, o které říká, že její hlavní kompetencí je právě správa obrovské databáze – říká, že systém má o to větší hodnotu, čím je větší šíře dat a schopnost je spravovat (O’Reilly, 2005b). Dalším příkladem výtěžnosti datové základny je Amazon (a mnohé další obchody) a jeho schopnost doporučovat další produkty k nákupu. Systém ukládá všechny nákupy a je schopen pomocí agregace a jakéhosi „data miningu“ doporučovat uživateli jiný vhodný nákup (pokud se vám líbí toto, tak by se vám mohlo také hodit toto). Zde se automaticky otevírá otázka, jak mohou společnosti s těmito daty nakládat. Kupříkladu webová aplikace pro správu elektronické pošty Gmail využívá automaticky analyzovaná data z uživatelových e-mailů k zobrazování kontextové a „personalizované“ reklamy. Právní otázkou je také, komu vlastně uživatelem vytvořená data patří. Uživatelé proto před použitím většiny služeb musí potvrdit základní právní ujednání. Problémem jsou pak rozdílné pohledy na legislativu v jednotlivých zemích, které vznikají díky globální povaze internetu, pro který hranice neexistují (např. server je umístěn v USA, ale uživatel je z EU) (Anderson, 2007).

Technologické aspekty Web 2.0

S vývojem zobrazovacích technologií a levného broadbandového přístupu se rozvíjely i technologie a standardy pro zobrazování webového obsahu. Prvotní neúspěch DHTML, které bylo založené na kaskádových stylech CSS (cascading style sheets) a skriptovacím jazyce Javascript, byl zřejmě způsoben zuřící válkou browserů. Pro nestandardní interpretace jazyků bylo nutné (a doposud je) optimalizovat webové zdroje pro různé typy prohlížečů. Uživatelé zároveň chtěli něco víc než blikající nadpisy. V té době se také masivně rozšířila technologie Flash od firmy Macromedia (dnes Adobe).

Pro tyto zdroje, které se v mnohém dokázaly chovat jako běžné aplikace spustitelné na PC, se vžilo pojmenování Rich Internet Applications (RIA). Ale zřejmě to, že je nutné pro zobrazení flashových aplikací instalovat speciální zásuvný modul a že pro vývoj těchto aplikací je nutné vlastnit placenou licenci, zapříčinilo, že Flash byl vždy vnímán jako pouze doplňkový (chcete-li okrášlující či prezentační) prvek na klasických HTML stránkách. Určitá nevýhoda Flashe se také objevila v nesnadné portaci zásuvného modulu na jiná zařízení než klasické prohlížeče na PC (mobilní telefony, PDA). Další technologie, které nebyly příliš úspěšné, jsou aplety napsané v jazyce Java a ActiveX společnosti Microsoft (Loosley, 2006).

Svou roli také zřejmě sehrál vznik open source projektu Mozilla. V roce 1998 jej založil Netscape po krachu svého prohlížeče Netscape Navigator, kdy uvolnil převážnou část zdrojových kódů (které ovšem byly později zcela přepsány). Start projektu Firefox přinesl značné oživení obecného povědomí o W3C standardech. Odborná veřejnost se začala více zajímat, jak jsou jejich stránky zobrazovány. Přibližně ve stejné době zveřejnila skupina W3C jazyk HTML 4.01 a hlavně XHTML, který byl reformulací HTML jazyka za použití XML.

Nic z toho ovšem nespustilo revoluci1, o které jsme v předchozích kapitolách mluvili jako o Web as Platform. Tím bylo až, jak říká O’Reilly, spuštění dvou aplikací společností Google: Gmail a Google Maps (O’Reilly, 2005b). V těchto aplikacích byl, krom tradičního HTML, spojen jazyk Javascript (na straně klienta) a jazyk XML (na straně serveru). Jazyk Javascript se používá v asynchronním módu pro načítání částí stránky. Tím byla v podstatě poprvé použita sada technologií označená jako Asynchronous Javascript + XML – zkráceně AJAX. Zmíněným asynchronním přístupem se značně snížila doba odezvy RIA aplikací:

  • informace jsou načítány ze serveru s předpokladem dalších možných požadavků uživatele (například načítání okolních čtverců zobrazené mapy, aby byl pohyb myší ve všech směrech plynulý),
  • prvky na stránce mohou být překresleny po částech namísto nutnosti nového načtení celé stránky,
  • vstupy od uživatele je možné serveru posílat v předem zvalidovaných dávkách (validace probíhá pomocí Javascriptu již na straně klienta),
  • odezvy na některé vstupy uživatele mohou být generovány bez komunikace se serverem,
  • data, která už jednou byla zpracována serverem, mohou být uložena na straně klienta pro pozdější použití.
  1. Která je ve skutečnosti evolucí.