DEV Community

Cover image for Web Standards
Filippo Mangione
Filippo Mangione

Posted on

Web Standards

Lately I've been discussing with some collegues of mine about the current state of web standards. Is searching on caniuse.com reliable enough?

So I decided to clear it out. This article was not meant to be a comprehensive history of the internet and the web, but just a few notes about organizations and processes that defines technologies we build with.

W3C

The World Wide Web Consortium was founded in October 1994 by Tim Berners-Lee. It's a non-governmental organization that aims to develop and enhance the web. It currently counts more than 400 members including Google, Mozilla, Apple, Microsoft and Amazon. It establish technical specs concerning both markup languages and communication protocols.

W3C is made up by:

  • the Advisory Committee which is formed by members from companies registered in the W3C and he is in charge of reviewing W3C's plans and working on revisions of currently existing technologies.

  • the W3C Team made up by paid professionals whose take care of organizing and managing the group's activities.

  • the Advisory Board which is has no other responsability but to give advice.

WHATWG

On 2004, some of the members of the W3C, worried about the the apparent disregard of the Consortium for the real developers'needs, decided to found a new group that would be focused on a solid and coherent evolution of technologies.

The Web Hypertext Application Technology Working Group is a community of people (from Apple, Mozilla Foundation, Opera Software, Google and more) interested in evolving the web through standards and tests. Back in the days, the new XHTML2 was uncompatible with old browsers capable of reading HTML 4.01. WHATWG wanted to evolve HTML(5) functionalities without "breaking the web". Ignore the unknowns and graceful degradation were the new principles, allowing old browsers to keep exposing content at the cost of an aesthetic degradation.

On 2007 they presented a paper with the Proposal to Adopt HTML5 to the Consortium which agreed with the content and on January 2008 the W3C publish the first working draft of the specification.

Eventually the two groups split on 2012. WHATWG continued to work on an HTML Living Standard, while on 2014 W3C made its first HTML5 recommendation public.

From that moment things started to get a bit intricate... Both groups working on the development of HTML5 and generating some inconsistancies which led to a conflict well explained by Domenic Denicola in this Reddit thread.

Two competing standard where harmful, but eventually on 2019 the two reached an agreement based upon W3C recognizing WHATWG's authority over HTML and DOM specs.

Currently the WHATWG is continually working on a living standard while the W3C standard is just a snapshot-based and static version of the WHATWG one.

Alt Text

So how do we evaluate how safe is a web technology implementation?

I already mentioned the awesome caniuse.com, but we can go directly to the source.

W3C Specs Maturity Levels

When dealing with W33 standards, the process document reports several different stages:

Working Draft (WD) is a document that W3C has been published for review by the community, including W3C Members, the public and other technical organizations.

Candidate Recommendation (CR) is a document that W3C believes has been widely reviewed and satisfies the Working Group's technical requirements. W3C publishes a Candidate Recommendation to gather implementation experience.

Proposed Recommendation (PR) is a mature technical report that, after wide review for technical soundness and implementability, W3C has sent to the W3C Advisory Committee for final endorsement.

W3C Recommendation (REC) is a specification or set of guidelines that, after extensive consensus-building, has received the endorsement of W3C Members and the Director. W3C recommends the wide deployment of its Recommendations.

WHATWG Living Standard

WHATWG standars ara always up to date and the process is rather informal. Everyone can contribute, no memberships fees is involved, it’s open to collaboration through github and a few other channels.

Standards are detailed enough to ensure all implementation (like browsers) do the same things. It's quite stable and evolves carefully, not breaking backward compatibility.

Top comments (0)