We're moving (quickly) towards openness on the web, but developers always have to cater to the lowest common denominator. Right now its IE6. Someday it could be Firefox. Standards take time to be supported by enough browsers with enough marketshare to be actually usable. It wasn't THAT long ago that CSS was weakly implemented by browsers that represented almost 90% of web market share.
When we write programs that "learn", it turns out we do and they don't.