From: J.S.Criptoff on
On 19 ÁÐÒ, 15:40, "Richard Cornford" <Rich...(a)litotes.demon.co.uk>
wrote:
> J.S.Criptoff wrote:
> > While c.l.j regulars are ridiculing John Resig's first
> > javascript book he's writing the second one - "Secrets
> > of the JavaScript Ninja".
>
> <snip>
>
> That would not necessarily have to such a bad thing as it may at first
> appear to be. The first book was published in 2006 and it is possible to
> learn a great deal in two years. Granted I don't think that John Resig's
> attitude will lend itself to facilitating his learning anything
> effectively.
>
> Richard.

In two years? Are you kidding, Richard? John Resig gave a presentation
for the local ACM of Northeastern University and covered the basics of
javascript a few weeks ago. Weeks. Look at his slide, Richard:

Type coersion
0 == false
null == false
!"foo" == false

And listen to guru-ninja's explanation: "Zero is equal to false. Zero
gets coerced into becoming Á boolean value... Same thing with
nulls...".

from 5:50
http://video.google.com/videoplay?docid=-7485992465859932389
From: Thomas 'PointedEars' Lahn on
Richard Cornford wrote:
> Andrew Dupont wrote:
>> On Apr 17, 10:57 am, Thomas 'PointedEars' Lahn wrote:
>>> Yours is an "appeal to authority" fallacy, BTW.
>
> I didn't think that was an appeal to authority, more of an appeal to
> bulk, in some sens.

Quoting people who approve of something and concluding that therefore this
something must be good is the classical example for the logical fallacy of
appeal to authority, also known as "ipse dixit" ("he himself said it").

Unfortunately, out of general appreciation of the other person, several
regulars around here tend to fall victim to this fallacy as well, without
recognizing it. We should strive to avoid such fallacious arguments,
especially as they only weaken a good case when confronted with an argument
that is fallacious as well.

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


PointedEars
--
Use any version of Microsoft Frontpage to create your site.
(This won't prevent people from viewing your source, but no one
will want to steal it.)
-- from <http://www.vortex-webdesign.com/help/hidesource.htm>
From: Richard Cornford on
J.S.Criptoff wrote:
>Richard Cornford wrote:
>> J.S.Criptoff wrote:
>>> While c.l.j regulars are ridiculing John Resig's first
>>> javascript book he's writing the second one - "Secrets
>>> of the JavaScript Ninja".
>> <snip>
>>
>> That would not necessarily have to such a bad thing as it may

That really should have been; "... have to be such a bad thing ..".

>> at first appear to be. The first book was published in 2006
>> and it is possible to learn a great deal in two years. Granted
>> I don't think that John Resig's attitude will lend itself to
>> facilitating his learning anything effectively.
>
> In two years? Are you kidding, Richard?

Not at all. The bulk of what I have learnt about javascript was learnt
in the period from 2002 to 2004. Two years is plenty of time, if you put
the effort in and are receptive to the idea that you really didn't know
it all to start with.

> John Resig gave a presentation for the local ACM of
> Northeastern University and covered the basics of
> javascript a few weeks ago. Weeks. Look at his slide,
> Richard:
>
> Type coersion
> 0 == false
> null == false
> !"foo" == false
>
> And listen to guru-ninja's explanation: "Zero is equal to
> false. Zero gets coerced into becoming ? boolean value...
> Same thing with nulls...".
<snip>

Well, I did say that his attitude would get in the of his potential to
learn. He dropped into a thread on this group with the subject
"prototype - Good/Bad/Why?", which commenced 15th February 2008 and in
which the section of his first book that reads:-

"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."

- and goes on to state that:-

"Listing 3-12. Examples of How != and == Differ from !== and ===
// Both of these are true
null == false
0 == undefined" - John Resig: Pro JavaScript Techniques. 2006

- was directly criticised for its demonstrably false statements about
javascript (and also the competence of the book's technical editor (who
apparently works for Google) as a result of letting those errors pass
uncorrected). If he had hung around and paid attention to his critics he
would not have been repeating that same mistake just a couple of weeks
ago. But then the code:-

| makeArray: function( array ) {
| var ret = [];
|
| // Need to use typeof to fight Safari childNodes crashes
| if ( typeof array != "array" )
| for ( var i = 0, length = array.length; i < length; i++ )
| ret.push( array[ i ] );
| else
| ret = array.slice( 0 );
|
| return ret;
| },

- was still in the last (1.2.3) release of JQuery more than six months
after John Resig had been directly asked to justify it during his
previous visit to this group. He did not attempt to justify it (which
would not have been that difficult if it could be justified at all [1]),
but apparently also did not grasp the reason for the criticism.

Interestingly I observed Matt Kruse (who is the nearest thing to a
supporter JQuery has among the regular contributors to this group, and
someone who can easily outgun anyone directly involved in JQuery
development when it comes to javascript) directly asked however was
responsible for the - if ( typeof array != "array" ) - code to own up to
it in a post on the JQuery development group. However, when I checked
back a week later to see if anyone had the intellectual integrity to own
up to their mistake I found that Matt's post had been deleted from the
group.

Well, we get used to the intellectual freedom of Usenet, where criticism
is just a matter of public record. While those more familiar with
blogging and (self?) moderated Google forums might see deleting their
critics as a satisfactory approach to avoiding realising their mistakes.

Richard.

[1] For those who need to be told; javascript primitives and native and
built in objects may only result in the strings 'string', 'undefined',
'object', 'function', 'number' and 'boolean' from a typeof operation
(with no known implementation bugs in this area). Host objects are
allowed to return any value (or even throw exceptions), such as when the
methods of ActiveX object result in the string 'unknown' when a typeof
operation is applied to them. So, if the code - if ( typeof array !=
"array" ) - makes any sense at all there must be an object property of a
host object in a browser (and since JQuery only works with the default
configurations of just four browser it must be one of those four
browsers) with a - slice - method that results in 'array' when a typeof
operation is applied to it. It should not be at all difficult to name
the object/property and browser/browser version in question, and so
justify code that otherwise looks like a long running mistake that is
being repeated in the face of direct criticism.


From: Richard Cornford on
Thomas 'PointedEars' Lahn wrote:
> Richard Cornford wrote:
>> Andrew Dupont wrote:
>>> On Apr 17, 10:57 am, Thomas 'PointedEars' Lahn wrote:
>>>> Yours is an "appeal to authority" fallacy, BTW.
>>
>> I didn't think that was an appeal to authority, more of an
>> appeal to bulk, in some sens.
>
> Quoting people who approve of something and concluding that
> therefore this something must be good is the classical example
> for the logical fallacy of appeal to authority, also known as
> "ipse dixit" ("he himself said it").

It is certainly an appeal to something, but it often feels as if that
something is not "authority" much of the time. After all, why should
NASA, Apple or CNN be considered authorities on web development at all.
You would not cite someone who was perceived as having web development
expertise in support of opinions on space exploration, computer hardware
design or news broadcasting so why attempt to do so the other way
around.

And Google is just a joke in any list of 'authorities' on web
development. I noticed at the beginning of last week that they have
(after just half a decade) finally managed to improve the accuracy of
their adding-up code on Google groups to an accuracy better than the
previous plus or minus 60% (and so radically re-arrange their 'all time
top posters' list for comp.lang.javascript), and the next day I tried to
show someone that they had done something about that code only to find
that the page containing the list was no longer working at all (and
stayed non-functional for the rest of the week). Their code is clearly
such a mess that whenever they try to fix one of its faults it promptly
unravels somewhere else.

> Unfortunately, out of general appreciation of the other
> person, several regulars around here tend to fall victim
> to this fallacy as well, without recognizing it.

Yes, and it seems to be getting to be me who keeps being cited as an
authority. I suppose that I probably should not worry about that from a
personal point of view because for each opinion of mine that is
accurately represented there will also be reasoned statement of
justification for that position somewhere on the public record. Though
it is perhaps a pity that reasoned arguments are apparently not seen as
standing or falling independently of any 'authority' that makes them,
and so should be presented in themselves.

> We should strive to avoid such fallacious arguments,
> especially as they only weaken a good case when confronted
> with an argument that is fallacious as well.

That would be good. But I can certainly see how the Prototype.js/JQuery
argument is starting to get so old that people are reverting to
knee-jerk generalisation as an alternative to going over it all again.

Richard.


From: VK on
On Apr 19, 12:13 am, John G Harris <j...(a)nospam.demon.co.uk> wrote:
> On Thu, 17 Apr 2008 at 11:34:01, in comp.lang.javascript, VK wrote:
> >On Apr 17, 9:32 pm, Gregor Kofler <use...(a)gregorkofler.at> wrote:
>
> <snip>
>
> >> > CNN (betaversionhttp://beta.cnn.com/) uses Prototype
>
> >> Super slow loading - about 50% of the 630kB payload is eaten up by JS
> >> files...
>
> >It takes 3sec on my 4Mb/sec downstream DSL for the initial page
> >display where the download itself takes 0.39sec You may want to
> >consider switching from Dial-Up to something more speedy ;-)
>
> A lot of sailors have to use dial-up via INMARSAT. Do you have a cheery
> word for them ?

As a person: "Good and safe trip to all of you!".
As a web developer: nothing. Unless of course some particular project
will require to accommodate the content delivery to the most thin
clients and/or most narrow bandwidth. In the latter case we will do
anything possible within the budget for that: from light weighted HTML
to WML. But no one will change the Web in whole neither for Inmarsat
nor for GSM cell phone surfers.