D
David Mark
What a bunch of fools. Topped by one of the Cappuccino (!)
promoters. He didn't care for my "superficial" review of Cappuccino
and, of course, thinks anyone with a complaint about a JS library has
an evil agenda.
http://news.ycombinator.com/item?id=993300
Cappuccino. That's something built on top of Sproutcore, right? No
need to get any deeper than that.
I don't care to create an account with "Hacker News", so I will
respond here.
"Ah yes, David Mark. This guy trashes other JavaScript frameworks
(usually quite pedantically) in order to promote his own "My Library".
Not a good strategy if you ask me."
Always a conspiracy with these people. So, instead of looking at the
code in question, they change the subject.
"Use a dollar sign anywhere in your code and David Mark will declare
you an incompetent fool."
I never talk about such minutiae. Why would I when there are far more
glaring problems to address?
"I'm far too much of a generalist to consider myself a JavaScript
expert. However, even I can pick out a number of items in his lib that
shouldn't have been handled the way they are:
He declares $ in a global context without first checking for its
existence"
So? The builder told you not to include the $ feature. If it steps
on jQuery, too bad. Don't mash multiple GP libraries into one
document.
"He uses RegExp objects constantly -- in 50 different places in his
full "mylib.js" -- including in cases where a simple indexOf would be
better"
Fifty huh?
", and, best yet, he doesn't bother to cache them in any of the dozen
or so cases that I examined."
So? It's still much faster then virtually everything else out there
(pick any task).
"Wasn't that one of his criticisms of someone else's code?"
No.
"His treatment of camelCase is truly embarrassing, relying on an ugly
RegExp every time it's called. Try something like this instead:"
I'll skip the ingenious suggestion to cache camel-cases.
"If Resig is incompetent, then 99.99% of Javascript coders should quit
immediately. Maybe 100%."
Pity, it seems that way.
"It's sad that one person can destroy an entire community. But one
can."
Oh, there I go again. Which community have I destroyed now?
"According to his LinkedIn, David Mark is now working at Sitepen, the
primary contributors to Dojo. I guess he no longer believes that all
JavaScript frameworks are completely idiotic..."
I don't follow that at all. And notice the fixation on me, rather
than jQuery. They'll never learn that way.
"Therefore, I'm sad to admit that, in this case, he almost has a
point. The use of attr('height') to mean not the height attribute in
the DOM but as an alias for height() smells wrong to me. However, it's
clear that he has absolutely no intention of becoming a productive
contributor to jQuery or helping in any way."
Of course not. It's not fixable. Ask Matt Kruse.
"By contrast, let's take a minute to appreciate this Matt Kruse
fellow. He has apparently strong objections to something in jQuery's
design and is taking it to John Resig."
....after I pointed it out to him.
"He seems ready to engage in a real dialogue. The end result? He
probably ends up a little happier and jQuery ends up a little better."
Nope. Didn't happen that way at all. Resig got really confused and
started bitching about "drama" in the mailing list. End result:
nothing changed.
"The real question is: how can we have more Matt Kruses and fewer
David Marks in the world? Do the David Marks of world drive off the
Matt Kruses? (I think they almost certainly do.) Why are there so many
sociopathic personalities in circles such as this, and how do we
mitigate the damage they cause?"
Oh brother. On the Internet, everyone's a psychiatrist. Can't seem
to follow basic cause and effect either.
"In my experience perhaps the only way of dealing with characters like
David Marks is by completely ignoring their contributions."
Like an ostrich does? If you can't see the bugs, they can't bite you?
"David Mark is an anti-jQuery crusader. He is known for speaking ill
of people who use the library as well as the developers (John Resig in
particular). He insists that jQuery is responsible for all of the
sites across the internet that have JavaScript errors."
All of them? That sounds like a gross misinterpretation.
"What I don't understand is why he doesn't work to help jQuery to be
better then and contribute a bit? If its causing errors and bugs then
certainly he could help some instead of complaining?
Resig +1 Mark -1"
These rubes have no idea where the better ideas in jQuery come from,
do they?
And contribute directly? Their idiotic moderator banned
me after one post. They don't like to hear they are wrong about
anything as it could affect their popularity. Of course, the
dwindling posts to their mailing list suggest people are starting to
notice the results don't add up.
"He (David Mark) isn't going to get much support with his attitude."
Who's looking for support? I do enjoy publicity immensely though.
For every 1000 crackpots out there, there are a handful that actually
get the message.
(Speaking of My Library).
"It's not all that usable ITRW."
Had to look that one up. And, of course, it is In the Real World.
The phrase is so popular, they've coined a shorthand version. Use at
the risk of sounding like a drooling jackass. And is there really
some other world where jQuery's logic makes sense?
"I'd like to see him write cross browser key-event handling code
without doing UA sniffing. Honestly, I would like that. He committed
an attempt to a branch of Dojo but it's not in service and doesn't
actually work."
LOL. BTDT. There's a rendition in My Library, Too. And I didn't do
anything to Dojo's keyboard handling (except rip out the browser
sniffing). I've recommended the keyboard bits be re-designed and
replaced (likely with my rendition). But, of course, there's always
that backward compatibility specter.
"Or, to put it in more childish terms, "if you're so smart, let's see
you do it.""
Where's _your_ cool JS library? Then when they find out there is one,
it's "aw, UR just jealous of jQuery".
"His arguments are nonsensical. Are there bugs in jQuery? To be sure."
Why is it they always seek to defuse the situation by stipulating that
there are indeed bugs? Some bugs are mistakes, others indicate
incompetence on the part of the authors. You've got to be able to
tell the difference.
"But he has absolutely no clue what real developers are looking for in
a library."
I see. Real Developers that live in the Real World (and use jQuery).
"Many of the complaints in his critiques center around the fact that
jQuery does things which will break browsers like Netscape 4 and IE
5."
Not even close. That's the last thing I would worry about. You know
you are effective when people start making up lies to deflect
scrutiny.
"Not only does jQuery not claim to support those browsers,"
Regardless, who cares what they claim to "support". Are users with
older browsers supposed to be privy to that list? You can't degrade
browsers by press release.
"there are literally no web developers using jQuery who care about
support for those browsers."
So? It was their made-up point of contention.
And, of course, some other rube ran with it.
"Exactly. I would never pretend my code would run on anything less
than IE6 or any brand of ancient Netscape. I'd love to know which
browsers shipping today fail on:
window.blah === undefined
and require the more verbose equivalent I've seen pushed on c.l.j:
typeof window.blah === "undefined"
There's simply no market left for this sort of paleo-Javascript."
No idea what any of that means, except that this guy likes jQuery and
has conned others into thinking there is a market for _his_ services.
"I remember reading one of his rants from a while back, and it
actually caught me off guard. I know quite a bit about javascript, but
the way he was talking made me think I was perhaps missing the boat. I
looked into what he was saying, and some of it was sort of accurate,
but not really relevant.
I think he just has angry-hyperactively-perfectionist-armchair-
developer syndrome.
Case in point: where is his brilliant contribution to the JavaScript
ecosystem?"
Aw, where's my cool JS library?
"There are so many better outlets, anyone who's feeling trapped on
comp.lang.javascript should just go somewhere else.
I think it's a bold claim to say that David's understanding of the DOM
is "significantly deeper" than John's. Especially considering that the
DOM is not a particularly complex set of APIs."
Perhaps it is more complex than they think. Resig sure seems to be
lost.
"One of his quotes 'Every time a new browser version is released,
anything built on them has to be re-tested due to an inexplicable
reliance on the user agent string'.
Not really most libraries use feature testing, especially jQuery and
John advocates feature testing in quite a few of his writings."
Resig thinks he uses feature testing. What little bit there is to be
found in jQuery can be found (almost verbatim in most cases) in My
Library. He'd still be sniffing the UA string if I hadn't published
that.
"However, most JS coders are too busy using jQuery or Prototype or
something to Get Their Project Done and then move on to the next thing
to be bothered by this guy."
They like CAPS, don't they? This one is going into my brochure with
other bonehead remarks from disingenuous developers.
"It's hard to find much validity, especially when it starts to boil
down to comments like "As I recall, it seemed needlessly complex." He
long ago formed the opinion that all libraries were shit, and
apparently made that basis on how complex the code seemed and other
superficial reasons."
As I recall, I didn't say that. Hard to say without context.
"I actually had to go and google the person in question. After about
five or so newsgroup messages from him badmouthing other people I gave
up.
Still no idea who he is."
No? You sure won't catch me Googling this guy.
"There is always some guy, I've never heard of, being an asshole on
any given topic on the Internet."
Sometimes whole bands of them.
promoters. He didn't care for my "superficial" review of Cappuccino
and, of course, thinks anyone with a complaint about a JS library has
an evil agenda.
http://news.ycombinator.com/item?id=993300
Cappuccino. That's something built on top of Sproutcore, right? No
need to get any deeper than that.
I don't care to create an account with "Hacker News", so I will
respond here.
"Ah yes, David Mark. This guy trashes other JavaScript frameworks
(usually quite pedantically) in order to promote his own "My Library".
Not a good strategy if you ask me."
Always a conspiracy with these people. So, instead of looking at the
code in question, they change the subject.
"Use a dollar sign anywhere in your code and David Mark will declare
you an incompetent fool."
I never talk about such minutiae. Why would I when there are far more
glaring problems to address?
"I'm far too much of a generalist to consider myself a JavaScript
expert. However, even I can pick out a number of items in his lib that
shouldn't have been handled the way they are:
He declares $ in a global context without first checking for its
existence"
So? The builder told you not to include the $ feature. If it steps
on jQuery, too bad. Don't mash multiple GP libraries into one
document.
"He uses RegExp objects constantly -- in 50 different places in his
full "mylib.js" -- including in cases where a simple indexOf would be
better"
Fifty huh?
", and, best yet, he doesn't bother to cache them in any of the dozen
or so cases that I examined."
So? It's still much faster then virtually everything else out there
(pick any task).
"Wasn't that one of his criticisms of someone else's code?"
No.
"His treatment of camelCase is truly embarrassing, relying on an ugly
RegExp every time it's called. Try something like this instead:"
I'll skip the ingenious suggestion to cache camel-cases.
"If Resig is incompetent, then 99.99% of Javascript coders should quit
immediately. Maybe 100%."
Pity, it seems that way.
"It's sad that one person can destroy an entire community. But one
can."
Oh, there I go again. Which community have I destroyed now?
"According to his LinkedIn, David Mark is now working at Sitepen, the
primary contributors to Dojo. I guess he no longer believes that all
JavaScript frameworks are completely idiotic..."
I don't follow that at all. And notice the fixation on me, rather
than jQuery. They'll never learn that way.
"Therefore, I'm sad to admit that, in this case, he almost has a
point. The use of attr('height') to mean not the height attribute in
the DOM but as an alias for height() smells wrong to me. However, it's
clear that he has absolutely no intention of becoming a productive
contributor to jQuery or helping in any way."
Of course not. It's not fixable. Ask Matt Kruse.
"By contrast, let's take a minute to appreciate this Matt Kruse
fellow. He has apparently strong objections to something in jQuery's
design and is taking it to John Resig."
....after I pointed it out to him.
"He seems ready to engage in a real dialogue. The end result? He
probably ends up a little happier and jQuery ends up a little better."
Nope. Didn't happen that way at all. Resig got really confused and
started bitching about "drama" in the mailing list. End result:
nothing changed.
"The real question is: how can we have more Matt Kruses and fewer
David Marks in the world? Do the David Marks of world drive off the
Matt Kruses? (I think they almost certainly do.) Why are there so many
sociopathic personalities in circles such as this, and how do we
mitigate the damage they cause?"
Oh brother. On the Internet, everyone's a psychiatrist. Can't seem
to follow basic cause and effect either.
"In my experience perhaps the only way of dealing with characters like
David Marks is by completely ignoring their contributions."
Like an ostrich does? If you can't see the bugs, they can't bite you?
"David Mark is an anti-jQuery crusader. He is known for speaking ill
of people who use the library as well as the developers (John Resig in
particular). He insists that jQuery is responsible for all of the
sites across the internet that have JavaScript errors."
All of them? That sounds like a gross misinterpretation.
"What I don't understand is why he doesn't work to help jQuery to be
better then and contribute a bit? If its causing errors and bugs then
certainly he could help some instead of complaining?
Resig +1 Mark -1"
These rubes have no idea where the better ideas in jQuery come from,
do they?
me after one post. They don't like to hear they are wrong about
anything as it could affect their popularity. Of course, the
dwindling posts to their mailing list suggest people are starting to
notice the results don't add up.
"He (David Mark) isn't going to get much support with his attitude."
Who's looking for support? I do enjoy publicity immensely though.
For every 1000 crackpots out there, there are a handful that actually
get the message.
(Speaking of My Library).
"It's not all that usable ITRW."
Had to look that one up. And, of course, it is In the Real World.
The phrase is so popular, they've coined a shorthand version. Use at
the risk of sounding like a drooling jackass. And is there really
some other world where jQuery's logic makes sense?
"I'd like to see him write cross browser key-event handling code
without doing UA sniffing. Honestly, I would like that. He committed
an attempt to a branch of Dojo but it's not in service and doesn't
actually work."
LOL. BTDT. There's a rendition in My Library, Too. And I didn't do
anything to Dojo's keyboard handling (except rip out the browser
sniffing). I've recommended the keyboard bits be re-designed and
replaced (likely with my rendition). But, of course, there's always
that backward compatibility specter.
"Or, to put it in more childish terms, "if you're so smart, let's see
you do it.""
Where's _your_ cool JS library? Then when they find out there is one,
it's "aw, UR just jealous of jQuery".
"His arguments are nonsensical. Are there bugs in jQuery? To be sure."
Why is it they always seek to defuse the situation by stipulating that
there are indeed bugs? Some bugs are mistakes, others indicate
incompetence on the part of the authors. You've got to be able to
tell the difference.
"But he has absolutely no clue what real developers are looking for in
a library."
I see. Real Developers that live in the Real World (and use jQuery).
"Many of the complaints in his critiques center around the fact that
jQuery does things which will break browsers like Netscape 4 and IE
5."
Not even close. That's the last thing I would worry about. You know
you are effective when people start making up lies to deflect
scrutiny.
"Not only does jQuery not claim to support those browsers,"
Regardless, who cares what they claim to "support". Are users with
older browsers supposed to be privy to that list? You can't degrade
browsers by press release.
"there are literally no web developers using jQuery who care about
support for those browsers."
So? It was their made-up point of contention.
And, of course, some other rube ran with it.
"Exactly. I would never pretend my code would run on anything less
than IE6 or any brand of ancient Netscape. I'd love to know which
browsers shipping today fail on:
window.blah === undefined
and require the more verbose equivalent I've seen pushed on c.l.j:
typeof window.blah === "undefined"
There's simply no market left for this sort of paleo-Javascript."
No idea what any of that means, except that this guy likes jQuery and
has conned others into thinking there is a market for _his_ services.
"I remember reading one of his rants from a while back, and it
actually caught me off guard. I know quite a bit about javascript, but
the way he was talking made me think I was perhaps missing the boat. I
looked into what he was saying, and some of it was sort of accurate,
but not really relevant.
I think he just has angry-hyperactively-perfectionist-armchair-
developer syndrome.
Case in point: where is his brilliant contribution to the JavaScript
ecosystem?"
Aw, where's my cool JS library?
"There are so many better outlets, anyone who's feeling trapped on
comp.lang.javascript should just go somewhere else.
I think it's a bold claim to say that David's understanding of the DOM
is "significantly deeper" than John's. Especially considering that the
DOM is not a particularly complex set of APIs."
Perhaps it is more complex than they think. Resig sure seems to be
lost.
"One of his quotes 'Every time a new browser version is released,
anything built on them has to be re-tested due to an inexplicable
reliance on the user agent string'.
Not really most libraries use feature testing, especially jQuery and
John advocates feature testing in quite a few of his writings."
Resig thinks he uses feature testing. What little bit there is to be
found in jQuery can be found (almost verbatim in most cases) in My
Library. He'd still be sniffing the UA string if I hadn't published
that.
"However, most JS coders are too busy using jQuery or Prototype or
something to Get Their Project Done and then move on to the next thing
to be bothered by this guy."
They like CAPS, don't they? This one is going into my brochure with
other bonehead remarks from disingenuous developers.
"It's hard to find much validity, especially when it starts to boil
down to comments like "As I recall, it seemed needlessly complex." He
long ago formed the opinion that all libraries were shit, and
apparently made that basis on how complex the code seemed and other
superficial reasons."
As I recall, I didn't say that. Hard to say without context.
"I actually had to go and google the person in question. After about
five or so newsgroup messages from him badmouthing other people I gave
up.
Still no idea who he is."
No? You sure won't catch me Googling this guy.
"There is always some guy, I've never heard of, being an asshole on
any given topic on the Internet."
Sometimes whole bands of them.