From: David Mark on
Michael Haufe ("TNO") wrote:
> On May 2, 8:13 pm, David Mark <dmark.cins...(a)gmail.com> wrote:
>
>> Their solution has been to decide that they don't "care" about any
>> browsers more than a year old (or anything with less than 1% of the
>> world using it). That's pretty telling of their cross-browser success
>> (or lack thereof). More telling is that apparently "VK" endorses such
>> "strategies". That's worse than bad company.
>
> For a general purpose library I can understand the argument against
> supporting a browser with a market share of less than 1% _IF_ given
> that the alternative inflates your code size by 20% (arbitrary big
> number) such as NS4 or IE versions below 5.5 and that the browser
> share is in decline.

But we aren't talking about those ancient browsers (which are often
cited by proponents of incompetent browser scripting). The "majors" are
so completely snarled up in hacks, sniffs and other observational
programming techniques that they literally only "work" in the very
latest versions of IE, FF, Safari, etc. in their default
configuration/modes. Some still hold on to their botched attempts at
IE6/7 while others seem to have missed the fact that IE8 can work just
like those two (so it is stupid to try to dismiss them at this point).
They might work in Chrome as most mistake it for Safari (the two are
still pretty close). Opera is iffy. Most claim to support 10.5 these
days. Not 10.x, not 9.x, sure as hell not 8 or 7. Just 10.5. Yet
virtually every site on the Web throws exceptions in that browser. This
is likely because these sites were written with previous jQuery (or
whatever) versions. Most likely I'd have better luck with that browser
if I used an earlier version that is in sync with what the developers
had handy at the time they wrote the code.

In contrast, I test a heart-stopping amount of DOM-intensive widgets,
queries, etc. on every new build, going back to:-

* FF1 (works very much like FF3.6)
* Opera 5 (5 and 6 are to test degradation of course)
* IE5.0 (a major drop-off point)

I haven't bothered with older Safari for a while, but have users who do.
I test Chrome and until recently the modern Netscape versions. I'd
test more if I had more browsers installed, more platforms handy, etc.
Why not? It doesn't take any time to load a page in a browser and push
a button. I think I know why so many others refuse (sometimes angrily)
to do such rigorous testing. They just don't want to know (ignorance is
bliss) or they know they are screwing up and would rather put it out of
their heads. Either way, it's odd behavior for ostensible professionals
(and VK).

I've also got users who test in the video games, phones, etc. Browser
specific fixes just don't come up. Problems invariably turn out to be
oversights in logic, the finding of which is validation for such
thorough testing.

How the upside-down people (e.g. VK and a cast of thousands over the
years) figure that doing the exact opposite and "saving" time on what
should be largely automated tasks by skipping testing anything less than
FF3.6 (yeah, they count minor revisions, so FF3.5 is a dinosaur now),
Opera 10.5, Safari 4, etc. will work is beyond me. One thing is for
sure: it keeps them from learning anything about what they are doing (in
much the same way jQuery stunts growth), so they are guaranteed to
rewrite the same scripts forever, making them "work" in this year's
browsers and blissfully ignoring whether they broke last year's.
Seriously, they don't know if an when they break last year's models.
The people who rely on them to know such things are dreaming. One of
the main Dojo guys once argued with me (and yeah, he was paying big-time
for the privilege) that it wasn't "for sure" that Dojo would break in -
for example - Opera 9. It might work he speculated, but they didn't
test, so they didn't know. I informed of the bad news with regard to
Opera 9 (the stupid thing can't even do basic queries, which emasculates
virtually every other script in their ZIP).

Most of the tests are automated of course, which invalidates the
"arguments" about wasting time and money through thorough testing (as
opposed to "saving" time and money through slovenly testing).

And my code is not bloated by any of these. There is virtually no
browser-version-specific code in the suite with only a couple of very
old extensions (e.g. unclip, fix) that use small amounts of IE-specific
code (using conditional compilation). As an aside, they are due to be
modified to use try-catch instead of CC (then there will be nothing
specific to any browser). The IE-specific CSS (for widgets) is an even
smaller percentage (literally a handful of rules) and is included with
conditional comments.

If I decided tomorrow that I wasn't going to test any more in IE5.5, the
code wouldn't be affected at all (there's just nothing to cut). Same
for NN4, where I only endeavor for it to degrade gracefully (though not
entirely as many low-level features work).
From: David Mark on
David Mark wrote:

[...]

>
> If I decided tomorrow that I wasn't going to test any more in IE5.5, the
> code wouldn't be affected at all (there's just nothing to cut). Same
> for NN4, where I only endeavor for it to degrade gracefully (though not
> entirely as many low-level features work).

I meant IE5.0 of course. And I suppose I could trim a couple of lines
that check for Function.prototype.call. But why? Then it would crash
and burn in such limited browsers, rather than degrade gracefully. As
it stands, virtually everything (including widgets) works in IE5.0.
They may not look quite as nice as in later versions, but they certainly
get the job done. Never mind if nobody uses that browser these days. I
don't have to do anything to support it. On the contrary, I'd have to
exert some effort to not support it. :)
From: "Michael Haufe ("TNO")" on
On May 2, 5:13 pm, Garrett Smith <dhtmlkitc...(a)gmail.com> wrote:
> I interpret this question as:
>
> "I want to call the dollar function. How can I know what it will do?"
>
> http://stackoverflow.com/questions/2754818/how-to-detect-what-library...


Here's a better one:
http://www.doxdesk.com/img/updates/20091116-so-large.gif