Who Cares About Web Standards?
This was the rather controversial opening salvo from Andy! He began by giving us a brief history of standards – not just web, but standards in general. From one of the earliest in 1120 when King Henry I defined the L unit of measure (the length of his arm!) through the inventions of the wooden screw by the Romans, and the subsequent standardisation of screws and other machined parts by Sir Joseph Whitworth in 1841, when the Industrial Revolution was in full flow.
Whitworth was in charge of Babbage’s Works where the first mechanical computer, the Difference Engine, was made. By 1860, Whitworth’s screws had become the de faco standard, certainly in the UK. Meanwhile in the US, William Sellers proposed a different standard (sounds familiar?!) to help build the railroads. This was all fine until towards the end of the second World War, when the US was supplying England with a lot of spares for machinery and the war effort – and they were having to make two version of everything. Eventually the UK capitulated and the US standard became the very first official standard for anything. Now there are over 800,000.
When implemented, standards should:
- Ease communications and inter-operability. Buy a new DVD player and plug it into your TV and it should work.
- Make life easier. You can buy a toaster safe in the knowledge that its plug will fit the sockets in your walls.
- Be a measure of quality, or level of expertise, a mark of professionalism.
- Ensure safety and durability.
There are different types of “standard” – Official, de facto, (non regulated but ubiquitous), open, proprietory. When standards work well, you tend not to think about them.
What’s this got to do with the web?
During the Browser Wars, the languages such as HTML and CSS were produced and expanded by the browser manufacturers. By pushing their own “standards” they set out to monopolise. When the W3C came together and put together language recommendations (they are still not standards!), and developers put pressure on the browser manufacturers to support them coherently. All modern browsers support the W3C recommendations – some just do it better than others! The term “web standards” was coined by Jeffrey Zeldman and the WaSP project.
The Philosophy Behind “Web Standards”
- Communication – easier to hand over to other developers (or come back to yourself in six months’ time)
- Inter-operability – more accessible, forwards-compatible, multiple device support for phones, PDAs, text readers, microformats etc
- Make life easier – code can be more easily maintained
- Safety & durability – code less likely to “break” and should last longer
- Guarantees a level of expertise – proves you are resonably proficient as a developer and should help eradicate the FrontPage Cowboys 😉
- Mark of professionalism – you will stand out from the crowd
Things Aren’t Perfect
Standards-complient pages not necessarily load up faster – the number of packet (file) requests can slow things up, so if you have 2 or 3 CSS files associated with a page, there can be a bigger “up front” hit on speed when a visitor first comes to your site, although subsequent pages may well be quicker to load. There is the benefit of less code bloat without all those <table> and <font> tags though.
Huge CSS files can be very difficult to maintain, especially when the full consequences of the cascade are taken into account. Presentation is still tied to content (to a much lesser extent) as the CSS/layout you choose is often influenced by the code order of the document itself. It’s much better than it was.
Full CSS Layout is less than ideal at times. Floats are really a buggy hack, but it’s the best we’ve got. Browser implementations for things like <fieldset> and <legend> are still inconsistant (handles padding and margin differently). Advances in XHTML and CSS are beginning to stall. When is CSS3 due? XHTML isn’t great for marking up applications as opposed to static documents, or for microformats.
Are standards becoming irrelevent?
Almost reached a tipping point where “everyone” is doing it – so why should we keep going on about it? Development using the standards should be a no-brainer – why do it any other way? Besides, most clients don’t care as long as the job gets done, so just do it that way and don’t go overboard in advertising the fact. A couple of lines in your proposal documentation (to the effect that “we will use the appropriate web standards” is sufficient).
The focus needs to change more towards:
- User Experience
- Client and user goals
Andy’s slides can be downloaded from his website.
Geeky Prize Comeptition!
To tie in with Andy’s fixation with screws, here’s a little bit of fun…
Despite the US standard for screws taking off after WWII, you can still find a ¼-Whitworth screw/thread in common usage today. I will award a pack of 4 hand-made greeting cards of your choice to the first person who can tell me where.
Oh lord, I’ve just spotted myself in the audience shots which Christian uploaded to Flickr.