I recently read a post that whines about the fact that Internet Explorer isn't standards compliant. Boo hoo. Of course it isn't standards compliant and if people understood how business works we could get IE to be strict on standards in 8 months.
To understand why IE isn't standards compliant you need to understand how operating systems are sold.
Sales: We have a great new operating system. It has all sorts of great features, it's more secure, robust, cost effective, it has great ROI, feature, feature, feature.
Business: Will all our business applications, devices and internal websites continue to work?
Sales: Yes. We support 98% of all your core software and our web browser is backward compatible so it won't break your internal web applications.
Business: Ok, well we'll roll it out in stages over the next four years and we'll support both OS's during the transition.
IT Department: Shit.
The equation is simple. Businesses take a long time to adopt new technologies and they tend to fear change because it tends to break things and cost them money. This creates an incentive for Microsoft to create backward compatible technologies. It's hard enough to create a standards compliant browser but it's likely impossible to do so and maintain compatibility with the bugs you had in previous versions of your browser. This is exactly what IE is trying to do. They will happily fix 'IE hacks' that require a workaround but they don't go for the brass ring of passing the acid test because too many businesses want the legacy behavior because they don't want to update their internal applications.
It's not about websites asking for change it's about big business. What can business decision makers, educational institutions and governments agencies do to help impact this type of change quickly?
Business: We'll upgrade the OS when it supports a truly standards compliant web browser.
Get your company, state government or city to say that sentence and you'll see a new version of IE that's finally standards compliant in the next 8 months.