Wanting to get it right
I knew there was something about the projects I’m happiest hanging around the edges of, the feedvalidator and Firefox and Gecko, but I wasn’t quite clear on what it was until I read Robert Sayre quoting Kent M. Pitman about “purports to conform”:
Well, “actual” compliance means bug-free. That’s hard to assure in a system of the size of a CL.
This is the reason I created the term “purports to conform”, which a lot of implementations do. In effect, what that means is “willing to receive bug reports where non-conformance is detected”.
I think in practice the notion of purporting to conform is much more meaningful than the notion of actual conformance. In fact, it’s theoretically possible to actually conform without intending to and without a commitment to continuing to be that way on an ongoing basis… or even without detecting the fact. It’s the commitment that matters, not the “incidental” fact.
That’s it! In both cases (all three, really, since Firefox and Gecko are essentially separate projects that happen to ship together), there’s a bit of “we did it, this is how we did it, if you don’t like it then shut up and go away,” but for the most part it’s a thing in progress, a thing we know isn’t as right as we’d like it to be, and if you can tell us how it’s wrongness is actually affecting you, and we can stop hurting you without hurting someone else instead, then that’s just exactly what we want. We got as close as we could with the things we saw, and now we need you to help us be better.
Just to play devil’s advocate:
1. At some point ”yes but they try hard” is no substitute for doing the job properly.
2. Gecko doesn’t meet the criteria, they mark some conformance bugs as WONTFIX. Example link removed in an attempt to get this comment posted, so look up bug #94284.
Ayuh, this wasn’t fully thought out (see my posts for the last month for an example of what requiring that they be fully thought out gets me).
Implementing NET is probably a perfect example of why I don’t really mean what I said, at least not in isolation. Nobody needs it, they only want it to confuse, or to conform for conformance’s sake, even the HTML spec informatively says to never use it, while normatively implying that it should be supported, and supporting it requires a third code path for XHTML-as-HTML, a camel whose nose nobody wants in their tent. Implementing it would make us appear broken, would actually help no one while hurting many, and yet is required. I don’t have a good answer for that. Personally, I would have called bug 94284 Trivial/Future/P5 rather than WONTFIX, but maybe for things that you know will be ”always NET tomorrow, never NET today” it’s better to just admit that this particular bit of conformance is too expensive.