Although, $chk should really have been return obj != null; But it is
not needed in mootools 2.0 anyway :)

On Sep 4, 12:59 am, Stewart Mckinney <[email protected]> wrote:
> Good point.
>
> On Thu, Sep 3, 2009 at 5:48 PM, Aaron Newton <[email protected]> wrote:
> > Stewart, while your defense of MooTools is heartfelt and appreciated, this
> > is precisely the reaction that someone like Marsh is after. Actually
> > debating his comments line by line just wastes your time. I don't think any
> > of his criticisms really merit comment. Just saying that he's not worth the
> > time is all we need here and then we move on. I'd hate to see this thread
> > turn into a long ranging debate on the value of his rant.
>
> > On Thu, Sep 3, 2009 at 1:54 PM, Stewart Mckinney <[email protected]>wrote:
>
> >> I'm going to chime in because I agree with Aaron. Thanks Aaron. You are
> >> pretty awesome, and the mooTools community deserves a lot more respect than
> >> this.
>
> >> This article don't even seem to understand the source code. This critique
> >> is ... not even a critique. To be honest, it's a little insulting if you 
> >> are
> >> a mooTools developer and have been working with it for quite some time (2
> >> years here). I wouldn't even give this guy two legs to stand on. This is
> >> total flame bait. This guy is angry and has too much time on his hands. 
> >> Good
> >> thing I've got a little of my own (woo creative blocks!).
>
> >> Listen to this part.
> >> *
> >> *
> >> *function $chk(obj){
> >>     return !!(obj || obj === 0);
> >> };
>
> >> Try to guess what that's for. Then wonder how it came to be called
> >> "$chk".*
>
> >> I don't mean to be a know-it-all but that's in the first line of the
> >> documentation. If you click "Docs", the definition for $chk is the first
> >> that comes up. You can not miss it. This guy literally just looked at the
> >> source code without looking at the design specifications. That is not the
> >> appropriate way to judge or criticize a framework, and I see it happen all
> >> of the time. Unfortunately I don't understand why one who loves to post
> >> rambling invectives on a forum would also have an aversion to the English
> >> language, but hey, I've seen stranger things in my life.
>
> >> It isn't taking into account the full architecture of the source code, so
> >> it doesn't and analyze the higher-level design decisions - which would be 
> >> an
> >> intelligent discussion that I might be interested in. All this article does
> >> is analyze each function bit by bit, in a piecemeal fashion, and then
> >> criticizes syntax decisions such as using "chk" over "check" and overuse of
> >> the "$" method(? he calls it a method?!?!). It's used stylistically as a
> >> marker for certain functions which can be called in the global scope...for
> >> the love of all that is sacred...and he beats that drum over and over as if
> >> it were some great sin. Listen to this fresh hell:
>
> >> *They are aping the initial effort of a 
> >> **Javascript*<http://www.developersdex.com/asp/message.asp?p=2978&r=6521331#>
> >> * programmer who
> >> obviously hadn't yet learned Javascript. Note the incessant use of
> >> "$" as well as the "initialize" method.*
>
> >> What the !...@#!@#...@# is that? I love initialize! Honestly, what is with 
> >> that
> >> unwarranted smug tone? And we have here the very height of ignorance in his
> >> commentary:
> >> *
> >> *
> >> *function $type(obj){
> >>     if (obj == undefined) return false;
> >>     if (obj.$family) return (obj.$family.name == 'number' && !isFinite
> >> (obj)) ? false : obj.$family.name;
> >>     if (obj.nodeName){
> >>         switch (obj.nodeType){
> >>             case 1: return 'element';
> >>             case 3: return (/\S/).test(obj.nodeValue) ? 'textnode' :
> >> 'whitespace';
> >>         }
> >>     } else if (typeof obj.length == 'number'){
> >>         if (obj.callee) return 'arguments';
> >>         else if (obj.item) return 'collection';
> >>     }
> >>     return typeof obj;
> >> };
>
> >> I don't know what this is supposed to be, but I don't like it. And
> >> something tells me the whole script hinges on it.*
> >> *
> >> *
> >> Please. "I don't know what this is supposed to be, but I don't like it." I
> >> need to go get my crosses and garlic, because apparently I've been using a
> >> framework that has MONSTERS hidden in it. Whoa.
>
> >> He mentions mooTools breaking with "older agents"? Please. I've never seen
> >> it happen for any browser mooTools claims to support.
>
> >> This guy doesn't even't even talk about (because they are awesome and he
> >> is a hater):
>
> >> 1) Classes ( Which is what MooTools does very nicely. Make lots of
> >> Classes. You will never ever look back. )
> >> 2) Method Chaining ( I love this too. It's like harmony has returned to my
> >> thinking. )
> >> 3) An (almost) completely encapsulated namespace. Projects RARELY collide.
> >> That is a huge boon
> >> 4) Extending classes is easy, and Implementing is great too, and it all
> >> works pretty well with Options and Events and having all of that integrated
> >> is very very nice indeed.
> >> 5) The performance benefits you get out of extending classes in the
> >> fashion that mooTools prompts because of the way Javascript is structured 
> >> as
> >> a language. This guy doesn't even seem to understand the structure of a
> >> prototypical inheritance language, for being an expert on the subject.
>
> >> Sorry if I kick start any flame war here everybody, but this guy is
> >> completely rambling (I'm sure you noticed), and I read his post and I got
> >> angry because people who have no respect for the (freeeeeeely given) 
> >> efforts
> >> of others just happen to get underneath my skin. Honestly without open
> >> source and communities like mooTools I would not be able to do what I do
> >> today. I'm not going to engage him directly on any level because frankly I
> >> feel he would probably not hear it, and I will absolutely end up with a
> >> headache and the need to go for a jog. However, I would like to inform the
> >> mooTools community that in my opinion, this post and the discussion that
> >> follows are both garbage.
>
> >> mooTools rocks. I would dare say my enjoyment of it goes beyond just a
> >> professional level - its actually fun to use. It's nice having tools that
> >> are fun to use, tyvm.
>
> >> ( nothing personal, Xandros ;) )
>
> >> -end
>
> >> I don't think you could change the mind of that guy,
> >>> personaly I won't waste my time trying to convince him.
>
> >>> [?]
>
> >>> On Thu, Sep 3, 2009 at 12:32 PM, Xandros <[email protected]> wrote:
>
> >>>> Hello
>
> >>>> Not wanting to start a flame war, and using myself mootools for a
> >>>> while, I stumbled on that thread on a developer forum.
> >>>> A quite harsh critique of Mootools, but the general idea is true,
> >>>> since the 0.7 versions or so, the low level classes and functions of
> >>>> Mootools are getting bigger and more and more complicated with lots of
> >>>> strange code that is dependant on a lot of other strange code, and in
> >>>> the end we just get the same behaviour as before, enhanced a bit of
> >>>> course.
>
> >>>> I would really love some Mootools developers to answer here what they
> >>>> think about this analysis of the code and why ... everybody has got
> >>>> something to learn from constructive discussion I think ...
>
> >>>>http://www.developersdex.com/asp/message.asp?p=2978&r=6521331
>
> >>> --
> >>>http://tbela99.blogspot.com/
>
> >>> fax : (+33) 08 26 51 94 51
>
>
>
>  35F.gif
> < 1KViewDownload

Reply via email to