úterý 10. července 2007

WHATWG - jak to začalo

S trochou nostalgie jsem dnes četl oznámení o založení WHATWG, na které jsem po letech narazil (tenkrát jsem o tom dokonce napsal zprávičku). V oznámení z 4. června 2004 stojí:
Some of you may be interested to hear that people from Opera and Mozilla have set up an open mailing list for discussing Web Forms 2 and other new specs that have been discussed in various places over the last few months.
The group is working on specifications for Web Forms 2.0, Web Apps 1.0, Web Controls 1.0 and a CSS object rendering model. This work will be largely done outside of the World Wide Web Consortium, though finalised versions of the specs are expected to be submitted for formal standardisation. While the decision to operate independently of the W3C may be seen as controversial, many feel that formal standards bodies move too slowly to react to proprietary technologies such as Microsoft's forthcoming XAML. In addition, many in the W3C are pushing for Web applications standards based on technologies such as XForms and Scalable Vector Graphics, whereas the members of the WHATWG favour backwards-compatible HTML-based solutions, which they believe would be easier to implement and more likely to be adopted by Web developers.
Je vidět, že po třech letech WHATWG plní, co slíbila (během let se vytratil ten CSS rend. model, přiznávám se, že nevím kdy a proč), tak doufejme že v roce 2010 vydá W3C slíbenou specifikaci, kterou ve spolupráci s WHATWG dokončí.

Dnes ze zmiňovaného XAML vyrostl Silverlight a máme tu Adobe AIR a JavaFX. Ti všichni začínají tam, kde dnešní HTML končí a HTML5 hodlá hranice HTML v mnohých směrech rozšířit. Už bylo načase.

Applety na odchodu a proč nejsou Sun a Adobe v HTML WG

Když jsem včera psal o přehledu HTML značek, všiml jsem si, že <applet> v nových verzích specifikací chybí. A to nejen v HTML5, ale již ve striktním XHTML1. Rozdílový HTML5 dokument o nich říká:
applet has been obsoleted in favor of object
Java applety jsem nikdy neprogramoval a nedokážu posoudit, zda je <applet> pro programátory výhodnější, než vkládání appletů prostřednictvím <object>ů a <embed>ů.

Nicméně jen existence značky <applet> s sebou nesla jakousi výjimečnost Java appletů mezi ostatními pluginy (poslední dobou zejména před Flashem) a v době, kdy se Sun snaží vrátit Javu na web s JavaFX, se každý zásek navíc počítá. Překvapilo mě, že jsem k tomu nenašel žádnou větší debatu. Nějaký pokus Sunu celé téma znovu otevřít.

A následně jsem si všiml, že Sun, ačkoliv je členem W3C, není členem HTML WG. Přiznávám, že mě to zmátlo. Pokud chce prosazovat Javu na webu, bude na možnostech webu a HTML závislý a je sám proti sobě, když se neúčastní diskusí, které tvář budoucího webu formují.

Stejně je na tom i společnost Adobe, která je členem W3C, ale nemá žádného zástupce v HTML WG. Přitom i její produkty postavené na Flashi (Flex, AIR) jsou na HTML a webu závislé, dokonce mu v některých směrech i konkurují (možná, že to je onen kámen úrazu?).

HTML WG je otevřená skupina a mezi 482 členy najdeme kromě stovek jednotlivců zástupce řady společností, které jsou na webu a HTML závislé, nejen výrobce prohlížečů, ale i Google, Yahoo, IBM a pro mne stále nepochopitelnou The Boeing Company.

Nedělají Sun a Adobe chybu, když se vzdávají možnosti ovlivnit vývoj webu? Čte tento blog nějaký programátor v Javě nebo Flashi, který by pomohl problém objasnit? Přiznám se, že mne tohle téma zajímá.

pondělí 9. července 2007

Najde se řešení pro jméno XHTML5?

Spor, jak se bude jmenovat XHTML5 stále není vyřešen. Téma je citlivé, na společnou dohodu to zatím nevypadá.

V sobotu jsem na IRC WHATWG na toto téma našel zajímavou diskusi. Jen několik citací, doporučuji přečíst kompletní.
<hsivonen> MikeSmith: the XHTML2 WG is confusing things by calling something that isn't an XML formulation of HTML "XHTML" for their marketing purposes
<Hixie> MikeSmith: even if we use a different name, people will still refer to "xhtml", and the version of the language is "5" (as in html5), so they'll call it "xhtml5".
<Hixie> "-//W3C//DTD XHTML 1.0 Transitional//EN" is the most common DOCTYPE

středa 4. července 2007

Který prohlížeč první implementuje video? (aktualizováno)

Håkon Wium Lie na jaře prohlásil, že do konce tohoto roku tu bude několik prohlížečů podporujících <video>. Jak jsme na tom v začínajícím rozpuku léta?

V oficiální verzi zatím žádný z prohlížečů podporu nevydal. Nicméně:
Máte tu pěknou trojku Opera, Firefox a Safari. Všichni tři experimentují s podporou <video>.

Zdá se, že Håkonův odhad byl správný. Teď už jen můžeme čekat, kdo z nich jako první začlení podporu <videa> do další verze.

Microsoft se zatím nevyjádřil, ale ten nejspíš bude hrát na jistotu. Na rozdíl od implementace dosud nedokončeného <videa> si počká, až bude specifikace uzavřená a pak (snad) podporu do Internet Exploreru přidá. Navíc Chris Wilson naznačoval, že IE bude HTML5 pravděpodobně podporovat ve zvláštním módu, který neovlivní stávající zobrazovací módy (ke dvěma zobrazovacím módům, které IE používá, pravděpodobně přibude třetí pro HTML5).

To by nasvědčovalo, že podpora HTML5 se v IE objeví skokem a nikoliv po jednotlivých částech, jako to dělá trojka zmíněná S. O. F. (Save Our Fear).

neděle 1. července 2007

Obecné stylesheety pouze v hlavičce

Před měsícem jsem ve spotu Obecné stylesheety pouze v hlavičce? psal o debatě mezi Hyattem a Glazmanem na téma <style> pouze v hlavičce.

Nedávno byl výsledek zanesen do specifikace. V té v tuto chvíli o <style> stojí:
Contexts in which this element may be used:

If the scoped attribute is absent: in a head element.
If the scoped attribute is absent: in a noscript element that is a child of a head element.
If the scoped attribute is present: at the start of article, aside, div, and section elements.
Pokud dobře čtu DTD HTML4, tak samotné <style> bylo povoleno pouze v hlavičce dokumentu. Takže podstatnou změnou je pouze zavedení <style scoped>.

Pozorný čtenář si mohl všimnout další, byť nesouvisející změny a tou je povolení <noscript> v hlavičce dokumentu, které v HTML4 nebylo (HTML4 povolovala v hlavičce <script> ale již nikoliv <noscript>), více viz vlákno v mailinglistu. Kromě možnosti CSS aplikovaného pouze v případě vypnutého JavaScriptu se nabízí využití pro metarefresh, pokud je zapotřebí průběžně obnovovat stránku a oddělit JavaScriptové řešení (používající např. XHR) a klasický metarefresh.

čtvrtek 28. června 2007

Rozdíly HTML4 a HTML5 smeřují k Working Draft

Ačkoliv podle původních plánů měla být během června zveřejněna první pracovní verze (working draft) specifikace HTML5, pracovní skupina nestíhá a je zřejmé, že k tomu v červnu (a odhaduji, že ani v následujících měsících) nedojde. Specifikace HTML5 čítá asi 300 stran a její revize se podle mne potáhne alespoň čtvrt roku.

HTML WG v této chvíli dokončuje dokument obsahující přehled hlavních rozdílů mezi HTML4 a HTML5. A předseda Dan Connolly vyzval členy, aby hlasovali, zda chtějí tento dokument vydat jako working draft. Průběžné výsledky hlasování vyjadřují s tímto návrhem souhlas. Odhaduji, že začátkem července bychom se vydání sumarizujícího dokumentu mohli dočkat.

Z hlediska vlastního vývoje HTML5 to není žádný zásadní krok, na specifikaci se bude pracovat stejně jako před tím. I takto zveřejněné věci se mohou měnit a dále vyvíjet.

Větší rozdíl nastane ve vnímání HTML5 okolním světem. HTML5 přestane být řadou lidí chápáno jako něco neurčitého, nabyde konkrétnější podoby a určitě se o něm začne i víc psát. Již teď můžete odhadovat, kolik se objeví příspěvků na české scéně souhlasících či nesouhlasících s přidáním nebo zrušením toho kterého atributu, té které HTML značky. A to je účel vydání tohoto dokumentu - připravit veřejnost na novou verzi (X)HTML a získat k ní dostatečný feedback.

pondělí 25. června 2007

Bude Apple implementovat Ogg Theora?

Pod příspěvky na téma video v HTML5 někteří ze čtenářů vyjadřovali obavy, zda opravdu dojde nejen k implementaci elementů <video> a <audio> v prohlížečích, ale i k implementaci společného formátu videa a audia. K tomu specifikace zatím říká:
User agents may support any video and audio codecs and container formats.

User agents should support Ogg Theora video and Ogg Vorbis audio, as well as the Ogg container format.
Ono důležité SHOULD, které v angličtině nevyjadřuje stoprocentní jistotu, je bráno v souladu s RFC2119, kde je definováno takto:
SHOULD : This word, or the adjective "RECOMMENDED", mean that there may exist valid reasons in particular circumstances to ignore a particular item, but the full implications must be understood and carefully weighed before choosing a different course.
Tedy implementace Ogg Theora/Vorbis v tuto chvíli není jednoznačně povinná.

A právě na toto téma se již třetí den diskutuje v konference WHATWG ve vláknu The issue of interoperability of the <video> element, které rozpoutal Ivo Emanuel Gonçalves. Točí se převážně okolo Apple a zda bude či nebude Ogg Theora implementovat.

Maciej Stachowiak z Apple odpověděl prozatím spíše negativně:
Our current plan is to primarily support MPEG-4, including H.264/AVC video and AAC audio. We may support other codecs as well - it won't necessarily be the full set of codecs supported by QuickTime. This has been discussed to death already, but here are our basic reasons:

- MPEG-4 is an ISO open standard (although unfortunately patent-encumbered).
- Ogg Theora/Vorbis offers a royalty-free license for the few known patents, but we would assume additional risk of submarine patents if we supported it.
- H.264 offers considerably better quality at the same bitrate than Theora/Vorbis.
- H.264 is better for video delivery to limited-capability and low-power devices that support hardware video decoding. You may have heard that YouTube will be serving their video content as H.264 to AppleTV and iPhone.

That's our current plan. We may revise it in light of future events, but it is unlikely that even a MUST-level requirement in the HTML spec would have much effect on whether we support Ogg or not.
Jelikož téma výchozí kodek na webu je velmi citlivé, myslím, že do vydání finální HTML5 se můžeme dočkat ještě dalších překvapení (všemi směry) včetně lobbistických pokusů prosadit ten či onen formát. Já se v oblasti kodeků nevyznám, a neodvažuji se cokoliv prorokovat.

Podotýkám, že Opera a Mozilla implementaci Ogg Theora plánují, Microsoft se na toho téma zatím nijak nevyjádřil.