čtvrtek 7. října 2010

Nepoužívejte HTML5! Ještě ne! Prosí nás prý W3C

Používáte HTML5? Tak toho nechte. Aspoň prozatím. Na HTML5 je ještě brzy! Zhruba v tomto smyslu vyznívá včerejší rozhovor InfoWorldu s Philippem Le Hégaret z W3C. Ten citují další a další média a začíná se šířit internetem. A spolu s ním se šíří nepochopení. Co nám to ten Philippe z W3C chce vlastně říct? A proč? Zkusím to vysvětlil. Po lopatě.

Není to nic nového. V zásadě se jedná o odlišný pohled na dokončení specifikací mezi těmi, kdo specifikaci tvoří, a těmi, kdo ji používají. Vraťme se o tři roky zpátky, kdy autor HTML5 Ian Hickson prohlásil, že HTML5 dokončí někdy roku 2022.

Celý svět si tehdy ťukal na čelo. Za patnáct let? Opravdu to nebude dřív hotové?

Ian reagoval ve smyslu: Vy to začnete používat mnohem dřív, ale pro nás to bude hotové až okolo 2022. (Podrobněji viz Jak je to s termínem dokončení HTML5? z 2007)

Měl pravdu. Uplynuly tři roky (žádných patnáct!) a zdá se, že HTML5 opravdu začneme používat. Někdo letos, jiný možná za rok či dva, ale v zásadě se jedná o dnešní záležitost. (Na řadě webů ho spokojeně používáme už nějaký ten pátek a možná o tom ani nevíme.)

Z HTML5 se stal buzzword značící pokrok a firmy se předvádějí v jeho skloňování na svých prezentacích.

Realita se ovšem nezměnila. K dokončení HTML5 opravdu bude třeba ještě řada let (možná těch 10), podobně jako dosud není dokončené CSS2. (Překvapeni? Ono ale opravdu není!) V tom spočívá ono odlišné chápání dokončených specifikací. A z tohoto pohledu má Philippe z W3C pravdu, když upozorňuje, že HTML5 není ještě hotové, že není ještě dost ready.

A vadí to něčemu? Může nastat problém?

Popravdě může. Nemusí, ale může. Při takovém rychlém postupu vpřed bez koukání vlevo vpravo se může objevit menší či větší problém. Tím nejznámějším a nejrozsáhlejším problémem, který v minulosti přesně z tohoto důvodu nastal, byl rozdvojený box model.

Kdo děláte weby už pár let, vzpomínáte na odlišný box model Internet Exploreru a ostatních prohlížečů? Drobné nedopatření, za které jeden viní Microsoft, druhý W3C, ale pravdou je, že se jednalo o oběť rychlého pokroku. Tahle "drobná procesní chybka" pak dobrých deset let iritovala nějaký ten milion webových vývojářů.

Podobné chyby s obdobně velkým dopadem můžou vzniknout i dnes. A to je to, co se nám Philippe z W3C snaží říct.

Ne nadarmo se říká, že pokrok si žádá oběti. Naštěstí dnes už jsme si zvykli záplatovat podobné problémy různými frameworky. Ono komu by vadilo, kdyby existovalo třeba 5 různých nekompatibilních API k HTML5, když by mohl používat jeden JS framework, který za něj ty rozdíly vyřeší?

Čili dá se říct, že dnešní doba je připravena podobným problémům čelit lépe, než doba před nějakými 10 lety.

Proto nezbývá než Philippovi do W3C vzkázat, že děkujeme za upozornění, ale my to prostě risknem.