OT - where to invest

8 views
Skip to first unread message

D.Campagna

unread,
Apr 3, 2009, 8:21:49 AM4/3/09
to
[english mode ON - it's not my first language, nor the second one.]
I have been impressed by the deep knowledge of Javascript of many of the
participants in this NG. Also I appreciate the vaste amount of time and
diligence they are spending in giving advice to newbies (like me) with
no rewards at all if not a sporadic "thank you very much" from people
often in a hurry, looking for a quick (and at no cost) answer.
But after many rants against jQuery, in a way that is far away from a
technical debate, but more as a religion war, I decided to see who is
this John Resig so hatred and criticized, and how the crew of buffoons
followers he has are managing the criticism that the entire world of
javascript serious programmers is supposed to oppose to their ludicrous
library.
Well, after a visit at the John Resig's homepage and after spending some
time reading his blog I only would like to know how old are people here,
for example David Mark, Thomas Lahn, or Robert Crockford (the first
three tech-savvy persons that are coming to my mind, in no order).
I have been impressed not only by the vaste amount of knowledge this guy
is putting on the plate, but by the amount in general of things he does,
not to say the enthusiasm of his followers. My perplexity reached the
top when I discovered he is only an undergraduate, a person that in no
way cold be considered experienced; and admittedly is doing things a bit
for fun, in his free time after the hours spent to accomplish his
education. Amazing!
This is called only in a way for me, he is a kind of genius, no way to
call him otherwise.
People is criticizing his work here as it were the work of an entire
life of a pretending guy that has already made his best and is an
incompetent. You are talking about a young that has already made in few
years more than the average programmer in an entire life.
Yes, jQuery has flaws, I realize, but he (Resig) is talking with
browsers developers, and he is pointing them to the flaws and
incompatibility in the dozens of browsers lying around and making the
life of javascript programmers a nightmare. In no other programming
languages you have to worry not only for the issues of the language
itself, but even for the different implementations, the presence or not
of certain characteristics, and so on, all leading to an unnecessary
complexity and discouraging lack of standards.
And if I should decide where to invest my time and energy, I most likely
would choose the promising work of a young genius getting a large
consensus from the vast majority of people that understands that this
situation is getting unmanageable every day more.
I - as stated - am only a newbie in javascript but in my fifthies, and
have seen many things from the day I decided to work and study computer
science. Nor I am a newbie in my specific field of interest (that
involves javascript, but is not obviously the main issue), and can in no
way accept the lack of standard and the mess browser scripting is, as it
were an immutable state of things.
We are living in days similar to the days before Windows became the
standard de facto and forced all the programmers and developers to stick
with a standard, simplifying the life for everyone of us, from
programmers to end users. Don't undervaluate the role Microsoft had - in
a way or another - to the explosion of the computer diffusion in the
entire world. Someone remembers the times of CP/M and other operating
systems, Xenix, PC-MOS and so on, everyone with his small users base and
expensive software, the times when no standards existed, and the word
compatibility was only used to indicate a relationship between male and
female?
I just will continue to follow this NG and appreciate any advice, and
hope no rants and angry will be directed against me. The more, I don't
think I will use jQuery, but for sure I will stay tuned on Resig's
progresses, and will give a look inside jQuery. I am sure I have a lot
to learn from him too. But I only would to know why the effort to have a
more standardized platform and the work of this promising genius is so
badly considered. No technical considerations, please, as they have
already been expressed, and no reason to insult me, as often I see it
happens in this NG when someone dares to sing out of the choir.
And yes, as I am not proficient in Javascript, I am not in the position
of say... etc. etc. Indeed I am, for the experience I have in the world
of IT. Let me know why jQuery should not be considered an honest effort
to put toghether a vaste number of programmers and have a point against
browser developers, limiting their omnipotence in deciding that we have
to break our minds just to have a script that works flawlessly on every
platform.
Oh well, If you have read this 'til here, thank you.
D. Campagna

rf

unread,
Apr 3, 2009, 8:34:53 AM4/3/09
to
D.Campagna wrote:

<snip a bunch of shit>

Thomas Allen

unread,
Apr 3, 2009, 9:00:50 AM4/3/09
to

I wish you'd put some line breaks in there...

What surprises me is the attitude that John Resig is some nincompoop
incapable of writing good code. I've been learning a ton from his
APress book "Pro JavaScript Techniques."

No software's perfect, but plenty of imperfect software is useful. I
think that I'm beginning to understand a bit more about the JS
community through these discussions. JavaScript, being a language for
which standards are critical, much like HTML and CSS (not languages),
the minutia that leads to these flamewars is of paramount importance.
I've been an A List Apart junkie for ages now and know HTML/CSS inside
and out, so when someone is doing anything the Wrong Way, it's
irresistible to call them out, especially when I know the arguments on
each side like the back of my hand.

I sometimes rail against silly "CSS Frameworks" much in the way that
others in this group call out jQuery, albeit in a less "assertive"
manner. I believe that my attitude towards people who use table-based
layouts and/or non-semantic markup is not all that far from the
attitude of those here who think that "practical" libraries like
jQuery are an utter waste of time.

Thomas

Matt Kruse

unread,
Apr 3, 2009, 10:29:00 AM4/3/09
to
On Apr 3, 8:00 am, Thomas Allen <thomasmal...@gmail.com> wrote:
> I believe that my attitude towards people who use table-based
> layouts and/or non-semantic markup is not all that far from the
> attitude of those here who think that "practical" libraries like
> jQuery are an utter waste of time.

Ooh, let's have that battle! I still use table-based layouts quite
often and for good reasons, IMO. Not always, but often.

http://giveupandusetables.com/

:)

Matt Kruse

beegee

unread,
Apr 3, 2009, 1:52:29 PM4/3/09
to
On Apr 3, 10:29 am, Matt Kruse <m...@thekrusefamily.com> wrote:

>
> http://giveupandusetables.com/
>
> :)


That's pretty funny...and true. Here's a shameful secret, my company's
site layout scheme has been completely table based for seven years.
We are an IE only private internet application and through 4 major
revisions (5,6,7,8), though other developers have been pulling their
hair out as Microsoft moves glacially slowly towards the w3c standard,
we haven't been bothered at all. Of course, if someone wanted to,
say, change the layout, we'd be screwed.

Bob

Thomas Allen

unread,
Apr 3, 2009, 2:19:45 PM4/3/09
to
On Apr 3, 1:52 pm, beegee <bgul...@gmail.com> wrote:
> That's pretty funny...and true. Here's a shameful secret, my company's
> site layout scheme has been completely table based for seven years.
> We are an IE only private internet application and through 4 major
> revisions (5,6,7,8), though other developers have been pulling their
> hair out as Microsoft moves glacially slowly towards the w3c standard,
> we haven't been bothered at all.  Of course, if someone wanted to,
> say, change the layout, we'd be screwed.

It takes me less time to maintain a tableless site because the
elements are more independent. There are some designs that require a
very complex table to pull off.

A site I put together recently at my non-profit (I developed and
deployed but didn't design it): http://www.infrastructurereportcard.org/

Many people assume that you need tables to create such a layout (a
common argument against is it's impossible to give three flexible
columns the same height). The code is heavier because it's generated
by a CMS, but the CSS would work just as well with minimalist markup.

But page layout strategies are seriously OT :^)

Thomas

Richard Cornford

unread,
Apr 3, 2009, 11:20:36 PM4/3/09
to
D.Campagna wrote:
> [english mode ON - it's not my first language, nor the second one.]
> I have been impressed by the deep knowledge of Javascript of many of
> the participants in this NG. Also I appreciate the vaste amount of
> time and diligence they are spending in giving advice to newbies
> (like me) with no rewards at all if not a sporadic "thank you very
> much" from people often in a hurry, looking for a quick (and at no
> cost) answer.

There are more rewards than you imagine. Just taking the time to write
out an explanation of some aspect of a technical subject can be valuable
in itself, as it helps clarify your own understanding of it (and gives
others the opportunity to offer corrections).

> But after many rants against jQuery, in a way that is far away
> from a technical debate, but more as a religion war, I decided
> to see who is this John Resig so hatred and criticized, and
> how the crew of buffoons followers he has are managing the
> criticism that the entire world of javascript serious
> programmers is supposed to oppose to their ludicrous library.
> Well, after a visit at the John Resig's homepage and after spending
> some time reading his blog I only would like to know how old are
> people here, for example David Mark, Thomas Lahn, or Robert Crockford

You are not scoring well on research here.

> (the first three tech-savvy persons that are coming to my mind,
> in no order).
> I have been impressed not only by the vaste amount of knowledge
> this guy is putting on the plate,

Have you? Maybe this is a matter of perspective; perceptions differ
depending on where you observe from.

> but by the amount in general of things he
> does, not to say the enthusiasm of his followers.
> My perplexity reached the top when I discovered he is only an
> undergraduate, a person that in no way cold be considered
> experienced;

Which would seem to make writing a book called "Pro JavaScript
Techniques" (where "pro" is presumably intended to be an abbreviation of
'professional') a somewhat questionable thing to have done. Pertinent
experience (along with knowledge) being something that you would expect
to see in a professional.

> and admittedly is doing things a bit for fun, in his free time
> after the hours spent to accomplish his education. Amazing!
> This is called only in a way for me, he is a kind of genius, no
> way to call him otherwise.

Not having English as a first language you may not perceive this for
what it is, but when John Resig writes, for example, :-

"Since valid HTML is simply a subset of XML, having an efficient way to
parse and browse DOM documents is an absolutely essential for making
JavaScript development easier." - John Resig: Pro JavaScript Techniques.
2006

- and disregarding its status as being factually void, it is difficult
to see the asserted 'since' relationship between 'HTML being ...' and
'an efficient way to parse .. DOM documents is an absolute essential'
as being the work of a genius. Even of the facts were there the logic
of the relationship would still be missing.

Then there are the bogus conclusions drawn on:-

<URL: http://ejohn.org/blog/most-bizarre-ie-quirk >

- where it is difficult to see how a 'genius' could have failed to
anticipate that employing an - alert - in the tests would seriously
impair an effective analysis of mouse interaction related behaviour.

> People is criticizing his work here as it were the work of an
> entire life of a pretending guy that has already made his best
> and is an incompetent.

No that is not the nature of the criticism, quite the reverse. The
criticism is that JQuery is the work of a near novice and (inevitably)
started out making nearly every mistake that would be expected of
someone that far down the browser scripting learning curve. There are
additional criticisms arising from John Resig's unwillingness to accept
that assessment, and so his resistance to changing JQuery to fix those
mistakes (or at least the mistakes that can be fixed and still leave
something that is recognisable as JQuery in existence).

Just so we don't have to go over the 'near novice' perception again,
here is the logic:-

We know that JQuery was designed before the book "Pro JavaScript
Techniques" was written, thus whatever the book shows to be true of its
author in terms of lack of knowledge or experience could only be more
true at the earlier time when JQuery was designed.

"Pro JavaScript Techniques" shows many aspects of javascript from the
optimistic perspective of first seeing a possibility, without any
evidence of being tempered by experience. So, for example, emulating
method overloading is presented as one of its 'techniques'. More
seasoned heads would give method overloading very low priority, as
something that is only very occasionally needed/useful and best avoided
otherwise. There are many reasons for this, including the fact that a
javascript programmer should know the type of value they are passing
into a function when they call it, and so it is pretty dim to throw that
knowledge away and instead have the code in the function work out what
type the argument was (with all the overheads and potential for
misinterpretation that go along with doing that work). An important
factor here being the extreme difficulty that there has always been in
effectively deducing the type of host objects (particularly given the
observed diversity in different web browsers).

Given the superficial optimism expressed in the book it is not
surprising to see method overloading as a common practice in JQuery's
code. And originally that code attempted to make decimations including
attempting to determine the types of host objects. That always was going
to be a nightmare (getting worse as it became necessary to consider more
than the initial couple of browsers) so it is not surprising that recent
changes in JQuery have notched down the method overloading as far as it
possible without re-working the public API. On the other hand, the more
experienced of us, rather than writing books extolling its virtues, have
been recommending against method overloading in javascript, and so
completely avoiding the nightmare that follows its ill considered use.

The book also gives us an insight into its author's grasp of the
fundamentals of javascript at the time of writing; the density of
technical errors and expressed misconceptions joining the doubtful
reasoning shown above to give a generally poor impression. For example,
one passage reads:-

<quote cite="John Resig: Pro JavaScript Techniques. 2006">
| In JavaScript, null, 0, '', false, and undefined are all equal (==)
| to each other, since they all evaluate to false. This means that if
| you use the code test == false, it will evaluate true if test is
| also undefined or equal to null, which may not be what you want.
|
| Listing 3-12. Examples of How != and == Differ from !== and ===
| // Both of these are true
| null == false
| 0 == undefined"
</quote>

- which might be quite an informative, useful and important statement to
make about javascript, if there was one word of truth in it.

(For those who need telling:-

Using the type-converting equality operator (==), null and undefined
equal each other but _do_not_ equal numeric zero, the empty string or
boolean false. Where Numeric zero, the empty string and boolean false do
equal each other they do so because they all type-convert to numeric
zero, not because "they all evaluate to false". There are no true
statements in the first sentence above.

If you use the code - test == false - and test is either undefined or
null then the equality expression will evaluate to false, not true as
asserted above. Whether that is "what you want" or not becomes moot
given that the expressed issue is a chimera. The second sentence above
also contains no true statements.

The expressions from 'Listing 3-12' above, - null == false - and -
0 == undefined - both evaluate to false, making the assertion
"Both of these are true" a false statement. This one is particularly
surprising as you literally only have to write and execute two lines
of code to see the error there.
)

So, at the point of writing his (first) book, John Resig's technical
understanding of the javascript language was, to say the least,
deficient.

A final quote from the book:-

"Compression should be used as the final step, just before putting your
code into production, as your code will frequently become obfuscated
beyond recognition." - John Resig: Pro JavaScript Techniques. 2006

- completes the spectrum. If an individual applies a mechanical
transformation to javascript source code that has the potential of
introducing errors (which "compression" as discussed in the book does)
just prior to putting the code into production, without first re-testing
the code (basically full regression testing) in any software house where
I have worked they would be sacked on the spot, and they would deserve
it. That is just a totally unprofessional thing to.

So at the point of writing his book John Resig had defective technical
understanding of javascript, a defective understanding of related web
technologies ("valid HTML is simply a subset of XML"), lacked the
experience to judge the appropriate application of the techniques
available in javascript and apparently was unfamiliar with professional
software authoring (testing) practices. (We can also assume he was a
lousy judge of who he should choose as technical editor for the book, as
that individual obviously wasn't qualified either.)

Given that, it can hardly be surprising that the creation pre-dating the
book should be seen as having serious deficiencies in both its design
and implementation. Indeed given the situation it would be amazing if it
did not have.

> You are talking about a young that has already made in few years more
> than the average programmer in an entire life.

Bullshit (in every possible sense).

> Yes, jQuery has flaws, I realize, but he (Resig) is talking with
> browsers developers, and he is pointing them to the flaws and
> incompatibility in the dozens of browsers lying around and making
> the life of javascript programmers a nightmare.

No he isn't. John Resig tends to speak of the 4 or 5 most common
browsers as "all browsers". That is not the attitude of someone who is
aware of (or even interested in) the diversity of browsers available,
and not likely to result in any communication with the creators of the
browsers that are not in his limited "all browsers" group.

But even then, his own perceptions of what browsers should be doing are
coloured by the pattern and timing of his own experiences of web
browsers. As many novices inevitably do, he started out with one or two
browsers and drew numerous invalid assumptions about how other browsers
should behave from his observations of those. Missing both the bigger
picture and the historical context in the process. For example, JQuery
was once burdened by the assumption that 'collection' objects (NodeList,
NamedNodeMap, HTMLCollection, etc. interface implementing objects )
would result in the string "object" if made the operand of the -
typeof - operator. And it is easy to see how that assumption might be
drawn if you only ever examined windows IE, Firefox/Mozilla and
Opera > 8.0, but historically it has always been common for the result
of such an operation to be 'function' as these 'collection' object have
been callable (pretty much in every browser except
Firefox/Mozilla/Netscape (and NetFront as it happens)).

If research had covered Mac IE 5, Konqueror, Opera <= 7, IceBrowser
and/or numerous other less common browsers the false assumption would
never have been coded into JQuery. For JQuery the issue reared its
head when Safari suddenly started to look like a browser that needed
to be accommodated, and being derived from Konqueror its response to
a - typeof - operation on a 'collection' object was 'function', and
so JQuery grow a dodgy hack to compensate for an invalid assumption
that could have been avoided from the outset with no more than the
application of a little more experience of actual web browsers.

> In no other programming languages you have to worry not only
> for the issues of the language itself, but even for the
> different implementations, the presence or not of certain
> characteristics, and so on, all leading to an unnecessary
> complexity and discouraging lack of standards.

Being ignorant of standards is not the same as there being no standards,
even if it may give that appearance.

> And if I should decide where to invest my time and energy, I most
> likely would choose the promising work of a young genius getting a
> large consensus from the vast majority of people that understands
> that this situation is getting unmanageable every day more.

If anything is true it is that browser scripting is getting ever more
manageable as time goes on. Whole areas of divergence, for example, the
Netscape 4 'Layers' concept, are now gone, never to return. It is
probably easier to write cross browser code today than it has been at
any time in the last decade.

When you consider the actions of the "vast majority" do you really think
that they understand the situation? One of the ongoing problems I face
at work is getting people (mostly server-side developers) to leave their
IE browser configured so that an error report pops-up every time there
is a script error. I maintain that our web applications should _never_
produce a script error so it is important to know immediately if they
do, because 1. it means that there is something that needs fixing, and
2. any subsequent testing of the server-side code with the browser
becomes meaningless from that point on. But still people are continually
turning the JS error reporting off, and their reason for doing it is
that every time they go on the internet they are constantly burdened by
continuously having to dismiss JS error dialogs on every site they
visit. The reality is that the vast majority of people involved in
creating javascript for the Internet don't have a clue about what they
are doing, their product spits out errors with the slightest
provocation, and most don't even have the whit to see that that is
happening.

This isn't a matter of opinion or interpretation, you can try it for
yourself; get a copy of IE (any version 6+ will do), set the Internet
Options... -> Advanced stetting to shoe an report of every JS error and
then browse the Internet for a while (it really won't matter where you
look) and see how long it takes for constant succession of script error
reports to prompt you into turning it off again.

> I - as stated - am only a newbie in javascript but in my fifthies,
> and have seen many things from the day I decided to work and study
> computer science. Nor I am a newbie in my specific field of interest
> (that involves javascript, but is not obviously the main issue), and
> can in no way accept the lack of standard and the mess browser
> scripting is, as it were an immutable state of things.

As I said, things have been improving, plus there is a huge body of
knowledge gained from experience on how things can be handled where they
have not improved so much. Feature detection, for example, has been the
subject of ongoing experimentation, development and discussion since the
closing years of the last century, so when JQuery started to adopt it
last year it was already a very long way from being a new or theoretical
idea.

> We are living in days similar to the days before Windows became the
> standard de facto and forced all the programmers and developers to
> stick with a standard, simplifying the life for everyone of us, from
> programmers to end users.

My estimation would be that the vast majority of public web servers use
Linux as an OS these days (including the web servers of organisations
that exclusively use Windows internally).

<snip>


> I just will continue to follow this NG and appreciate any advice, and
> hope no rants and angry will be directed against me. The more, I don't
> think I will use jQuery, but for sure I will stay tuned on Resig's
> progresses, and will give a look inside jQuery. I am sure I have a lot
> to learn from him too.

Be vary cautious who you 'learn' from. There are whole communities of JS
'programmers' out there who are too happy/busy congratulating each other
on their 'achievements' to notice when they are writing nonsense (let
alone ever challenge anyone else for the nonsense they are writing). It
is not a healthy situation as it propagates misconceptions, hacks and
mystical incantation. To illustrate; go to this page:-

<URL: http://www.google.com/codesearch >

- and enter the following in search box:-

typeof\s*\(?\s*[\S]+\s*\)?\s*(!|=)==?\s*("|')array("|') lang:javascript

- and do the search. What this is looking for is occurrences of test
expression along the lines of - typeof x == 'array' -. That test is a
nonsense; no native object is allowed (by specification) to result in
the string 'array' from a - typeof - operation, and while host object
are allowed to there has never been any evince that any host object ever
has at any time (and since the instigators and propagators of this
nonsense tend to think that 4 or 5 browsers constitute "all browsers" it
doesn't take much looking to be pretty sure that none of those browser's
host object do).

Yet despite the fact that - typeof x == 'array' - is never ever true for
any object the code search still turns up 2000 hits. And look at where
they are; dojo, firebug, jquery and its plugins, and so on. Supposedly
serious scripts written by (supposedly) knowledgeable people.

This is just a mystical incantation, and like most mystical inactions it
is harmless enough (the test is never true so no action is ever taken as
a
result) to never bring itself to anyone's attention. And it
propagates, through one person looking at the code of another who they
mistook for someone who know what they were doing, and 'learning'
something from that code.

The comp.lang.javascript newsgroup may be perceived as a critical
environment but at lest if someone posts this type of nonsense here
there will be someone willing to step up and say that it is nonsense.
Here we weed the mystical incantations out, while in other 'communities'
they propagate unchallenged.

> But I only would to know why the effort to have
> a more standardized platform and the work of this promising genius is
> so badly considered. No technical considerations, please, as they have
> already been expressed,

What else is there but the technical considerations?

> and no reason to insult me, as often I see it
> happens in this NG when someone dares to sing out of the choir.

More people perceive themselves as insulted than ever really are
insulted.

You have to remember that when someone acts like a fool their being
called a fool is not necessarily an insult; it might just be a statement
of fact. In a written medium it is very difficult to judge in what tone
something is being said.

> And yes, as I am not proficient in Javascript, I am not in the
> position of say... etc. etc. Indeed I am, for the experience I have in
> the world of IT. Let me know why jQuery should not be considered an
> honest effort to put toghether a vaste number of programmers and have
> a point against browser developers, limiting their omnipotence in
> deciding that we have to break our minds just to have a script that
> works flawlessly on every platform.

That last sentence doesn't quite parse (or pass) as meaningful English.
You are going to have to re-phrase it if you want the question answered.

> Oh well, If you have read this 'til here, thank you.

There were a couple of bits that I did not understand, but you appear to
be making a number of assumptions about the situation here that you
really should be questioning.

Richard.

D.Campagna

unread,
Apr 4, 2009, 8:10:31 AM4/4/09
to
First of all, thanks for your time and sorry for having misspelled your
name.
Things you say are very interesting and let me say that the quiet tone
you used is far more convincent than insults and bully assertions I was
almost resigned to get. :-)

Richard Cornford ha scritto:


>> I have been impressed not only by the vaste amount of knowledge
>> this guy is putting on the plate,
>
> Have you? Maybe this is a matter of perspective; perceptions differ
> depending on where you observe from.

More precisely, I was impressed by his age/knowledge ratio...

>> My perplexity reached the top when I discovered he is only an
>> undergraduate, a person that in no way cold be considered
>> experienced;
>
> Which would seem to make writing a book called "Pro JavaScript
> Techniques" (where "pro" is presumably intended to be an abbreviation of
> 'professional') a somewhat questionable thing to have done. Pertinent
> experience (along with knowledge) being something that you would expect
> to see in a professional.

Right, but probably he deserved some encouragement, and he will have the
time to go through a revision of his book in the future. [See above]

> ...


>
> Then there are the bogus conclusions drawn on:-
>
> <URL: http://ejohn.org/blog/most-bizarre-ie-quirk >
>
> - where it is difficult to see how a 'genius' could have failed to
> anticipate that employing an - alert - in the tests would seriously
> impair an effective analysis of mouse interaction related behaviour.

I see there that some people tried to explain this behavior, but none of
them focused on the choice of alert() as callback function. So ehm I'm
not sure I understand your point. The behavior would be different if the
callback function is different from alert()?

>> People is criticizing his work here as it were the work of an
>> entire life of a pretending guy that has already made his best
>> and is an incompetent.
>
> No that is not the nature of the criticism, quite the reverse. The
> criticism is that JQuery is the work of a near novice and (inevitably)
> started out making nearly every mistake that would be expected of
> someone that far down the browser scripting learning curve. There are
> additional criticisms arising from John Resig's unwillingness to accept
> that assessment, and so his resistance to changing JQuery to fix those
> mistakes (or at least the mistakes that can be fixed and still leave
> something that is recognisable as JQuery in existence).

But excuse me, you seems very strict when we talk about the term
'genius'. Ok, let's say not 'genius', but 'talented young programmer'.
Now if we are precise the same way on the term 'novice', well, I suspect
you forgot long time ago what a 'novice' is! Jeez, if he 's a novice a
lot of people tinkering with Javascript are just sub-normal! You told
it: it depends from the point of view.

It is probably true that many people, included me, try to learn
Javascript outside the schoolclasses, by themselves, in a disordered
way, with no precise method. This, due to the evolutions of Javascript,
his complexities and implications and his 'double nature' probably
inevitably leads to misconceptions.

My point is, the diffusion of the usage of the Internet, and the
apparently easiness of adding some script to a HTML page to obtain some
nice effects has nothing to do with professional use of Javascript.
Nevertheless all those amateurs have the right to fiddle with Javascript
and it is not realistic to suppose they go through a complete course of
study before they even write a line of code.

There are two worlds: for the beginners, and those who will never become
professionals, a limited, imprecise knowledge of Javascript is
probably all they will achieve and they will be happy with their
rudimentary and buggy scripts. jQuery for them can be a nice tool, their
sites being probably visited only by a few dozen friends using one of
the 'mainstream' browser.

I don't see it as an attempt to professionality of real Javascript
programmers like you and others in this NG and outside it.
On the other hand, who really want to have an in-deep knowledge, would
at a certain point abandon jQuery or any other generalistic library and
have its own optimized functions, I suppose.

You -I attempt- and the other pros here are absolutely right to scold
the inepts that consider themselves experts just for having put
toghether some call to a library they don't understand and then come
here for help. But probably a more benign sight toward amateurs and
their buggy stuff should not be seen as a sacrilege!

The Resig's book could be considered mainly as amateur's stuff, a kind
of test to pass to enter the world of real programming. Many of the
things he says are valuable, and for a newbie very useful. The
misconceptions became relevant when one begins to go in-deep.
Just an opinion, dr. Stockton, I don't want to argue with you, but I had
not expressed this thought in my previous post, while this is the
concept behind it. I would be glad to know your opinion.

> ... method overloading [considerations]
Thank you, I will keep in mind your words.

> possible without re-working the public API. On the other hand, the more
> experienced of us, rather than writing books extolling its virtues, have
> been recommending against method overloading in javascript, and so
> completely avoiding the nightmare that follows its ill considered use.

So it seems that Resig worked it out alone, not listening to the
exprienced programmers, entering the wrong way in some occasion.

> So, at the point of writing his (first) book, John Resig's technical
> understanding of the javascript language was, to say the least,
> deficient.

I would say, probably a very good understanding of some aspects, and
some errors typical of a self-learning person (dont know if exists in
English... in italian 'autodidatta').

> So at the point of writing his book John Resig had defective technical
> understanding of javascript, a defective understanding of related web
> technologies ("valid HTML is simply a subset of XML"), lacked the
> experience to judge the appropriate application of the techniques
> available in javascript and apparently was unfamiliar with professional
> software authoring (testing) practices. (We can also assume he was a
> lousy judge of who he should choose as technical editor for the book, as
> that individual obviously wasn't qualified either.)

This has been vastly demonstrated. I also spent some time on the deep
analisys David Mark made of jQuery (at least the parts I was able to
understand!). So, why don't simply say it's amateur's stuff, and say it
only can be useful for beginners, but should be avoided by professionals
or those willing do things the Right Way? Here I see people saying
jQuery is of no usefulness at all, and this seems a bit excessive.

>> Yes, jQuery has flaws, I realize, but he (Resig) is talking with
>> browsers developers, and he is pointing them to the flaws and
>> incompatibility in the dozens of browsers lying around and making
>> the life of javascript programmers a nightmare.
>
> No he isn't. John Resig tends to speak of the 4 or 5 most common
> browsers as "all browsers". That is not the attitude of someone who is
> aware of (or even interested in) the diversity of browsers available,
> and not likely to result in any communication with the creators of the
> browsers that are not in his limited "all browsers" group.

Sorry, but sometimes I have the impression that this situation of dozens
of browsers, everyone with its own flavour, exceptions, oddities, bugs,
implementations etc. is in some way backed or at least considered
normal. Am I the only one that consider this a crazy and unacceptable
situation and is urgent to have a middleware or some standardized
programming language in order to have a predictable behavior of any browser?

> If anything is true it is that browser scripting is getting ever more
> manageable as time goes on. Whole areas of divergence, for example, the
> Netscape 4 'Layers' concept, are now gone, never to return. It is
> probably easier to write cross browser code today than it has been at
> any time in the last decade.

Acknowledged. I thought the opposite. Let's hope the situation will
improve more and more.

> When you consider the actions of the "vast majority" do you really think
> that they understand the situation? One of the ongoing problems I face
> at work is getting people (mostly server-side developers) to leave their
> IE browser configured so that an error report pops-up every time there
> is a script error. I maintain that our web applications should _never_
> produce a script error so it is important to know immediately if they
> do, because 1. it means that there is something that needs fixing, and
> 2. any subsequent testing of the server-side code with the browser
> becomes meaningless from that point on. But still people are continually
> turning the JS error reporting off, and their reason for doing it is
> that every time they go on the internet they are constantly burdened by
> continuously having to dismiss JS error dialogs on every site they
> visit. The reality is that the vast majority of people involved in
> creating javascript for the Internet don't have a clue about what they
> are doing, their product spits out errors with the slightest
> provocation, and most don't even have the whit to see that that is
> happening.

You push an open door! I am aware of that. I just filled a complaint to
my bank, as their home banking platform does not work with Opera.
Citicorp "Outside collector" web application works only with IE.
Facebook until few days ago didn't work with Opera. And so on.
And yes, once I leaved open Firebug in 'navigating' and was astonished
by that.

> have not improved so much. Feature detection, for example, has been the
> subject of ongoing experimentation, development and discussion since the
> closing years of the last century, so when JQuery started to adopt it
> last year it was already a very long way from being a new or theoretical
> idea.

Oh, and naturally jQuery is a work in progress, i forgot to say. Maybe
in a future many of the ugliest bugs will be corrected. I think the
young talented etc. has all the desire to go on and learn. Switching to
feature detection isn't a good sign? Why not be a bit encouraging toward
this guy? I see: because he has disregarded all the suggestions given to
him, and then had to accept them as was predictable. Well, he's young. I
remember I have been so hard-headed in my green days... and i guess, you
maybe were the same on some occasion.

> Be vary cautious who you 'learn' from. There are whole communities of JS
> 'programmers' out there who are too happy/busy congratulating each other
> on their 'achievements' to notice when they are writing nonsense (let
> alone ever challenge anyone else for the nonsense they are writing). It
> is not a healthy situation as it propagates misconceptions, hacks and
> mystical incantation. To illustrate; go to this page:-

I will. Thanks. And you are a source of useful information well ranked
in my personal list, Doc.

> <URL: http://www.google.com/codesearch >
>
> - and enter the following in search box:-
>
> typeof\s*\(?\s*[\S]+\s*\)?\s*(!|=)==?\s*("|')array("|') lang:javascript
>
> - and do the search. What this is looking for is occurrences of test
> expression along the lines of - typeof x == 'array' -. That test is a
> nonsense; no native object is allowed (by specification) to result in

[snip]
Done. Thrilling!

> The comp.lang.javascript newsgroup may be perceived as a critical
> environment but at lest if someone posts this type of nonsense here
> there will be someone willing to step up and say that it is nonsense.
> Here we weed the mystical incantations out, while in other 'communities'
> they propagate unchallenged.

'very critical' seems to me a more adequate definition! :-)

> What else is there but the technical considerations?

meta-considerations on the relevance of pure technique vs. other
considerations?

> You have to remember that when someone acts like a fool their being
> called a fool is not necessarily an insult; it might just be a statement
> of fact. In a written medium it is very difficult to judge in what tone
> something is being said.

Well, I am not referring to this, I saw real and undobtables insults too!


>
> That last sentence doesn't quite parse (or pass) as meaningful English.
> You are going to have to re-phrase it if you want the question answered.

oops... sorry. Italian is not very similar to English, and I suppose
some sentences of mines appear convoluted and faulty. By the way, I
learned English by myself, and never really studied it. Anyway, it was
not so important, I have already said that.

> There were a couple of bits that I did not understand, but you appear to
> be making a number of assumptions about the situation here that you
> really should be questioning.

I will stay tuned and open-minded.
Best regards.
D. Campagna

D.Campagna

unread,
Apr 4, 2009, 9:09:32 AM4/4/09
to
Thomas Allen ha scritto:

>
> I wish you'd put some line breaks in there...
:-) so it came out from the top of my head...

>
> What surprises me is the attitude that John Resig is some nincompoop
> incapable of writing good code. I've been learning a ton from his
> APress book "Pro JavaScript Techniques."
He probably offended the community of Javascript programmers not
following advices and ignoring them. Hubris is always a boomerang!

> No software's perfect, but plenty of imperfect software is useful. I

I'll put it on the marble and use it as my epitaph! :-)

> manner. I believe that my attitude towards people who use table-based
> layouts and/or non-semantic markup is not all that far from the
> attitude of those here who think that "practical" libraries like
> jQuery are an utter waste of time.

..but there are more constructive ways to speak against it. An entire
world of beginners that want to benefit from Javascript but are
overwhelmed by the difficulties is looking for a viable way to play with it.
Thanks,
D. Campagna

RobG

unread,
Apr 4, 2009, 10:15:26 AM4/4/09
to
On Apr 4, 11:09 pm, "D.Campagna" <ynnadre...@tiscalinet.it> wrote:
> Thomas Allen ha scritto:
[...]

> > What surprises me is the attitude that John Resig is some nincompoop
> > incapable of writing good code. I've been learning a ton from his
> > APress book "Pro JavaScript Techniques."
>
> He probably offended the community of Javascript programmers not
> following advices and ignoring them. Hubris is always a boomerang!

Valid and constructive criticism was offered and it was dismissed out
of hand. The hubris was all his, jQuery has now acceded to some of
those criticisms.


[...]


> ..but there are more constructive ways to speak against it. An entire
> world of beginners that want to benefit from Javascript but are
> overwhelmed by the difficulties is looking for a viable way to play with it.

Any novice who starts programming web pages using jQuery is not
learning about javascript or the DOM - they are learning jQuery. It's
like teaching a child baby talk - eventually they must learn to speak
correctly, but have wasted much time learning useless babble.

Browse the jQuery forum - between 30% and 50% of posts are never
answered. Many responses offer seriously bad advice, e.g.:

<URL: http://groups.google.com.au/group/jquery-en/browse_frm/thread/46d17a770f2b9e1a?hl=en#
>

In that post the poster wanted to know how to disable then re-enable a
button. David Mark's favourite attr function is cited, which must
please him greatly.

Anyhow, to disable it using basic javascript would be:

document.getElementById('click_me').disabled = true;

and to re-enable it:

document.getElementById('click_me').disabled = false;


Now the jQuery suggestions:

jQuery("#click_me:button").attr("disabled", "false");

Oops! It doesn't work, next suggestion:

jQuery("#click_me:button").removeAttr("disabled");

So much for a consistent API. Ok, it's 3 keystrokes less but is very
much more inefficient than straight javascript. There are also false
assertions made in the responses (mostly because of the usual failure
to distinguish between HTML attributes and DOM properties), which go
unchallenged.

There are many similar examples - another was someone using a jQuery
selector to find all input elements with a class of "required", get
the parent label element and add an asterisk to the text to indicate
required fields. The OP wanted to avoid adding a class to the label
(which was unnecessary). The suggestion of using CSS (and no
javascript or extra class) was simply ignored:

<URL: http://groups.google.com.au/group/jquery-en/browse_frm/thread/a69abdc2b9d89743/1b20d735d58f7dc8?hl=en#1b20d735d58f7dc8
>

Much of what you may learn about javascript from jQuery and visiting
its forums will likely need to be corrected.


--
Rob

D.Campagna

unread,
Apr 4, 2009, 2:45:54 PM4/4/09
to
RobG ha scritto:

>> He probably offended the community of Javascript programmers not
>> following advices and ignoring them. Hubris is always a boomerang!
>
> Valid and constructive criticism was offered and it was dismissed out
> of hand. The hubris was all his, jQuery has now acceded to some of
> those criticisms.

Sorry for my ambiguous English, I was referring in fact to the hubris of
who rejects advices, not certainly to who offers them!

> Any novice who starts programming web pages using jQuery is not
> learning about javascript or the DOM - they are learning jQuery. It's
> like teaching a child baby talk - eventually they must learn to speak
> correctly, but have wasted much time learning useless babble.

From an amateur's point of view that has limited needs and just wants
to add some nice effects, go through the difficulties of an exhaustive
study maybe is too much. Like shot the flies with a gun...

> Browse the jQuery forum - between 30% and 50% of posts are never
> answered. Many responses offer seriously bad advice, e.g.:
>
> <URL: http://groups.google.com.au/group/jquery-en/browse_frm/thread/46d17a770f2b9e1a?hl=en#
>
> In that post the poster wanted to know how to disable then re-enable a
> button. David Mark's favourite attr function is cited, which must
> please him greatly.

:-) don't wake up the sleeping dog! (it's an italian proverb - I don't
mean I am comparing mr. Mark to a dog of course!)

> Anyhow, to disable it using basic javascript would be:
>
> document.getElementById('click_me').disabled = true;
>
> and to re-enable it:
>
> document.getElementById('click_me').disabled = false;
>
>
> Now the jQuery suggestions:
>
> jQuery("#click_me:button").attr("disabled", "false");
>
> Oops! It doesn't work, next suggestion:
>
> jQuery("#click_me:button").removeAttr("disabled");
>
> So much for a consistent API. Ok, it's 3 keystrokes less but is very
> much more inefficient than straight javascript. There are also false
> assertions made in the responses (mostly because of the usual failure
> to distinguish between HTML attributes and DOM properties), which go
> unchallenged.

But they are all amateurs, aren't? What else if a smile can be the
reaction of a professional programmer? So why bother? The serious ones
have to come here. The same way I have understood it, others will. Well,
they 'll come if they won't be discouraged by mr. Lahn if they do the
Wrong Question, or alternatively the right one but in the Wrong Way... :-)

[snip examples of bad advice...]

> Much of what you may learn about javascript from jQuery and visiting
> its forums will likely need to be corrected.

And why not add to the NG FAQ that the prevalent position of this NG is
to discourage the use of jQuery, (or any other library) explaining
briefly the reasons, with simple plain words without angry and flames,
and classify it as an amateurs tool? Then one can decide what to do and
what can get from the two worlds.
Just an idea, thanks for your reply.
D. Campagna

David Mark

unread,
Apr 4, 2009, 3:00:39 PM4/4/09
to
On Apr 4, 10:15 am, RobG <rg...@iinet.net.au> wrote:
> On Apr 4, 11:09 pm, "D.Campagna" <ynnadre...@tiscalinet.it> wrote:
>
> > Thomas Allen ha scritto:
> [...]
> > > What surprises me is the attitude that John Resig is some nincompoop
> > > incapable of writing good code. I've been learning a ton from his
> > > APress book "Pro JavaScript Techniques."
>
> > He probably offended the community of Javascript programmers not
> > following advices and ignoring them. Hubris is always a boomerang!
>
> Valid and constructive criticism was offered and it was dismissed out
> of hand.  The hubris was all his, jQuery has now acceded to some of
> those criticisms.

Has it ever. :) IT departments need to know this yesterday. I am
going to announce a jQuery abatement service on Monday (watch
LinkedIn.) I worked in IT for a decade (in Cincinnati no less, where
we are always ten years behind) and IT people are not this stupid,
they are just getting monstrously poor advice from twits with nose-
rings and fake Burberry jackets (from the Urban Dictionary definition
of a "townie.")

IE8 is Y2K for jQuery and Resig has slept right through it. What a
profit opportunity for enterprising Javascript programmers. All
targets are now free.

>
> [...]
>
> > ..but there are more constructive ways to speak against it. An entire
> > world of beginners that want to benefit from Javascript but are
> > overwhelmed by the difficulties is looking for a viable way to play with it.
>
> Any novice who starts programming web pages using jQuery is not
> learning about javascript or the DOM - they are learning jQuery.  It's
> like teaching a child baby talk - eventually they must learn to speak
> correctly, but have wasted much time learning useless babble.

Well, in the case of most Web designers, useless babble is their stock
in trade, so it was a natural fit.

>
> Browse the jQuery forum - between 30% and 50% of posts are never
> answered.  Many responses offer seriously bad advice, e.g.:
>

> <URL:http://groups.google.com.au/group/jquery-en/browse_frm/thread/46d17a7...


>
>
>
> In that post the poster wanted to know how to disable then re-enable a
> button.  David Mark's favourite attr function is cited, which must
> please him greatly.

LOL. Actually, it sickens me. The only people pleased are Adobe and
Microsoft (why do you think the latter is cranking up the volume on
jQuery?) The door is wide open for something like Flash or
Silverlight to take over. And I thought Crockford was nuts when he
said that. There's no question at this point that change is coming.
Software development doesn't work like this (not for long anyway.)

And, of course, jQuery all over the Web means lots of broken and/or
inaccessible Websites. It's always been that way, but with the
release of IE8 it has gone from an outbreak to a full-blown epidemic.

>
> Anyhow, to disable it using basic javascript would be:
>
>   document.getElementById('click_me').disabled = true;
>
> and to re-enable it:
>
>   document.getElementById('click_me').disabled = false;
>
> Now the jQuery suggestions:
>
>   jQuery("#click_me:button").attr("disabled", "false");

No, no wait! It's:

jQuery("#click_me:button").attr("disabled", false);

Dude, it's this:

jQuery("#click_me:button").attr("disabled", 'notdisabled');

Try this:

jQuery("#click_me:button").attr("disabled", '');

Or "step outside of jQuery" and use this:

jQuery("#click_me:button")[0].disabled = 'false';

Damn, that didn't work either. What is an attribute anyway? Should I
try the "Javascript setAttribute."

Who *are* these people?

>
> Oops! It doesn't work, next suggestion:
>
>   jQuery("#click_me:button").removeAttr("disabled");

LOL.

removeAttr: function( name ) {
jQuery.attr( this, name, "" );
if (this.nodeType == 1)
this.removeAttribute( name );
},

If you trace the convoluted web of the attr method's logic, that first
line only works (in this case) by coincidence (and assumes browsers
will type convert "" to false when setting the disabled property.)
And God only knows what removeAttribute means to IE < 8.

>
> So much for a consistent API.  Ok, it's 3 keystrokes less but is very

It is consistent in that it always presents the same interface, which
is unfortunate for software deployed across wildly disparate
environments. I love how the XHR creation blows up the first time you
call it in IE (unless your security settings match what Resig
expected!) Hard to do progressive enhancement without a clue about
the present environment.

> much more inefficient than straight javascript.  There are also false
> assertions made in the responses (mostly because of the usual failure
> to distinguish between HTML attributes and DOM properties), which go
> unchallenged.

That is everywhere on the Web. Tutorials, blog entries, examples,
anecdotes. They are all flailing at phantoms (on roller skates.)
Just what the Web needed, an army of clueless ingrates spreading
defective code that they don't understand (and likely never will.)

Well, as they say, with Ajax, "Javascript now works." Sure, it was
such an unusable mess in 2005. (!) These days it really is easy to
write cross-browser code and these bums can't even write multi-IE
code. Also, did you see where Resig trimmed Opera 8 and Safari 2 from
his list of "supported browsers" (among others?)

>
> There are many similar examples - another was someone using a jQuery
> selector to find all input elements with a class of "required", get
> the parent label element and add an asterisk to the text to indicate
> required fields.  The OP wanted to avoid adding a class to the label
> (which was unnecessary).  The suggestion of using CSS (and no
> javascript or extra class) was simply ignored:
>

> <URL:http://groups.google.com.au/group/jquery-en/browse_frm/thread/a69abdc...

Simply ignoring is the modus operandi of the simple and ignorant.

>
>
>
> Much of what you may learn about javascript from jQuery and visiting
> its forums will likely need to be corrected.

http://en.wikipedia.org/wiki/Little_Known_Facts

Garrett Smith

unread,
Apr 4, 2009, 7:08:03 PM4/4/09
to

The prevalence of javascript libraries (and jQuery in particular) has
flooded mainstream professional jobs so much that nearly every job that
is presented to me in my inbox is asking for the use of a library.

> You -I attempt- and the other pros here are absolutely right to scold
> the inepts that consider themselves experts just for having put
> toghether some call to a library they don't understand and then come
> here for help. But probably a more benign sight toward amateurs and
> their buggy stuff should not be seen as a sacrilege!
>
> The Resig's book could be considered mainly as amateur's stuff, a kind
> of test to pass to enter the world of real programming. Many of the
> things he says are valuable, and for a newbie very useful. The
> misconceptions became relevant when one begins to go in-deep.
> Just an opinion, dr. Stockton, I don't want to argue with you, but I had
> not expressed this thought in my previous post, while this is the
> concept behind it. I would be glad to know your opinion.
>

Then the book could be titled "Beginning JavaScript" or "Beginning Web
Programming."

If so titled, the book would still have all the aforementioned mistakes,
but would not have the effect of establishing J Resig as an expert of
JavaScript.


>> ... method overloading [considerations]
> Thank you, I will keep in mind your words.
>
>> possible without re-working the public API. On the other hand, the more
>> experienced of us, rather than writing books extolling its virtues, have
>> been recommending against method overloading in javascript, and so
>> completely avoiding the nightmare that follows its ill considered use.
>
> So it seems that Resig worked it out alone, not listening to the
> exprienced programmers, entering the wrong way in some occasion.
>
>> So, at the point of writing his (first) book, John Resig's technical
>> understanding of the javascript language was, to say the least,
>> deficient.
>
> I would say, probably a very good understanding of some aspects, and
> some errors typical of a self-learning person (dont know if exists in
> English... in italian 'autodidatta').
>

How about learning surgery and at the same time commencing writing a
book entitled "Pro Surgery Techniques"? Is that autodidatta?

>> So at the point of writing his book John Resig had defective technical
>> understanding of javascript, a defective understanding of related web
>> technologies ("valid HTML is simply a subset of XML"), lacked the
>> experience to judge the appropriate application of the techniques
>> available in javascript and apparently was unfamiliar with professional
>> software authoring (testing) practices. (We can also assume he was a
>> lousy judge of who he should choose as technical editor for the book, as
>> that individual obviously wasn't qualified either.)
>
> This has been vastly demonstrated. I also spent some time on the deep
> analisys David Mark made of jQuery (at least the parts I was able to
> understand!). So, why don't simply say it's amateur's stuff, and say it
> only can be useful for beginners, but should be avoided by professionals
> or those willing do things the Right Way? Here I see people saying
> jQuery is of no usefulness at all, and this seems a bit excessive.
>

The newsgroup is useful for learning javascript. Libraries get in the
way of learning javascript. So, it is not useful for beginners who are
interested in learning javscript.

[...]

>
> Sorry, but sometimes I have the impression that this situation of dozens
> of browsers, everyone with its own flavour, exceptions, oddities, bugs,
> implementations etc. is in some way backed or at least considered
> normal. Am I the only one that consider this a crazy and unacceptable
> situation and is urgent to have a middleware or some standardized
> programming language in order to have a predictable behavior of any
> browser?
>

If this is related to jQuery, then what does jQuery add that is
predictable?

Garrett

D.Campagna

unread,
Apr 5, 2009, 4:30:10 AM4/5/09
to
Garrett Smith ha scritto:

>>
>> I don't see it as an attempt to professionality of real Javascript
>> programmers like you and others in this NG and outside it.
>> On the other hand, who really want to have an in-deep knowledge, would
>> at a certain point abandon jQuery or any other generalistic library
>> and have its own optimized functions, I suppose.
>>
>
> The prevalence of javascript libraries (and jQuery in particular) has
> flooded mainstream professional jobs so much that nearly every job that
> is presented to me in my inbox is asking for the use of a library.
>

I was not aware of such a situation.

>> The Resig's book could be considered mainly as amateur's stuff, a kind
>> of test to pass to enter the world of real programming. Many of the
>> things he says are valuable, and for a newbie very useful. The
>> misconceptions became relevant when one begins to go in-deep.
>> Just an opinion, dr. Stockton, I don't want to argue with you, but I
>> had not expressed this thought in my previous post, while this is the
>> concept behind it. I would be glad to know your opinion.
>>
>
> Then the book could be titled "Beginning JavaScript" or "Beginning Web
> Programming."

Marketing. Here in Italy, when you see small car's advertising, it seems
they are talking of a Ferrari. :-)

> How about learning surgery and at the same time commencing writing a
> book entitled "Pro Surgery Techniques"? Is that autodidatta?

:-) a presumptuous one. But the point is, no university would adopt that
book, nor consider it.

> The newsgroup is useful for learning javascript. Libraries get in the
> way of learning javascript. So, it is not useful for beginners who are
> interested in learning javscript.
>

Yes, now I see. I was undervaluing the fact that jQuery is not pure
Javascript, is a kind of pollution. And here people is talking about
Javascript. Now it is clearer.

>> Sorry, but sometimes I have the impression that this situation of
>> dozens of browsers, everyone with its own flavour, exceptions,
>> oddities, bugs, implementations etc. is in some way backed or at least
>> considered normal. Am I the only one that consider this a crazy and
>> unacceptable situation and is urgent to have a middleware or some
>> standardized programming language in order to have a predictable
>> behavior of any browser?
>>
>
> If this is related to jQuery, then what does jQuery add that is
> predictable?

:-) the angry of hard-core js programmers?
Thanks,
D. Campagna

David Mark

unread,
Apr 6, 2009, 2:30:41 PM4/6/09
to

That trend is certainly on the way out. If for no other reason than
the jQuery/IE8 fiasco. I was talking to some local IT contacts about
this today. Suffice to say that at least a couple of local shops now
see "jQuery" on a resume as a huge red flag. IT is a small town in
Cincinnati, so word will spread quickly (Blue Horse Shoe *hates*
jQuery.)

I am about to roll the arguments out on the various LinkedIn groups
and their Q&A section. It is obvious that jQuery does not fit into
any (sane) business model. An army of in-the-dark nitwits frantically
rushing from one site to the next to upgrade script(s) each time a new
browser comes out? Re-testing complicated (and often minified)
interdependent blobs of Javascript that even the authors don't
understand? Rewriting calling apps because constant and chaotic
updates break their expectations? That's not how the Web or software
development in general is supposed to work and it is part of what
killed Prototype.

Come to find out over the weekend that not only is jQuery
irretrievably broken in IE8 and virtually unusable on iPhones, but it
refuses to load at all on NetFront (PS3 and lots of older phones.) So
now somebody is "porting" an abandoned iPhone script called IUI using
jQuery. This is the tipping point. From here, things can't possibly
get any more absurd.

Think reception of an idea that so many people were so wrong for so
long will be easily deflected? One word: Madoff.

[snip]

Thomas Allen

unread,
Apr 6, 2009, 2:51:38 PM4/6/09
to

I won't be wasting my time in a debate to nowhere, but I want to let
everyone here know that these continuing tirades regarding IE8
compatibility are unfounded and stink of FUD tactics. The latest
release (1.3.2, Feb. 20) passed the test suite in IE8 - RC1.

http://docs.jquery.com/Release:jQuery_1.3.2

While it appears that there are some minor bugs to resolve, it seems
that most jQuery developers are not experiencing any compatibility
issues.

Thomas

David Mark

unread,
Apr 6, 2009, 3:25:03 PM4/6/09
to

No?

> everyone here know that these continuing tirades regarding IE8

Everyone here know (sic) what?

> compatibility are unfounded and stink of FUD tactics. The latest
> release (1.3.2, Feb. 20) passed the test suite in IE8 - RC1.

LOL. Resig's concept of unit tests? GIGO. And RC1? Try searching
the Web, townie. We know you can't understand the code or
explanations, so anecdotes are all you have.

For those who do understand, it is patently obvious that Resig and
friends slept through their Y2K.


// Clean up the element expando
try {
delete elem[ expando ];
} catch(e){
// IE has trouble directly removing the expando
// but it's ok with using removeAttribute
if ( elem.removeAttribute )
elem.removeAttribute( expando );
}

What's wrong with that picture? Hint: lots of things. Nobody
involved with that project has the slightest idea what they are doing,
especially when it comes to IE. Ten years after IE6 came out, they
are still on a quest for explanations for its quirks. IE7 changed
almost nothing related to JS, so they had ten straight years of mind-
numbing predictability to observe. They spent most of that time
twiddling with the UA string, then made a sudden about-face on the eve
of IE8 (as I told them they would a full year prior.) Unfortunately,
they fell flat on their collective faces and now even users of the
latest version of the most deployed browser in the world have to deal
with "jQuery incompatibilities."

removeAttr: function( name ) {
jQuery.attr( this, name, "" );
if (this.nodeType == 1)
this.removeAttribute( name );
},

Sorry, if there were only one person working on this script, it would
still be considered a miserable failure. The goal was to have lots of
people working on it so that they could "keep up" with the browsers.
I can't even see them anymore. :)

>
> http://docs.jquery.com/Release:jQuery_1.3.2

Two revisions in two months. Still not even close and IE8 was clearly
the catalyst for the 1.3 release. Of course, as is typical, there's
lots of additional chaos to debug as everybody has thrown their own
two cents in over the last year or so. This seems like a sane
strategy to you?

>
> While it appears that there are some minor bugs to resolve, it seems

As if you know anything about the bugs or their size. And sites are
not supposed to break every time a new browser comes out (certainly
not a new version of IE that had been in Beta seemingly forever.)
Also, asking a neophyte to supervise the constant upgrades of John
Resig's fantasy code, often in minified form, when they don't have the
slightest clue what they are debugging is... sane? Lopping off all
but the last released major browsers from the "supported" list is a
way to make that job easier, but hardly a competent strategy.

The alternative, as promoted since the turn of the century, is to
write proper cross-browser code, which will typically last forever. I
write Web applications for a living and I can't remember the last time
I had to update anything due to a new browser. These guys can't keep
a simple "Ajax site" running from one month to the next.

> that most jQuery developers are not experiencing any compatibility
> issues.

"Most jQuery developers" write sites that work in "all browsers" and
are not experiencing "any compatibility issues?" Hard to argue with
"logic" like yours.

David Mark

unread,
Apr 6, 2009, 3:32:06 PM4/6/09
to
On Apr 6, 2:51 pm, Thomas Allen <thomasmal...@gmail.com> wrote:

Forgot to add, they don't support any of the IE8 compatibility modes
either. So much for compatibility. The plug-in developers are
finding that their fiddlesticks fall apart in the default IE8 mode and
are dutifully informing people to use compatibility mode as a
workaround. (!)

Others are creating popups to exhort users to upgrade to IE8. (!!)
The right hand just doesn't know what the left hand is doing.

That's really most of what these sites do (pop up DIV's.) Amazing
they can't do that consistently across the various IE versions. Even
more amazing that Web developers would be foolish enough to try as a
broken popup means an unusable document. The best advice a jQuery
"programmer" can give an end-user is to disable scripting.

Reply all
Reply to author
Forward
0 new messages