For this one, we'll defer to 3 expert panelists from Macadamian: Aaron Olson, Gord P, and Jason Mawdsley.
Aaron: The best thing to do here is to be compatible with current browsers using as few browser-specific hacks as possible (ideally none).
Gord: Choose an explicit set of browser+minimum-version before any other compatibility scope is defined.
Be prepared to accept "reduced functionality" for IE6 users. If you don't do this, you will compromise the structure and maintainability of your templates
Do not agree to full W3C compliance, but strive for it.
Jason: Sort of yes to what Gord said. IE6 is still a significant share of web hits. I am not sure what the percentage is now.
IE6 support WILL be painful, and will cause a lot of work and testing.
Design to W3C standards, and have QC validate all UI changes with Firefox plugins and fail any non-compliant changes.
Aaron: One final note about W3C compliance - be sure not to use any deprecated features of HTML. Certain tags and attributes have been replaced with better, modern equivalents, usually involving CSS.
There is what looks like a decent list here.
During development, use the strictly-compliant DTD - this can save you from having to go back and fix non-compliant sections later.
Gord's right - strive for compliance but don't insist on it.
About the Author
Didier Thizy has been a software professional for 13 years, holding a variety of positions in Software R&D and Product Management.
At Macadamian, Didier is Macadamian's VP Consulting, responsible for a cross-functional unit of design and development consultants specializing in healthcare software. His focus areas include healthcare software, usability of complex systems, and modern mobile and web technologies.
Didier is an active member of HIMSS, the Toronto Product Management Association, Silicon Valley Product Management Association, and the Ottawa OCRI association for technology.
Follow on Twitter