Monday, July 17, 2006 3:57:06 PM
At Opera, we of course hoped to be the first. As it turned out, we weren't - congratulations are due and have been made to the KHTML/Safari developers who did it. But still, we sat down with all these wierd edge cases, and one by one chased the bugs out until we did pass.
(One of the test features, SGML comment parsing, proved to be a huge edge case. In order to fix it we introduced and had to solve a whole range of new problems, because it turned out that practically nobody had relied on the standard as written, while a number of important sites relied on the buggy behaviour that applied in every browser. Eventually the test author agreed that it was wrong to have included it, and just removed it from the test).
With Opera 9 we released the first cross-platform browser that passed the Acid2 test - and the first Windows browser to do so. (We have now got it working in Symbian phone browsers, although not in released versions yet). We thought that was moderately cool - it isn't the most important test in the universe, and probably not even the best, but the fact that there are now half a dozen or so browsers that do pass, and more working on it, is good for interoperability of the web.
Which really means that it helps authors to know that they can use standards without testing whether the p and h1 elements really work in every browser. That's the important bit.
Since, a handful of people have said that
Opera 9 is not passing Acid2 under certain unique scenarios
Unfortunately, the people who have made these reports are wrong about us not passing the test. One of the limitations of Acid2 is that it relies on a "normal" rendering setup. Scrolling, zooming, resizing, setting minimum font size, choosing your own styles for things that are important to you, and various other things, will all break the rendering of the test. It is written that way. It is designed to test basic capabilities, and makes assumptions about what browsers (and by extension, users) will do. If you introduce these variables, you move into a world where the standards being tested cannot apply if you want the rendering to look right. In other words, the test becomes invalid, so it is not possible to pass or fail.
The strangest suggestion, to my mind, is that disabling zoom is better than allowing it, since zoom (implemented according to CSS standards) causes some funny marks to appear. Why a user is better off with something they can't read, than something they can read although it looks funny, has always been beyond me. But it must appear to make sense to people (presumably those who don't need to zoom anything) because a lot of content is designed that way. The more we do to make it possible for users to get what they need, the more a small number of designers do to frustrate that. But I digress.
I guess what we should be doing is working on Acid3, something that uses real world conditions and variability, that works when people do the things they need to so they can use the web too, and get that sorted. And perhaps there are some more small changes to the standards that should be made.
It's disappointing, after the hard work that went into making the test, and the further hard work that went into meeting its conditions, to read people suggesting that maybe we have cheated.
At its worst, that's called dog-whistling in Australian politics, and used deliberately it is a particularly nasty way to slander. I don't think that in this case people are deliberately dog-whistling, I think that they just don't understand some of the finer details in the discussion. I don't think the whole thing is, in the real world, more than a virtual tempest in an invisible teacup. And I wish that things that small didn't disappoint me.
Because if they didn't I would have written something much cooler about villages and mountains, but that has to wait until I have done some more work now.
(Thanks for letting me vent. We return you to the normal meanderings and reflections on nothing much that make up the staples in this blog )