- From: Gavin Kistner <gavin@refinery.com>
- Date: Wed, 10 Dec 2003 09:45:53 -0700
- To: Chris Lilley <chris@w3.org>
- Cc: "Jim Ley" <jim@jibbering.com>, www-svg@w3.org
On Dec 7, 2003, at 10:56 AM, Chris Lilley wrote: > JL> rather than error on it - my > JL> problem is the errors, not the lack of support. Errors which > users cannot > JL> understand are no use to anyone. > > I understand where you are coming from. I disagree, though. Errors > which users cannot understand are an embarrassment to the author, I'm personally 100% in the "rah-rah standards" camp. So I suppose that I might be *mildly* "embarrassed" if I wrote non-standard code which worked fine in one UA, and a future UA exposed my error. I suspect the majority of others who are interested enough in the language to join the WWW mailing list, or be on the WG, feel the same way. The majority of developers I know are not like this, however. I think you will find (if you had the resources to do a wide-spread study) that the vast majority of developers are not so idealistic. They're self-centric and user-centric; "If it works, it's Right...why should I bust my butt trying to work around an arbitrary set of 'official' rules handed down from on high, which don't work in all UAs, or which don't give me the functionality I *need* to implement what I want?" To these developers (who I contend--without proof--are most of them) going from Bob'sUAv3 to Bob'sUAv4 and suddenly finding that content that was previously working (and hence Right) now breaking...to these developers this is an embarrassment to the *UA* developer, not themselves. "WTF is wrong with them, they had it working and now they've f***d it all up! ARGH! My users upgraded in the hopes of getting something better, and instead they've gotten something a broken POS version. Now I have to take something that was working just fine and re-write it; I have to spend extra effort to get the exact same functionality I had previously. What a waste of time!" I'm not of the above mindset, but I completely understand it, and I *know* from experience that there are more than a few developers out there like this. We can sit in our ivory tower and righteously and smugly proclaim, "You were Wrong, and now you are being punished for deviating from the almighty spec." but that would only be a justification that makes ourselves feel better...in the past such an attitude has never resulted in me convincing the 'functional' developers that their worldview is backwards. I hate having to make this argument. Since I still live in the world of HTML (and continue to hold out hope) I wish every browser would immediately release a new version that dropped tag-soup support. Which always used standards-compliant rendering models. Which displayed a big red flashing screen that said "This page is broken, and the idiot who wrote it needs to be slapped!" instead of the content if it deviated from the spec. But such a change would never happen. No one would use the new browser, as the vast majority of the content on the web is broken, filled with IEWin-specific layout assumptions and JS code. ("Hey, if IE5+ is 94% of the people, that's damned good enough for me, and I get to use all sorts of useful features not in the spec, like contenteditable.") UAs have extensions beyond the spec which *are* useful, even if they weren't added for nefarious "embrace-and-extend" type reasons. Existing pages deviate from the spec, and existing UAs may not throw an error about it. I understand the desire to force people to move ahead by making the UA get vocal about errors or deprecated language features. But I think the best way to move ahead is the painfully slow way we have so far, in other areas: officially deprecate certain constructs, perhaps even explicitly mention certain non-standard extensions as illegal. But allow the UAs to quietly go on supporting broken behavior for backwards-compatibility with previous versions.
Received on Wednesday, 10 December 2003 11:45:54 UTC