HTML5 selhává v prvním testu

Pozoruhodné jsou poslední události kolem HTML5! Vykládám si je takto:

Proběhly první pokusy napsat webovou stránku v HTML5 (dle současné specifikace). Výsledkem pokusu je, že to není snadné. Potvrdilo se, že specifikace má své nedostatky, že vybízí k interpretacím, neboť nenabízí dostatečná vysvětlení.

Ukázalo se, že HTML5 v praktickém použití selhává. Jak je to možné, když se na specifikaci pracuje už léta? Domnívám se, že je to dáno dvěmi klíčovými fakty:

  • na vývoji se nepodílí dost budoucích uživatelů jazyka (ev. dnešních uživatelů jazyka v jeho starší verzi), takže se odtrhává od reálných potřeb… na druhou stranu můžeme na totéž pohlížet naprosto opačně – jazyk se až příliž ohlíží na dnešní kodérské praktiky a nemá ambice podstatně inovovat; facelift vs. redesign
  • vývoj probíhá v soustředění na detail bez občasné (zřejmě nezbytné) kontroly „z širší perspektivy“. Tím pádem mohou být detaily sebevíce propracované, ale celek nepracuje v zájmu jediného cíle.

První banální pokusy napsat webovou stránku v HTML5 odhalily podivuhodné zádrhely. Specifikace na několika místech kodéra bezúčelně svazuje (přičemž na jiných místech ho nechává dělat velká rozhodnutí).

Konkrétně? John Allsopp v komentáři pod článkem Jeffreyho Zeldmana píše: Zvýraznění je mé.

[…] as I waded deeply through the specification, narrowing my focus largely to the new “semantic” elements like section, article, header, footer, and so on I discovered many ambiguities, poorly explained features, and baffling containment rules like footers may not contain sections (despite a glance at any number of real world examples which show that they frequently do), headers can’t contain sectioning content (which includes navs, yet how many page headers contain navigation of one kind or another?), near byzantine complexities […]

Na druhou stranu je ovšem pravda, že Allsopp zde jaksi automaticky bere vizuální strukturu vyjádřitelnou jen touž strukturou kódu (což s CSS3 template-layout modulem přestává být nezbytné). Ale pomineme-li tyto nové skvělé možnosti, které CSS3 pro konečně precizní oddělení obsahu od formy nabídne, hřebíček byl na hlavičku udeřen. (Pozor, toto je velmi spekulativní úvaha a v žádném případě nechci naznačit, že by snad tvůrci HTML5 počítali s bratrskou pomocí CSS3 – jak sami uznáte, při pohledu na anti-sémantické pojetí HTML5 je to jen ztěží představitelné*.)

Za pozornost stojí také názor Stephena Haye (opět jde o komentář, tentokrát pod článkem Bruce Lawsona). Cituji:

[…] we don’t want to end up doing the following:
<div class="header">
  <header>
  </header>
  <nav>
  </nav>
</div>

simply because we can’t do

<header>
  <nav>
  </nav>
</header>
In that case, HTML5 isn’t helping us one bit.

(Doporučuji přečíst celý komentář, obsahuje pěkné výtky k neopatrnému pojmenovávání elementů a neflexibilitě některých návrhů.)

Co to v souhrnu znamená? Mohu vám říct, co to znamená pro mě. Přestože některé ze zmíněných nedostatků budou pravděpodobně opraveny, nejsem si jist, že mi HTML5 nabídne něco, kvůli čemu bych měl „na HTML5 přecházet“. Alespoň pokud jde o markup, opravdu nevidím důvod, proč by to lidé měli začít používat. Nevídím přínos. Spíše naopak – mou pozornost upoutávají věci, které od „přechodu“ odrazují. Doufejme, že do příštího draftu se věci vypilují. I když osobně jsem skeptický…


* – dobře, tak trochu přeháním…


Komentáře (2)

RSS kanál komentářů

    • Komentář číslo: 1
    • *
    • Jméno: David Grudl
    • Odesláno:
      18.7. 2009 — 17:25

    Ono to není jen o tom, jestli se na vývoji podílí budoucí uživatelé jazyka – je totiž potřeba, aby ten jazyk užívali už dnes. A co nejvíc. Jinak se praktický jazyk vyvinout nedá.

    První experimenty odhalí řadu problémů. Klíčové je, jak na tento feedback bude konsorcium reagovat.

    (ta nápověda vpravo co se sama objeví je kouzelná)

    • Komentář číslo: 2
    • *
    • Jméno: Kahi
    • Odesláno:
      18.7. 2009 — 18:35

    [1] David Grudl: Myslím, že tvému prvnímu odstavci úplně nerozumím. Nepopírám, souhlasím, že nový jazyk musí na ten, který má nahradit, navazovat. Aby byl přechod co nejsnažší. Ale v oné pasáži jsem asi chtěl naznačit toto:

    • pokud jazyk tvoří uživatel, může do něj vložit své aktuální potřeby a půjde o variaci na to, co existuje. Přechod bude snažší, pokrok menší.
    • neuživatel pravděpodobně navrhne abstraktnější jazyk, jehož použitelnost v praxi se bude testovat a možná selže. Případný přechod bude méně snadný, ale pokrok bude větší.

    Pochopitelně jde o plynulou škálu.

    K testu: jistě, je přirozené, že první test selže. Ale musím se divit, že k prvnímu testu došlo teď. Po takové době, v tomto stádiu. Takové chyby měly být odstraněny… dávno.

Přidat komentář

Nápověda ke psaní komentářů

Zde formátuje Texy!

  • *zvýraznění*
  • **silné zvýraznění**
  • > citace
  • "odkaz":http://kam
  • [4] reakce na komentář
  • zdrojové kódy a více

úplně nahoru