sans-serif   serif

«

Question: Why did you choose MooTools?

January 30, 2010

I’ll start: I was goofing around with prototype + scriptaculous, jquery, and mootools all at the same time. I was getting frustrated by all three since I was bouncing around between them. Finally, I had to make a decision about which framework I would settle into before learning the others. I actually deliberated over how I could make a good decision without really being comfortable or knowledgeable with any of them. Then an idea came to me: see who validates against the w3c markup validator. My theory was that people who cared to write clean html probably cared to write clean javascript.

Who won? MooTools with 0 errors. Scriptaculous had about a gazillion errors and jquery had more than it probably should have. So I chose mootools–and obviously am very happy I did.

Just for fun and I went and did the same thing today:

  • mootools.net: 6 errors, 6 Warnings
    • all 12 due to a single messy URL to bing (easily forgivable)
  • jquery.com: 3 Errors
    • No ‘type’ attribute on a script tag (because there are so many types?)
    • No ‘alt’ attribute on an image (meh)
    • ‘target’ not supported for anchor tags (stupidest w3 decision ever)
  • script.aculo.us: 60 Errors, 55 warnings
    • Hmm … yeah, still not going to touch your framework …
    • alright, alright, it’s all mostly due to messy urls as well

So why did you choose MooTools?

Please leave a comment about your decision, or … if you didn’t choose it, why not?

Related Posts:

  • No Related Posts

Comments

10 Responses to “Question: Why did you choose MooTools?”

  1. Dru says:

    I was originally using all 3 as well, albeit not at the same time :) My switch has pretty much been influenced by projects I’ve been working on. I write a lot of rails apps so I naturally started with prototype and after committing many sins with rjs mixing javascript into my html, I moved to jquery. And all was well in the world.

    But it was in a js heavy project I worked on a month ago that I dipped my toe into mootools. I was unhappy with my jQuery code. I was trying to re-factor much of the codebase into plugins to reduce some of the duplication but things felt messy. I googled around a lot for other peoples thoughts on organising jQuery code (turns out it’s a common problem). Based on a suggestion from some blog (I forget whose it was), I started writing some of the code in classes/objects and that improved things considerably.

    I was, however, struggling with the prototypal inheritance in javascript, I needed some sugar on top to make it familiar (so that I could deliver on time), so I looked at mootools. Needless to say I’m now a convert, mootools classes are immensely powerful whilst the syntax is clean and understandable. I also like how easy it is to extend natives, even if it is frowned upon by a lot of people.

    After all that, I’m now trying to spend some spare time writing “raw” javascript as I’ve come to the language in a bit of backwards fashion. I was using a library/framework before I understood the language and that has sheltered me somewhat from having to understand some of the nuances of javascript.

    Out of interest, before using prototype and all the other libraries, were you well versed with javascript as a language or did you find that you learnt things slightly backward as well?

  2. Barryvan says:

    I chose MooTools primarily because it provided the right level of flexibility and power. Frameworks such as YUI just try to do too much (at least for my needs) — if I need UI components, I prefer to write them myself. At the same time, some of the simpler frameworks don’t provide enough. I find that MooTools gives me just enough power to ensure that I can develop stuff quickly.

    My first ‘real’ JavaScript coding was in a “framework” that wasn’t: an in-house, cobbled-together system developed by a Java developer who a) didn’t understand JavaScript, and b) tended to overengineer solutions. When I was tasked with developing a new product, I looked around at the various frameworks, and was drawn to the simple elegance of MooTools. It also helped that, unlike some other frameworks (looking at you, Dojo), the examples actually worked, and the documentation was clean and well-organised.

  3. Luke says:

    MooTools was chosen for me as the framework we use at my work. I quickly fell in love with it and now use it everywhere for all my complex JavaScript applications.

  4. I chose MooTools because I began using Joomla which shipped with MooTools 1.11 (now ships with v1.12). I quickly realized that it was a very powerful framework that made sense to someone with knowledge of JavaScript.

    The thing I like the most about MooTools is that the syntax is concise but so abstract that you can’t tell what is going on.

  5. Ryan Florence says:

    @ Dru

    Out of interest, before using prototype and all the other libraries, were you well versed with javascript as a language or did you find that you learnt things slightly backward as well?

    Totally backwards. Another reason I’m glad I chose mootools is that it inadvertently taught me vanilla javascript–and well formed javascript. My vanilla javascript still looks quite similar to my mootools code. I create some classes with a handful of methods and then construct them on my page (though I usually use mootools even on small projects.)

    I think advanced javascript (prototypes, classes, etc.) is easier to figure out if you’ve already got mootools under your belt.

  6. Eneko Alonso says:

    To me it was easy. OOP is very easy with Mootools and their syntax is clear and clean.

  7. arc says:

    when i started js-development, i had to choose between scriptaculous and moo.fx/moo.ajax. since the latter just was much nicer and easier to get into, i used this, and then continued with mootools as it released. still very pleased with my choice. jquery was never an option. just dont like it.

  8. gonchuki says:

    I started back in the day when there was only Prototype and Moo.Fx was a 2.5kb library. Proto has been always kind of buggy and slow, so I jumped to full Mootools since SVN r83 (with which I coded a couple full sites, albeit the early development status of Mootools).

  9. virtualgadjo says:

    having, long ago, stopped writing any js (NS6 vs IE war had killed my js pleasure) and was only coding websites serverside. When, reluctantly, i had to put some js into a new website i went looking for something that would take care of browser compatibility for me. i first started with prototype/scriptaculous but was somehow frustrated by the enormous toolbox feeling… browsing the web i ran into mad4milk who drove me to Mootools website. I instantly loved the syntax, the class writing ability, the ‘inline javascript is evil’ catchphrase in the forums and so many other things it would be too long to tell. i knew i had found what i was looking for, never went back from that incredible library. Now, i write tons of unobstrusive js for tons of website, thanks to mooooo :) )

  10. deos says:

    until about a half year ago i didn’t use any js-framework at all. just coded everything in easy plan js (yeah, even with IE-support XD). even made every effect myself i wanted to have, just because it was fun. i always knew there are frameworks but i just didn’t want to use them XD then some day i found a great article about a comparison of the big frameworks (wouldn’t make much sense to link it, since its in German). it compared the features and showed examples. after reading it i just new it has to be MooTools, because MooTools actually extends js itself like it should be from the very beginning (like a correct addEvent for every browser). also the coding-style of MooTools is clear and makes sense (you know what a function/class is capable of by its name) and it doesn’t bring a thousand useless functions like most of the other frameworks do (i’m looking at you, jQuery). and of course, being able to create classes in js was the top of perfectness ^^ i tried it, i fell in love with it, and i’m of course sticking with it, using it everywhere i can and trying to get even more and more out of this fantastic framework ;)

    some while ago i took a jQuery-plugin (roundAbout) and made a MooTools port of it. guess what, it works even better then the original jQuery-version XD

Leave a Reply

 

Comments RSS