Utan, I value your passion and I don't want to discourage you. Mootools code is great, I absolutely love it. I truly believe that hanging out on this list and reading the code made me a better developer.
It's important to remember the context of when Mootools was created and the problems it was solving. JavaScript at that time was a chaotic mess. I do believe Mootools solved the problems well. It was innovative with ideas of packaging code and documentation. Not to mention pushing the boundaries of expression with js. But Mootools was designed in an era when we weren't really thinking of mobile apps or thick clients. It doesn't have the tools to deal with these problems effectively. Even the core animation (what started it all) has been surpassed by other technologies. For anything complex I find myself relying on d3 (talk about a rich & beautiful api), yes its designed for svg but it works with anything DOM. The class system in Mootools is one of the best in JavaScript. One could argue that all the harmony (ES6) stuff was inspired by projects like mootools. However, the class system in mootools is dated. If you profile the code its slow compared to other solutions. Also many in the js community have adopted a much more functional paradigm that makes code way more reusable/composable. Not everything requires a hammer ;-) FWIW, I think jquery is a dieing breed too. Sure it may take many years to die but its value has long been past. For larger projects the burden of jquery is becoming a bigger and bigger risk. The problems these frameworks set out to solve in the beginning are simply gone or rapidly disappearing. Look at IE, we have far fewer hacks to make it work these days. Javascript as a language is evolving so fast that many of the problems we face are going to dissolve. Exciting times. For me the biggest win I have gotten from mootools is elegance in apis and naming conventions. I still go crazy when I see jquery's extend... This is merge not extend people! Mootools got a lot of this shit right. @Johnny I've migrated a lot of code. Its not all that hard. Its just a tedious process. Abstractions go really far to help with this. Mootools has provided a nice layer of separation. The stickiest area lingers around the DOM api. Writing a layer that mimics what you utilize in mootools is the first step. Refactoring existing code to use as little of the api surface as possible. The class system with (new keyword) makes it easy to keep code contained and isolated. The tricker bits come down to how you deal with the custom stuff that mootools provided like extend and implement. However vanilla js doesn't makes this too difficult. I loved extending my classes with Event. This was easily solved with using one of the thin event classes that already exist. function MyClass = function(options){ this.options = merge(defaults, options); } MyClass.prototype = { __proto__: EventEmitter.prototype, other: function(){}, methods: function(){}, here: function(){} } PS. Oscar your the man. On Aug 11, 2013, at 2:46 AM, Sanford Whiteman <sa...@figureone.com> wrote: > You may not even realize it, but you had to become a better raw JS > developer to get MooTools, and it's to your credit that you didn't > flinch. > > I didn't mean to imply that only experienced devs could learn > MooTools, but rather that that was the group most vital for publicity > because they would be likely to go, "Hey, this is like my other OO > environments," shout it out, and be taken most seriously. If you love > Moo, it's probably because you're a natural developer despite starting > "late" (I was a systems guy for a long time myself). But the truth is > you aren't the best endorsements -- what Moo needs is the senior Java, > .NET, Ruby, or PHP (OO only) guy. Too bad my senior-level friends sold > out to the jQ man because it's all over MSDN... and they don't respect > JS enough to care (this is another core problem). > > I return for the nth tme to people that list "intermediate jQ > developer" on their resumes and don't even know what the DOM is. I > don't think you could be that stupid and be able to use Moo. Of > course, those people aren't actually that good at jQ, either. It just > breeds people who don't know the diff between proficiency and use -- > people who don't doubt themselses. The best developers never think > they're on top. > > -- S. > > -- > > --- > You received this message because you are subscribed to the Google Groups > "MooTools Users" group. > To unsubscribe from this group and stop receiving emails from it, send an > email to mootools-users+unsubscr...@googlegroups.com. > For more options, visit https://groups.google.com/groups/opt_out. -- --- You received this message because you are subscribed to the Google Groups "MooTools Users" group. To unsubscribe from this group and stop receiving emails from it, send an email to mootools-users+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/groups/opt_out.