Fog Creek Software
Discussion Board




strict HTML

Is there any particular reason that www.joelonsoftware.com doesn't pass the validation at http://validator.w3.org/? I'm not losing any sleep over it (and you probably aren't either) but do you think it's worthwhile to try to make web pages conform to the standards that are out there?

Jason
Sunday, March 07, 2004

It's about 999,928 on my list of priorities right now.

No, wait, even lower, because I have a new redesign for the entire Joel on Software site done by Dave Shea which will almost certainly validate, as soon as I have time to implement it.

Joel Spolsky
Fog Creek Software
Sunday, March 07, 2004

Any chance of a reason why, Joel?

I'm guessing that since 98% of users have IE, and 80% of the rest have Mozilla, anything that works on these two browsers is more than good enough, and thus strict HTML has no practical value?

Mr Jack
Monday, March 08, 2004

I never understood why people cared so much about validating HTML?

Matthew Lock
Monday, March 08, 2004

Because it's the right thing to do. You're supposed to work within the rules of the language.

John Topley (www.johntopley.com)
Monday, March 08, 2004

as I remember in one of your articles you talked about that during refactoring one of your goals was xhtml compliant site.

at that point why was it important to adhere to a standard, but not at this point?


Monday, March 08, 2004

"Because it's the right thing to do. You're supposed to work within the rules of the language."

Why? Why is it important?

Why should we work to the restriction of w3c rather than internet explorer?

Mr Jack
Monday, March 08, 2004

I have to pick people up on the use of the word "standard", they are not standards, they are Recommendations.

"W3C produces what are known as "Recommendations". These are specifications, developed by W3C working groups, and then reviewed by Members of the Consortium. A W3C Recommendation indicates that consensus has been reached among the Consortium Members that a specification is appropriate for widespread use."

http://www.w3.org/MarkUp/

________________________________________________

Anywho these debates about "web standards" (sic) are so, so very boring. I want to see more sites like Joel on Software and less nit-picking about validation.

Matthew Lock
Monday, March 08, 2004

> Why should we work to the restriction of w3c rather than internet explorer?

I don't know where to start in reply to this.

Because the world is not totally IE. I am sure Joel doesn't want to lock people out, and I as a non Windows, non IE userr find JOS and AJ very useful and interesting and I am sure Joel is happy for me to read them.

"A game is defined by its rules"

In this case the W3C make the rules, you should follow them. The fact that IE is the most popular web browser puts even more pressure on it to follow those rules.

WhatTimeIsItEccles
Monday, March 08, 2004

Your missing the point. More of the world is Internet Explorer than it is w3c compliant (IIRC there are no perfectly w3c compliant browsers) so why aim for a target audience that is either much smaller, or doesn't exist?

In fact, I'll go further, a browser which cannot read the de facto IE standard is a bad browser.

What is it about w3c standards (sorry, recomendations) that means they are more important than the de facto Internet Explorer standard complied to by something like 98% of all internet users?

Mr Jack
Monday, March 08, 2004

Developing with web standards in mind is only useful in some cases:

When you step outside of PCs and think of PDA's,

When you think about _accessibility_ (and I mean the wide range between the 60 years old who has trouble reading with your choice of colours and the blind using screen readers),

When you do think about the rest of us who cannot or will not use explorer due to security, stability or use of other platforms (kinda tough using IE on Linux),

When yo want to reduce the code in your site by 50% or more,

When you care about the time it takes to rewrite your code.

Finally, I call them standards because calling them "recommendations" makes it seem like they aren't indispensable. Go read http://www.alistapart.com or http://www.zeldman.com/dwws/ to know more.

Adriano Varoli Piazza
Monday, March 08, 2004

>>>
In fact, I'll go further, a browser which cannot read the de facto IE standard is a bad browser.
>>>

I thought by now everybody knew what happened when you let Microsoft take care of a standard. The words "incompatibility", "royalties" and "closed" spring to mind. I can also think of "embrace & extend", of "undocumented" and a few things more (these are sadly unprintable).

But I'll refute your point with this: even Microsoft seems to be understanding of the benefits of complying with web standards. IE 6 is a much better player in the web than his older brothers. It still has a few problems, but coding a strict, non-style-hacked site for Moz, IE 6 and Opera is now possible.

The web isn't Microsoft, nor I'd want it to be. For that, you can browse the MSN (that annoying icon on your Win 95 desktop, remember?)

Adriano Varoli Piazza
Monday, March 08, 2004

Matthew --

You are asking a question that is biting programmers in their ass with their products running on Windows.  Because they did not follow the standards, their programs likely would not work on Windows XP SP2 due to its revamped security model.

Backward compatibility will not be the top priority anymore.

This will be true for the web -- as IE shifts on to following the standards (or as you prefers to use - 'recommendations'), your web site would look just plain ugly, forcing you to work your ass off to make it look pretty.

Spend time now, or spend more time later.

Until you understand this, you will never be a guru in software development.

T.J.
Monday, March 08, 2004

If I start writing my own browser tomorrow, I need some documentation on how to interpret the webpages correctly.

I could then do one of the following, write a browser that tries to follow the recommendations from W3C which is well documented or write a browser that tries to follow the IE standard, which is pretty much undocumented (AFAIK).

The W3C recommendations tells quite alot about how its all supposed to work and if we want pages to look and work equal in all browsers, then all browsers and pages should try to follow that documented standard.

Johnny Carlsen
Monday, March 08, 2004

T.J.,

If any future release of IE fails to work with any significant portion of webpages it will not be adopted by users.

Mr Jack
Monday, March 08, 2004

You may have noticed that FogBUGZ is now sold for Windows, Unix, and Mac OS X.  It seems to be in Joel's best interests to have his sites work in more than IE on Windows.

Anonymous
Monday, March 08, 2004

It should be noted that some strict HTML webpages do not render properly on all browsers.  This is basically because all browsers are broken in some way.  I prefer visually correct over validated and incorrect anyday -- and so you'll find most of my sites will only almost validate.

Some times it's a trade off:  I had one issue where something wouldn't render right (spacing issue) in Netscape 4.x -- ok,  so most things don't render right in Netscape 4.x but this was minor.  Fixing the problem in Netscape 4.x *caused* the exact same problem in IE.  So, of course, being IE is "more important" than Netscape 4.x that was immediately reversed.  I believe the standard favoured Netscape 4.x in that situation.

Almost Anonymous
Monday, March 08, 2004

>> If any future release of IE fails to work with any significant portion of webpages it will not be adopted by users. <<

It most likely will and those pages will be forced to conform to what IE will display. Remember the majority of users probably don't understand how to NOT use IE.

nope
Monday, March 08, 2004

I've been coming to JoS for a couple of years now, and the other day I decided to figure out when the forum started.

So, I started entering different post numbers into the JoS URL and found the 1st post by Joel to launch the discussion board:
http://discuss.fogcreek.com/joelonsoftware/default.asp?cmd=show&ixPost=88

Note the 2nd to last comment about the HTML not validating.

So, after 2-1/2 years the HTML is still not valid.  Big deal.  I think the 122,000+ posts to the forum provide a much more significant 'validation'.

Nick
Monday, March 08, 2004

>>>
So, after 2-1/2 years the HTML is still not valid.  Big deal.  I think the 122,000+ posts to the forum provide a much more significant 'validation'.
>>>

I am not "requiring" Joel or anyone else to validate their sites come hell or high water (Why should I? What authority do I have?).

I said "it's in everyone's best interest to develop according to open standards and not to IE's choices du jour, for this, that and that other reason".

If Joel doesn't want to validate his site for an equally important set of reasons, that's his choice. If his site stops rendering properly in Opera, Mozilla, the palm browser, JAWS, or whatever I use, then I'll just stop coming, that's all.
If the site is very slow on loading due to crappy markup, I'll stop coming.

The fact that I'm still writing this here should tell you that it does render and load for me, so it's not a huge deal.

I'd certainly like every site to comply with the W3C specs, but many don't. Some are starting to. I'd also like Linux to be a mainstream desktop OS, and yet it isn't. Tough luck for me, I'll have to wait a bit more.

Adriano Varoli Piazza
Monday, March 08, 2004

So do you guys surf around the web, find a site you like and then think "Wait a minute! Better check this validates." then copy the url and head off to http://validator.w3.org/ ?

Matthew Lock
Monday, March 08, 2004

And why people put the "w3c compliant" icon/link on their web page?

Rick Tang
Monday, March 08, 2004

>>>
So do you guys surf around the web, find a site you like and then think "Wait a minute! Better check this validates." then copy the url and head off to http://validator.w3.org/ ?
>>>

Hmm... No. Though raging W3C zealots might. As I said, you code with standards not only to please the unwashed masses, but also to save money and time. And sometimes, yes, I check the source for an interesting site and see if it validates. Just to learn, you know?

>>>
And why people put the "w3c compliant" icon/link on their web page?
>>>

Same reason you use the "made in $country" sticker, the "organic" sticker, and many others. Out of pride, to make the difference, to "show others the way" if you will.

After all, I can certainly read a novel that has typos, a bit of slang, some grammatical errors... But that doesn't mean Coolio, Eminem or Queen Latifah (just as examples, not to offend anybody) are _the_authorities_ in English.

Authoring webpages with correct HTML, Javascript and CSS is like composing to a particular type of music (a concerto, a symphony, a rock opera...). It's a bit more difficult sometimes, but the result is worth it.

Adriano Varoli Piazza
Monday, March 08, 2004

Google isn't W3C compliant.

Some dude
Monday, March 08, 2004

> Google isn't W3C compliant.

Pretty much the only sites that are W3C compliant are sites about so called "web standards".

Matthew Lock
Monday, March 08, 2004

Becaue most techno-elites and "A" list bloggers use Mozilla|Firebird|Firefox based browsers due to absolute superiority over IE. 

You might not render properly for the most (self) important people on the net.

(for the record, this is half humor, half truth)

fool for python
Monday, March 08, 2004

> Why should we work to the restriction of w3c rather than internet explorer?


I don't drive on the right side of the road (in the U.S.) because everyone else does. I do it because it's the law.

So there.
Monday, March 08, 2004

'Pretty much the only sites that are W3C compliant are sites about so called "web standards".'

That statement is bollocks. There are an awful lot of blogs that are standards compliant.

John Topley (www.johntopley.com)
Tuesday, March 09, 2004

Such as?

Matthew Lock
Tuesday, March 09, 2004

http://www.johnsadventures.com/
http://headblender.com/joe/blog/

...and my own site, for a start.

John Topley (www.johntopley.com)
Tuesday, March 09, 2004

And there are plenty of commercial sites that are designed and implemented against the W3C Recommendations, like Wired and ESPN.

Brad Wilson (dotnetguy.techieswithcats.com)
Tuesday, March 09, 2004

Be pragmatic.
I don't care too much for being PC about standards. That said, I still use the validator as a tool.

Why?
- I have noticed that even though top browsers render tagsoup from hell, they often seem to render 'correct' tagsoup faster.
- It is a defense against the friend-of-the-client with the leftover browser from hell (Netscape 4 for MacOS  anyone?).
- It is a nice proxy for lazy testing.

Now will I roll over because 'officially' "this tag does not support this attribute" where 99% of the client population does and the 'right way' is tedious and not even correctly supported on the most popular browsers? Get real.

Just me (Sir to you)
Tuesday, March 09, 2004

>>>
And why people put the "w3c compliant" icon/link on their web page?
>>>

<<
Same reason you use the "made in $country" sticker, the "organic" sticker, and many others. Out of pride, to make the difference, to "show others the way" if you will.
<<

Welll, people may be more inclined to buy stuff made in certain country.

I don't think a site being w3c compliant would attract more viewers!

Rick Tang
Tuesday, March 09, 2004

Matthew Lock said:

So do you guys surf around the web, find a site you like and then think "Wait a minute! Better check this validates." then copy the url and head off to http://validator.w3.org/ ?

----------

If you install Mozilla FireFox you can get a set of web developer tools that provide a validate HTML option from a validation option. No need to copy the URL :)

Walter Rumsby
Tuesday, March 09, 2004

Or in Opera: Control + Alt + V. Very useful when designing.

Adriano Varoli Piazza
Tuesday, March 09, 2004

+++I don't drive on the right side of the road (in the U.S.) because everyone else does. I do it because it's the law. +++

Yes, because browser standards and traffic laws are most certainly analogous.  Disobeying either can lead to painful death (at the hands of zealots, in the case of the former, I suspect) ;)

muppet from electric-chipmunk
Wednesday, March 10, 2004

>>>
Yes, because browser standards and traffic laws are most certainly analogous.
>>>

I take it you only respect and uphold "serious" laws? Just because they are called "standards" or worse, "recommendations" doesn't mean they aren't to be followed. They are (or should/could be) common guidelines that try to make things easier for everybody (most of the time. the img to object transition... shudder).

Adriano Varoli Piazza
Wednesday, March 10, 2004

There are other applications besides IE and Mozilla that use HTML (and CSS). For anyone who wants to consume information available on the web in other ways (mobile devices, programmatic interfaces, etc.), it's much easier to write a client that adheres to widely-accepted standards/recommendations. That's one of the reasons to define standards.

Jason
Thursday, March 11, 2004

If you have an existing web site which doesn't validate, the effort involved in getting it to do so may, indeed, not be worth the effort.

If you're coding a new site from scratch, there's no particular overhead involved in coding to standards and some real benefits to doing so. As well as better interoperability, it's an excellent filter for silly mistakes - like missing off a /td (which can cause NS to really choke). Just run your pages through a validator as part of your standard test suite (The one at http://www.htmlhelp.com/tools/validator/ lets you validate 100 pages at once).

Chris Hunt
Thursday, March 11, 2004

What proportion of mart phones and PDAs use IE?

Stephen Jones
Thursday, March 11, 2004

I've had some really bad luck with prospective web-design clients viewing my portfolio sites using Netscape 4 on Macs.  I mean, what are the chances?

J. D. Trollinger
Thursday, March 11, 2004

>So do you guys surf around the web, find a site you like and then think "Wait a minute! Better check this validates." then copy the url and head off to http://validator.w3.org/ ?

I don't.  But before I send out an email, I run spell check.  And before I distribute a document, I check for consistent formatting, spelling, grammar, readability, etc.  And before I publish a Web page, I do all of the above, plus I validate the code.

If your profession involves the creation of html pages, it is in your best interest -- and in the best interest of your audience -- to do it well.  In the case of creating web pages, "doing it well" means validating the technologies being used (css, html, etc.) against the specs, testing on different browsers and OS's, etc.

But there are lots of things to do, and not all of them can make it to the top of the list, I suppose.  So unless your business IS the development of web pages, I don't think you should be judged too harshly for not complying with every spec.  But keep in mind that it will leave some people with a negative impression -- like reading an email that is full of typos or receiving a doc that is disorganized.

too shy
Wednesday, March 17, 2004

Dear Spolski,

I found pages under http://discuss.fogcreek.com/ to be full of spelling mistakes. Please clean up yur act.

Just me (Sir to you)
Wednesday, March 17, 2004

One thing that immediately springs to mind about this discussion, but that hasn't been mentioned yet, is the analogy to any other programming language.

Why should we ignore standards web standards when coding HTML? Do you ignore C standards when coding for Linux? Do you ignore the processor specs when coding embedded systems? You might find that your system works on a superficial level, but upon further testing, you'll no doubt find many cases where it doesn't.

Would it be acceptable to you if your word processor crashed when you pressed the 'd' and 's' keys at the same time? Sure, this may not happen very often, but it's a serious flaw. Ignoring problems in your HTML that you think don't matter because "it's going to be rarely viewed in those conditions" can bite you at a later date.

Matt S.
Friday, March 19, 2004

There are too many instances where browsers used by a number of people don't conform to the recommendation and you gotta deal with it. E.g., the BODY attributes "marginheight" and "marginwidth" cause your HTML to be invalidated, but are required if you want to achieve that effect in certain versions of netscape. (I once heard marginheight, marginwidth, topmargin and leftmargin referred to as "the four horseman of non-standardization.")

Another problem is simply dumb parts of the standard, such as IMG's "alt" attribute. Required? Why on earth? I'm not gonna increase my HTML just for that pointless attribute on all my shim images that aren't supposed to be seen anyway.

And why am I not allowed to put FORM elements between a TABLE element and a TR element? I'm certainly not going to put it OUTSIDE the TABLE element. That would cause undesired padding around the table. And not all browsers will understand the CSS properly that would negate the default padding, so forget it.

I'd rather have a "invalid" webpage that actually conforms to my designer's vision, thank you very much.

Beaker
Monday, March 22, 2004

>>>
Another problem is simply dumb parts of the standard, such as IMG's "alt" attribute. Required? Why on earth? I'm not gonna increase my HTML just for that pointless attribute on all my shim images that aren't supposed to be seen anyway.
>>>

Hmm.. Apart from the fact that designing for Netscape 4.x is in practice mutually exclusive with designing with standards, I'd say the alt="" attribute is very useful for people that cannot see _useful_ images. Think of a screen reader for the blind, think of links and lynx, think of people who surf without images loaded (the third world exists, yo know).
Nobody asks you to use alt on invisible gifs. Then again, you should use valid CSS for that, so you don't have to start GIF-fishing in DreamWeaver in a few months. For me, the benefits outweigh the inconvenience.

Adriano Varoli Piazza
Wednesday, March 24, 2004

Would it be acceptable to ignore the warnings from a compiler, so long as the code builds and runs?

Are you guys OK with that? Why/why not?

Interaction Architect
Thursday, April 01, 2004

*  Recent Topics

*  Fog Creek Home