From: Joe Nine on
David Mark wrote:
> Joe Nine wrote:
>> David Mark wrote:
>>> From what I've heard of IE9, it sure seems to spell doom for Dojo,
>>> ExtJs, YUI, etc. And jQuery too (at least to some extent). They all
>>> have tons of rickety branches based on an "isIE" variable. Dojo, for
>>> example, has hundreds of scripts, each with at least a few sniffs (some
>>> have dozens) and they are all interdependent as hell (often one script
>>> tries to work around the mistakes of others).
>>>
>>> IE8 was a major blow, but I think IE9 will be the knockout. What can
>>> they do but scrap the old junk and start over? So much for all of those
>>> pretty widgets. :)
>> Why? The useragent changes I've read about sound to be completely normal
>> and as expected. For example, "MSIE 8" is now "MSIE 9". Anyone looking
>> for that digit will see 8 is now 9.
>>
>
> Most of the isIE branches are based solely on IE, not its version.
> Suddenly most of those bogus inferences will be wrong. ;)

Why? If the useragent still contains "MSIE" (and according to that link
I posted it does, so) where's the problem? You never actually stated why
people's "isIE" variables will no longer initialize correctly. You seem
to have heard something contradictory to that article but haven't
elaborated on it [enough for me to understand ;-)].
From: David Mark on
Joe Nine wrote:
> David Mark wrote:
>> Joe Nine wrote:
>>> David Mark wrote:
>>>> From what I've heard of IE9, it sure seems to spell doom for Dojo,
>>>> ExtJs, YUI, etc. And jQuery too (at least to some extent). They all
>>>> have tons of rickety branches based on an "isIE" variable. Dojo, for
>>>> example, has hundreds of scripts, each with at least a few sniffs (some
>>>> have dozens) and they are all interdependent as hell (often one script
>>>> tries to work around the mistakes of others).
>>>>
>>>> IE8 was a major blow, but I think IE9 will be the knockout. What can
>>>> they do but scrap the old junk and start over? So much for all of
>>>> those
>>>> pretty widgets. :)
>>> Why? The useragent changes I've read about sound to be completely normal
>>> and as expected. For example, "MSIE 8" is now "MSIE 9". Anyone looking
>>> for that digit will see 8 is now 9.
>>>
>>
>> Most of the isIE branches are based solely on IE, not its version.
>> Suddenly most of those bogus inferences will be wrong. ;)
>
> Why? If the useragent still contains "MSIE" (and according to that link
> I posted it does, so) where's the problem?

The problem is that the current batch of "major" libraries (plus tens of
thousands of little scripts floating around out there) make about a
million inferences between them based on the UA string containing
"MSIE". Many of those inferences will be wrong in IE9. Get the
picture? :)

I suppose a lot of them will tell the developers who have trusted in
these things to force IE9 into some sort of compatibility mode. That's
what Dojo does whenever people complain about IE8 breaking their huge
Web apps. No time to rewrite everything is there?

> You never actually stated why
> people's "isIE" variables will no longer initialize correctly.

You simply don't get it. The whole problem is that they will
"initialize correctly", which will break the scripts.

> You seem
> to have heard something contradictory to that article but haven't
> elaborated on it [enough for me to understand ;-)].

Can you hear me now? :)
From: Joe Nine on
David Mark wrote:
> Joe Nine wrote:
>> David Mark wrote:
>>> Joe Nine wrote:
>>>> David Mark wrote:
>>>>> From what I've heard of IE9, it sure seems to spell doom for Dojo,
>>>>> ExtJs, YUI, etc. And jQuery too (at least to some extent). They all
>>>>> have tons of rickety branches based on an "isIE" variable. Dojo, for
>>>>> example, has hundreds of scripts, each with at least a few sniffs (some
>>>>> have dozens) and they are all interdependent as hell (often one script
>>>>> tries to work around the mistakes of others).
>>>>>
>>>>> IE8 was a major blow, but I think IE9 will be the knockout. What can
>>>>> they do but scrap the old junk and start over? So much for all of
>>>>> those
>>>>> pretty widgets. :)
>>>> Why? The useragent changes I've read about sound to be completely normal
>>>> and as expected. For example, "MSIE 8" is now "MSIE 9". Anyone looking
>>>> for that digit will see 8 is now 9.
>>>>
>>> Most of the isIE branches are based solely on IE, not its version.
>>> Suddenly most of those bogus inferences will be wrong. ;)
>> Why? If the useragent still contains "MSIE" (and according to that link
>> I posted it does, so) where's the problem?
>
> The problem is that the current batch of "major" libraries (plus tens of
> thousands of little scripts floating around out there) make about a
> million inferences between them based on the UA string containing
> "MSIE". Many of those inferences will be wrong in IE9. Get the
> picture? :)
>
> I suppose a lot of them will tell the developers who have trusted in
> these things to force IE9 into some sort of compatibility mode. That's
> what Dojo does whenever people complain about IE8 breaking their huge
> Web apps. No time to rewrite everything is there?
>
>> You never actually stated why
>> people's "isIE" variables will no longer initialize correctly.
>
> You simply don't get it. The whole problem is that they will
> "initialize correctly", which will break the scripts.
>
>> You seem
>> to have heard something contradictory to that article but haven't
>> elaborated on it [enough for me to understand ;-)].
>
> Can you hear me now? :)

I guess I'm still too dumb. IE7 identified itself as "MSIE 7" and all
the isIE brigade were happy. IE8 identified itself as "MSIE 8" and they
remained happy. Now IE9 has followed the same strategy and as predicted
identified themselves as "MSIE 9", which will still allow isIE to
initialize properly. No problem that I can see there. If the user goes
into compatibility mode, it will identify itself as "MSIE 7" just like
IE8 did in compatibility mode.

I still don't see why you think that would break any libraries. I don't
even know why I'm pursuing this, I don't sniff for IE anyway, but I
think a really big piece of information might have been missing from
your post. As in, what problem sniffing IE9 as IE might cause.
From: David Mark on
Joe Nine wrote:
> David Mark wrote:
>> Joe Nine wrote:
>>> David Mark wrote:
>>>> Joe Nine wrote:
>>>>> David Mark wrote:
>>>>>> From what I've heard of IE9, it sure seems to spell doom for Dojo,
>>>>>> ExtJs, YUI, etc. And jQuery too (at least to some extent). They all
>>>>>> have tons of rickety branches based on an "isIE" variable. Dojo, for
>>>>>> example, has hundreds of scripts, each with at least a few sniffs
>>>>>> (some
>>>>>> have dozens) and they are all interdependent as hell (often one
>>>>>> script
>>>>>> tries to work around the mistakes of others).
>>>>>>
>>>>>> IE8 was a major blow, but I think IE9 will be the knockout. What can
>>>>>> they do but scrap the old junk and start over? So much for all of
>>>>>> those
>>>>>> pretty widgets. :)
>>>>> Why? The useragent changes I've read about sound to be completely
>>>>> normal
>>>>> and as expected. For example, "MSIE 8" is now "MSIE 9". Anyone looking
>>>>> for that digit will see 8 is now 9.
>>>>>
>>>> Most of the isIE branches are based solely on IE, not its version.
>>>> Suddenly most of those bogus inferences will be wrong. ;)
>>> Why? If the useragent still contains "MSIE" (and according to that link
>>> I posted it does, so) where's the problem?
>>
>> The problem is that the current batch of "major" libraries (plus tens of
>> thousands of little scripts floating around out there) make about a
>> million inferences between them based on the UA string containing
>> "MSIE". Many of those inferences will be wrong in IE9. Get the
>> picture? :)
>>
>> I suppose a lot of them will tell the developers who have trusted in
>> these things to force IE9 into some sort of compatibility mode. That's
>> what Dojo does whenever people complain about IE8 breaking their huge
>> Web apps. No time to rewrite everything is there?
>>
>>> You never actually stated why
>>> people's "isIE" variables will no longer initialize correctly.
>>
>> You simply don't get it. The whole problem is that they will
>> "initialize correctly", which will break the scripts.
>>
>>> You seem
>>> to have heard something contradictory to that article but haven't
>>> elaborated on it [enough for me to understand ;-)].
>>
>> Can you hear me now? :)
>
> I guess I'm still too dumb.

Ignorance is not the same as stupidity.

> IE7 identified itself as "MSIE 7" and all
> the isIE brigade were happy.

Not really.

> IE8 identified itself as "MSIE 8" and they
> remained happy.

Definitely not. For example, huge applications were built on top of
Dojo 1.3. Many of them fell apart in IE8. And, of course, upgrading
Dojo to "keep up" was (and is) a nightmare. The Dojo developers have
taken to telling their users who can't or won't go through that ordeal
to force IE7 compatibility mode. Their excuse is that IE8 wasn't around
when Dojo 1.3 was written. But that's no excuse at all. It wasn't
around when My Library was written, either. ;) I didn't have to change
one line (of roughly 10,000).

> Now IE9 has followed the same strategy and as predicted
> identified themselves as "MSIE 9", which will still allow isIE to
> initialize properly.

You don't get it. IE9 will have very different features, so the umpteen
thousand bad inferences in these things will be invalidated. It would
actually be better if IE9 did *not* "identify" as IE. Then they might
have a shot.

> No problem that I can see there. If the user goes
> into compatibility mode, it will identify itself as "MSIE 7" just like
> IE8 did in compatibility mode.

Dojo, for example, has all sorts of problems with that too.

>
> I still don't see why you think that would break any libraries.

Do you see now?

> I don't
> even know why I'm pursuing this, I don't sniff for IE anyway, but I
> think a really big piece of information might have been missing from
> your post. As in, what problem sniffing IE9 as IE might cause.

Something's missing alright, but not in my posts.
From: Joe Nine on
David Mark wrote:
> Joe Nine wrote:
>> David Mark wrote:
>>> Joe Nine wrote:
>>>> David Mark wrote:
>>>>> Joe Nine wrote:
>>>>>> David Mark wrote:
>>>>>>> From what I've heard of IE9, it sure seems to spell doom for Dojo,
>>>>>>> ExtJs, YUI, etc. And jQuery too (at least to some extent). They all
>>>>>>> have tons of rickety branches based on an "isIE" variable. Dojo, for
>>>>>>> example, has hundreds of scripts, each with at least a few sniffs
>>>>>>> (some
>>>>>>> have dozens) and they are all interdependent as hell (often one
>>>>>>> script
>>>>>>> tries to work around the mistakes of others).
>>>>>>>
>>>>>>> IE8 was a major blow, but I think IE9 will be the knockout. What can
>>>>>>> they do but scrap the old junk and start over? So much for all of
>>>>>>> those
>>>>>>> pretty widgets. :)
>>>>>> Why? The useragent changes I've read about sound to be completely
>>>>>> normal
>>>>>> and as expected. For example, "MSIE 8" is now "MSIE 9". Anyone looking
>>>>>> for that digit will see 8 is now 9.
>>>>>>
>>>>> Most of the isIE branches are based solely on IE, not its version.
>>>>> Suddenly most of those bogus inferences will be wrong. ;)
>>>> Why? If the useragent still contains "MSIE" (and according to that link
>>>> I posted it does, so) where's the problem?
>>> The problem is that the current batch of "major" libraries (plus tens of
>>> thousands of little scripts floating around out there) make about a
>>> million inferences between them based on the UA string containing
>>> "MSIE". Many of those inferences will be wrong in IE9. Get the
>>> picture? :)
>>>
>>> I suppose a lot of them will tell the developers who have trusted in
>>> these things to force IE9 into some sort of compatibility mode. That's
>>> what Dojo does whenever people complain about IE8 breaking their huge
>>> Web apps. No time to rewrite everything is there?
>>>
>>>> You never actually stated why
>>>> people's "isIE" variables will no longer initialize correctly.
>>> You simply don't get it. The whole problem is that they will
>>> "initialize correctly", which will break the scripts.
>>>
>>>> You seem
>>>> to have heard something contradictory to that article but haven't
>>>> elaborated on it [enough for me to understand ;-)].
>>> Can you hear me now? :)
>> I guess I'm still too dumb.
>
> Ignorance is not the same as stupidity.
>
>> IE7 identified itself as "MSIE 7" and all
>> the isIE brigade were happy.
>
> Not really.
>
>> IE8 identified itself as "MSIE 8" and they
>> remained happy.
>
> Definitely not. For example, huge applications were built on top of
> Dojo 1.3. Many of them fell apart in IE8. And, of course, upgrading
> Dojo to "keep up" was (and is) a nightmare. The Dojo developers have
> taken to telling their users who can't or won't go through that ordeal
> to force IE7 compatibility mode. Their excuse is that IE8 wasn't around
> when Dojo 1.3 was written. But that's no excuse at all. It wasn't
> around when My Library was written, either. ;) I didn't have to change
> one line (of roughly 10,000).
>
>> Now IE9 has followed the same strategy and as predicted
>> identified themselves as "MSIE 9", which will still allow isIE to
>> initialize properly.
>
> You don't get it. IE9 will have very different features, so the umpteen
> thousand bad inferences in these things will be invalidated. It would
> actually be better if IE9 did *not* "identify" as IE. Then they might
> have a shot.
>
>> No problem that I can see there. If the user goes
>> into compatibility mode, it will identify itself as "MSIE 7" just like
>> IE8 did in compatibility mode.
>
> Dojo, for example, has all sorts of problems with that too.
>
>> I still don't see why you think that would break any libraries.
>
> Do you see now?
>
>> I don't
>> even know why I'm pursuing this, I don't sniff for IE anyway, but I
>> think a really big piece of information might have been missing from
>> your post. As in, what problem sniffing IE9 as IE might cause.
>
> Something's missing alright, but not in my posts.

Now I get it, because of this (new) info:

"huge applications were built on top of Dojo 1.3. Many of them fell
apart in IE8"

"IE9 will have very different features, so the umpteen thousand bad
inferences in these things will be invalidated. It would actually be
better if IE9 did *not* "identify" as IE"

We don't all know that IE8 broke Dojo in a big way, or that IE9 will be
so different. Neither things were mentioned in the initial post ;-)

Thanks for providing the extra info that fills in the gaps of the first
post :)