The Web Standards Myth’s Debunked
In this article, I will look at some of the misleading arguments used to promote Web Standards.
Before I jump into this, I would like to point out a few things:
- The Web Standards are a good thing since it can make life easier for web designers.
- Theory should not trump practicality. As such, many of my arguments are based on practical considerations.
- -
THE WEB STANDARD’S MYTHS
Myth #1: Web Standards equals less code – so you will have faster loading pages and you will save money on bandwidth.
Theoretically this could be true, but consider these points:
- In most cases, the major cause for bloated pages (in terms of KB’s,) are a bad use of images and Flash, not the mark up code.
- Bandwidth is so cheap these days, that probably 99.99% of websites use but a small fraction of their allotted limits.
- We now live in the age of broadband where people download DVD quality movies – will an extra 20k on a web page make a practical difference?
- All web servers have GZIP (works like winzip,) that can compress web pages by about 90%. To be fair, GZIP may not be turned on.
The examples used (by Web Standards zealots,) to promote the bandwidth and cost savings argument are not realistic; sure, saving 10k-20k a page might make a difference for one of the most popular websites in the world, but most of us will not be working on such huge projects.
From a practical point of view, it is likely that you will never see any real benefit (in terms of bandwidth and speed) with having less code in your pages.
The truth:
Less code in your pages is a good thing – because this means less work.
In the programming world, people are moving more and more towards languages and frameworks that diminishes the amount of code needed to get the job done.
That being said, you can build ‘old-style’ websites that are ‘code efficient’ as well. As such, this code argument has much more to do with good practices and not whether you are adhering to Web Standards or not.
Targeting code to reduce file size, is like being concerned (if you want to loose weight) about the sugar in your coffee at McDonalds … what about the super-sized Big Mac trio?!
Myth #2: Your websites will be forward compatible.
The forward compatibility argument implies that if you have an ‘old style’ website that one day the browser makers will suddenly stop supporting them.
This is very unlikely since they (browser makers,) don’t have a history of removing functionality – they probably don’t want to kill the tens of millions of web pages that are built using ‘old-style’ techniques.
That’s one of the reasons we have doctypes, this allows browser makers to have several ‘engines’ that can parse pages whether they are Web Standards compliant or not.
UPDATE:Forward compatibility myth proven false.
Myth #3: Web Standards will make your website more search engine friendly.
The evidence would say otherwise – there are many top ranked websites that use old-style web design techniques.
I know people with websites (that are less than two years old) that use tables galore , yet they manage to get a million page-views a month.
And on the flip side, there are lots of Web Standards based sites that get practically no traffic … hmmm, I guess it’s not all about the code after all!
CONCLUSION:
Several of the arguments for Web Standards based design are misleading and have very little practical relevance in the real world. We have to be more balanced and realistic.
September 29th, 2005 at 4:06 pm
True.
I like web-standards.
They help me making better pages and studying them helped me understand and organize better my work.
But.
Not all my pages validate at 100%. And this does not makes sleeping any harder, I’m just fine this way.
I agree that “Mystical belief in the power of Web Standards, Usability, and tableless CSS” is a stupid thing, and making complex hack is the last thing I’ll do in order to have simple code.
October 5th, 2005 at 5:55 pm
[..]From a practical point of view, it is likely that you will never see any real benefit (in terms of bandwidth and speed) with having less code in your pages[..]
Because the browser caches the CSS this way the browser doesn’t have to download the code every-time making your webpage load faster. You easily test this: Put a few images (bout 20 or so) in a page then make an identical page but have the external CSS file assign the images (as backgrounds of divs for instance). Once you go to the same page again you will see that the CSS version loads just about instantly and the other page doesn’t.
>> This is not pro web-standards this is pro CSS although I think web-standards are a good thing
[..]Myth #2: Your websites will be forward compatible.[..]This is very unlikely since they (browser makers,) don’t have a history of removing functionality – they probably don’t want to kill the tens of millions of web pages that are built using ‘old-style’ techniques.[..]
True BUT did you consider that if someone was to manufacture a new browser without all that bad history that your site would look awful if you didn’t use standards (doesn’t have to but could)
Example: Safari, relatively young has no quirks-mode only a standards mode.
[..]The evidence would say otherwise – there are many top ranked websites that use old-style web design techniques.[..]
That is because they have huge amounts of sites linked to them, this compromises for the big amounts of code (table based site) the code part.
It is a fact that if you have two sites on the web and one is built up of tables that google will prefer the other one without the tables and with the clean (standard) code
Example: I had to remake a site that used huge amounts of javascript and tables because google wouldn’t list it. Once I cleared all that junk out google started listing it again. This was because google just stops reading a document after some time of not finding anything interesting. (this is a fact, look it up on lots of sites, most none standard. Even they say that if you put to much text or code on a page that google will only index the first part of it and leave the rest.)
Truth: using CSS and making your sites the new-school way makes them easier to maintain
October 5th, 2005 at 6:08 pm
Tip: Use xhtml Strict this will help reduce the amount of hacks (to 0 mostly)
October 5th, 2005 at 7:45 pm
@Justin Halsall,
Browsers will cache images whether they are found in the HTML code or the CSS – once an image is in cache, the browser will call the cached version regardless of what page the image is found.
- -
Your Google example is an example of just bad design – you could have made the table based layout more ‘Google friendly’ by reducing the number of tables (nesting tables was silly even before CSSP was possible,) and by extracting the JavaScript into a .js file and making a reference to it at the bottom of the page.
That being said:
When I can, I go for CSSP (web standards) based design as much as possible. And as far as I know, the only time CSS falls down, is when it comes to page-level layout.
About XHTML:
XHTML will typically be treated by the browsers as ordinary HTML (because of the web servers,) thus removing all the supposed advantages – it’s not checked if it well formed by the browser for example.
To force the browser to read XHTML as XHTML, you will need to set the MIME type to: application/xhtml+xml. The problem is that Internet Explorer (this means 70-90% of the users,) does not support application/xhtml+xml.
As such, IE (and other browsers,) will give you the ‘download this document’ dialog rather than rendering and displaying the page like it’s supposed to …
Conclusion:
Whether you’re going to bust your ass to create CSSP based pages comes down to a project’s needs and the particular layout – some CSSP layouts are easily achieved with only the need for one hack to work. I do this for Killersites.com.
But, I think that there are times when being 100% web standards compliant is just a waste of time – like not using the target attribute of a link (
) tag; who cares and what practical disadvantage is there to using this very useful attribute?October 6th, 2005 at 12:22 am
[..]like not using the target attribute of a link () tag; who cares and what practical disadvantage is there to using this very useful attribute?[..]
This is for small devices (PDAs Mobiles) they don’t have the possibility to use frames or to open a new window. If the web-designers makes his websites in such a way that the target is not needed this will benefit those with a small screen device.
I personally would rather use the target instead of staying 100% compliant and using javascript. But if its not really needed then I’ll just leave it away as much as possible.
For lots of things there is a logical explanation, and if you are good in CSS there is no real need to use hacks (if using strict mode or using the /IE7/ javascript all in one fix)
October 6th, 2005 at 1:55 am
How many PDA’s browse your site? We get well over 1.2 million page views /month on killersites.com and the % of PDA users is about 0.02%…
To change your work-flow to satisfy such a small audience or to be ‘prepared’ for something the MAY come at some unknown time in the future is akin to the building of bomb shelters in the 50’s – just in case of nuclear war.
What is the practical way to tackle this:
When I see the browsers come out (that require strict XHTML,) and they have some reasonable presence on the web, I will look to moving from HTML 4.
- -
The IE7 thing is kinda cool (in an academic sense,) but it relies on JavaScript – where about 10% of the people out there have it turned off.
I don’t like having crucial functionality dependent on JavaScript because of that 10%.
- -
Even in strict mode, IE still has bugs that require the use of hacks to make page-level layout via CSS to work – AFAIK.
Again, that being said, I can’t wait for the majority of the users to be using a non-buggy version of IE – give it another 2-3 years.
Meanwhile there are times (when deadlines are looming,) when we may want to use code that may not be 100% standards compliant to get the job done.
Remember that standards are created to save time and money, as soon as the standards get in the way of this, it’s time to break them.
Conclusion:
I have the benefit of years of experience with several programming languages (Java, PHP, JavaScript etc) where I’ve seen this sort of thing several times before:
Where people get caught up in theoretical correctness at the expense of practical application.
One thing these people don’t realise is that standards are not written in stone … they are not the ten commandments. You should also consider that things change, sometimes in a big way! So coding for the future, at the expense of today, is silly given my experience.
Curious, I don’t know if any of the ‘leaders’ of the Web Standards movement have any programming experience at all? That to me is relevant because CSS and HTML is to programming, as adding and subtracting is to advanced calculus.
-
I’m not trying to get on a lecture tour or am I trying to sell books – I am only offering this point of view to help people avoid some of the mistakes I have made in the past.
(You should) do what you will.
November 9th, 2005 at 2:23 pm
[...] CSS hacks are a recipe for disaster that I’ve been predicting for a while, a disaster that seems to be happening: it looks as though IE7 will be breaking CSS hacks and thus, the Web Standards myth of forward compatibility. [...]