While I nod my head in agreement to recent thoughts on validation and it's place as a piece of the web design puzzle, I'm reminded of where and when I personally think that it can make the difference.
Why the heck is the footer crammed all the way over in the right column?
A mildly ficticious scenario, but one that is certainly plausible. The display issue could be anything really. You've poured over every last CSS declaration, searching for the key that's throwing off the entire design. Hours may go by after trial and error, removing code, adding it back it, etc.
Then you throw it through the validator.
Line 326, column 6: end tag for "div" omitted...
Of course. All better now.
I'm merely illustrating a point -- that (for me personally) validation is key as part of the building process. Checking to make sure my "i"s are dotted and "t"s are crossed eliminates several possible culprits if I'm running into display issues. If I know the code is plumb and square, I can at least move on to other investigations. It doesn't solve everything, but a solid foundation keeps some of the guesswork at bay.
There are other reasons for validation of course -- reasons that may or may not make 100% sense depending on the (approximately) 6,593 factors that go into an average web site. A singular person may not have complete control over all of the code that makes up an entire site. If a team is involved -- it takes everyone to want validation in order to make it happen. Tools and feeds and software must be part of the game. Editors, managers and developers have have to understand the importance of forward compatibility and a higher threshold of consistent device and browser support. But oftentimes, these things (or people) are out of our direct control. This is what makes validation hard.
So I try to stay valid as much as possible -- and the building process is certainly a convenient time and place where it happens the most.
Inconsistent Consistency
It also relates to another topic that I've been thinking about lately. That basic validation appears to be more important when using CSS layouts, as opposed to old-school methods. I don't have any solid research to back any of this up right now, but hear me out.
In the past, when all of the presentation was tied in directly with the content (read: nested table layouts), browsers were extremely forgiving. Forget (perhaps purposely) to close those <td> elements? Most browsers wouldn't care and would render your intentions without any problems. This led to all sorts of bad habits. I guess we could place part of the blame on the browser...
Anyhow, forget to close <div> or <ul> elements while implementing a complex CSS-based layout and I believe most browsers won't be as forgiving. More importantly I think the results will be extemely varied depending on the browser.
I'm certainly not referring to unescaped ampersands or other small details that could be out of the site builder's control -- but I believe basic validation on the framework of a site is crucial when working heavily in CSS.