úterý 17. července 2007

Cesta webových standardů

Olivier Théreaux na blog W3C napsal příspěvek Cesta webových standardů - Web Standards Do (poslední slůvko je z japonštiny podobně jako v bushido).
Mě zaujal hned první odstavec obracející se k počátkům webu:
Jedna z věcí, díky které se web stal od svých počátků tolik populární, byla snadná práce s ním: HTML bylo jednoduché. Kdokoliv mohl vytvořit webovou stránku. To je stále do jisté míry pravda a díky řadě editorů nebo služeb jako jsou Wiki, Blogy a CMS, kdokoliv může vytvořit webovou stránku. Ale webové technologie jsou dnes bohatší: CSS, skriptování, DOM, SVG, widgety... A z rostoucí bohatosti a složitosti se zrodila nová skupina lidi: weboví profesionálové.
Olivier tímto odstavcem tak trochu přilil vodu na můj mlýn, protože právě o počátcích webu a o velkém významu onoho HTML bylo jednoduché píšu v mé dnešní glose na Lupě s názvem Máte tam chybu, Time...

pondělí 16. července 2007

Sjednocení detekce a aktivace quirks módu

Dnes jsem si všiml další zajímavé vlastnosti HTML5, snahu o alespoň částečné sjednocení quirks módu.

Jedná se o sjednocení detekce quirks módu, takže vlastnost document.compatMode, která je již nyní podporována řadou prohlížečů, bude součástí specifikace.

A dále o částečné sjednocení aktivace quirks módu. Zde je situace trochu těžší, prohlížeče ji mají z historických důvodů implementovánu odlišně a webdesigneři toho hojně využívali.

Jelikož je ale používání zastaralého quirks módu spíše na ústupu a situací "potřebuji prohlížeč A ve standard, prohlížeč B taky ve standard a prohlížeč C ve quirku" pomalu ubývá ve prospěch "standard mód ve všech prohlížečích", není důvod proč situaci nesjednotit a tím jen dále podpořit motivaci pro používání standard módu.

Sjednocování aktivace quirks módu mezi prohlížeči ostatně již probíhá, např. do WebKitu (Safari) byl Davem Hyattem vložen kód pro aktivaci quirk módu z kódu Mozilly. Následně se z WebKitu tento kód dostal i do KHTML (Konqueroru). Nezjistil jsem verze prohlížečů, ve kterých ke změně došlo, ale úprava proběhla asi v roce 2004. Poslední verze těchto tří prohlížečů se již chovají (až na některé výjimky, na které by webdesignér běžně neměl narazit) stejně. Zbývají tedy odlišnosti u Opery a Internet Exploreru, oba se zatím v tomto směru nevyjádřili.

Zpráva z telekonference: začínáme s revizí

Minulý týden proběhla další telekonference pracovní skupiny pro HTML (záznam z jednání). Zdá se, že se HTML WG konečně posune v revizi adoptovaného HTML5.

Možná se dokonce podaří vyhnout diskusím všech 483 členů o každé maličkosti. Musím říct, že mě tyto diskuse občas připadají nekonečné (už jste se někdy na něčem dohadovali v počtu 500 lidí?). Jednotlivé sekce specifikace dostali přiděleni dobrovolníci, kteří mají s danou oblastí zkušenosti. Dan Connolly říká:
goal is to have each section read by at least 2 WG members by the end of July or August... I don't expect we'll fix the issues that get raised before publishing, but we'll have some knowledge of what we're publishing
Jsem zvědav, zda se to podaří splnit, někdy na podzim bychom se mohli dočkat vydané první pracovní verze specifikace.

Dan si dále stěžuje, jak je obtížné v tak velikém počtu diskutujících sledovat celou diskusi, obzvláště když se diskutuje na několik témat zároveň (jeho roli mu nezávidím, celý mailing list jsem přestal číst již před měsíci a vybírám si jen zajímavá témata - jen za první polovinu července přišlo 770 mailů):
asked for advice from the AtomPub chairs; their situation is similar to ours in that it's a large email-based collaboration. But there are differences too.
... Mostly, I encourage a few topics and tolerate everything else. Sometimes saying "stop talking about X" results in more discussion of X rather than less.
Pořád čekám, že někdo přijde s geniálním nápadem, jak spolupráci tak velkého počtu lidí (navíc většina z nich spolupracuje dobrovolně ve svém volném čase) zkoordinovat.

čtvrtek 12. července 2007

HTML5 časem i v PHP

HTML5 parser bude i pro PHP. Objevily se dva projekty, které se o implementaci snaží. V tuhle chvíli jsou na úplném začátku a nemá cenu je ještě zkoušet, pomalu rostou na adresách:

http://php-html5lib.dashslot.net/svn/trunk/
http://geoffers.no-ip.com/svn/php-html-5-direct/src/trunk/

Uvidíme, zda se autoři spolu dohodnou a vytvoří jeden projekt, nebo budou pokračovat každý sám.

Zdroj: #whatwg

Budoucnost webu očima jeho tvůrce

Magazín ITworld.com přinesl rozhovor The future of the Web as seen by its creator, ve kterém zpovídá tvůrce webu Tim Berners-Leea. Rozhovor se točí okolo sémantického webu, ve kterém TBL vidí budoucnost.
So, for example, if you are looking at a Web page, you find a talk that you want to take, an event that you want to go to. The event has a place and has a time and it has some people associated with it. But you have to read the Web page and separately open your calendar to put the information on it.... So the Semantic Web is about data integration.
V současnosti jsou realizaci sémantického webu nejblíže asi Mikroformáty, které se snaží o jeho integraci do HTML. Pokud jste o Mikroformátech neslyšeli, přečtěte si čtyřdílný seriál Microformats Alexa Faaborga, který mimo jiné představuje Operátor, což je experimentální rozšíření Firefoxu o podporu Mikroformátů nebo se podívejte na Alexeovu prezentaci z web2.0Expo (50MB, PDF).

Rozhovor se dále točí okolo Web 2.0, Web 3.0 (z rozhovoru si můžete všimnout, že TBL má v obou termínech jasno).
IDG: So what's the difference between a Web of documents and a Web of data?

Berners-Lee: There are many differences between documents and data. Take, for example, your bank data. There's two ways you could look at it. If you just look at a plain Web page, then it looks like a sheet of paper. All you could really do is read it. Now if you look at it on a Web 3.0 site, you could maybe use a Java search to change the order of the data, and you could reach much better access to data.
TBL je jednoznačně pro zachování neutrality Internetu.
We've seen cable companies trying to prevent using the Internet for Internet phones. I am concerned about this, and am working, with many other committed people, to keep it from happening. I think it's very important to keep an open Internet for whoever you are. This is called Net neutrality. It's very important to preserve Net neutrality for the future.
V rozhovoru najdete odkaz na první dokument, který popisoval, jak má vypadat budoucí web (tehdy byl web ještě myšlen pouze pro interní potřeby CERNu).

Všimněte si nadhledu TBL. Nehovoří vůbec o současných problémech (X)HTML nebo o připravovaném (X)HTML5. To vše je jen drobným detailem na dlouhé cestě ve vývoji webu.

středa 11. července 2007

Proč potřebujeme HTML5?

Karl Dubost napsal Why HTML 5 Specification Matters?, příběh jednoho nefunkčního webu v prohlížeči Safari, ve kterém vysvětluje, proč web zoufale potřebuje specifikaci HTML5. Píše:
The browser implementer had clear instructions for this type, was able to implement it, and then to create an interoperable recovery system for this type of mistake. The Web users finally were able to access the Web site without troubles and in the same way than with other browsers. HTML 5 Specification matters because it creates more interoperability when recovering from errors.
Více jsem se o zmíněném problému rozepsal na jiném blogu v Proč HTML5 potřebujeme jak prase drbání?.

Dvě části HTML5

HTML5 lze pomyslně rozdělit na dvě velké části. Tou první jsou novinky (ty tentokrát ocení více weboví vývojáři něž webdesignéři) a tou druhou je jednoduše řečeno oprava stávajícího webu (viz předchozí příklad se Safari).

Vzpomenu příspěvek Fixing the web! od Anne van Kesterena, který se k problematice vyjadřuje:
Apparently it is not very clear what HTML5 is about. HTML5 is not just about introducing new features. 90% of HTML5 is about fixing existing standards.
S těmi 90% to Anne trochu přehání, já bych to odhadoval spíše 50 na 50.
Indeed, HTML5 is mostly about fixing existing standards so they can be implemented interoperably by user agents. These standards include HTML4, XHTML1 and DOM Level 2 HTML as well as defacto standards such as innerHTML.
Pravdou je, že někteří kritici tvrdí, že by k tomu mělo dojít postupně. Napřed "opravit web" a až po té přicházet s novinkami (viz Adamův příspěvek Zastavit inovaci Webu?). Problém je, že web má už v téhle chvíli zpoždění, které by se mu nemuselo v budoucnu vyplatit.
The reason we are introducing new features as well is because we need to innovate the open web to keep it on a level where it can compete with proprietary technology. Focusing on both new features as well as trying to increase the level of interoperability is in my opinion perfectly feasible and also the right way to move forward.
Potřebujeme obojí, jak novinky, tak vyřešení stávajících problémů webu. Zbývá jen doufat, že na ten velký krajíc bude W3C a WHATWG stačit.

HTML5 i v Javě

Henri Sivonen před několika minutami oznámil zahájení práce na HTML5 parseru v Javě.
There's now a limping development version of an HTML5 parser in Java that interested parties may try out:
svn co http://svn.versiondude.net/whattf/htmlparser/trunk/ htmlparser

Warning: This isn't at all ready for any kind of production use. The purpose of this email is just to let interested parties know the status of the project.
Goals:
Provide an HTML5 parser that works as a drop-in replacement for an XML parser in non-browser Java apps that expect XML APIs. Make the parser strict enough for conformance checking (including encoding errors, etc.).
License:
MIT/expat. Patches welcome under the same license.

Acknowledgments:
Thanks to the Mozilla Foundation for funding this project. Thanks to the html5lib team and Philip Taylor (of the lazyilluminati fame) for test cases and bug reports.
Po projektu html5lib, který je v Pythonu a v pokročilém stádiu vývoje, se jedná o druhý připravovaný HTML5 parser. Oproti klasickým HTML parserům, které jsou k dispozici prakticky pro každý programovací jazyk, HTML5 parsery implementují relativně obsáhlou část specifikace HTML5 (bod 8) která pojednává i o neobvyklých stavech včetně toho jak parsovat tag soup.