How MooTools was built
betweenthewires.org
betweenthewires.org
Back when I was learning javascript (2006/2007) it seemed like Mootools was for people who had a good grasp on the language and wanted more from it. I appreciated this, and still think it's better at this than jquery.
I wish Moo had gotten more attention over the years. I get why jquery has done so well, but I don't like its methods.
jQuery won the war, in the end, because it catered to the 'get it up and running now' crowd over the 'do it right' crowd. It was always easier to understand off the bat, especially if you aren't a trained developer, while MooTools makes for a more long lasting, quality codebase.
But the sheer number of plugins that depended on jQuery made it's dominance inevitable. Thankfully we're now coming back out the other side.
I think you were 'wrong' in the sense that the most common use case then for jQuery or MooTools was better served by jQuery. As in, you were probably not the most common use case.
But I think you were right, especially considering the current reality, in feeling that MooTools made more sense. Because in 'current-day' web development you can't usually get past understanding the level 'below' jQuery and MooTools (plain javascript/DOM). For example, I've never met a React developer who couldn't use the regular DOM API through vanilla js.
Even if most frontend devs didn't use mootools, the way they code nowadays is very similar to what mootools was pushing for. This biggest difference I see being that we still don't have animations and requests as objects that can be reused (but css animations are probably more performant, and fetch + async/await is cooler).
We were so focused on the API design, rather than building
something that people could actually use and adopt.
It's good that they found more people who shared their ideals and a company willing to give them the time to implement them.Learning JavaScript while fiddling with it was really fun in 2009 when I was about to graduate from high school. Aaron Newton's jqueryvsmootools was an eye opener when I first read it and David Walsh's blog was really helpful in the early days.
I still like to follow some of its contributors (mainly Dimitar Christoff and Chris Pojer).
Around the time that MooTools appeared, Prototype and Dojo were the cutting-edge of DHTML, freshly made cool again by the term 'Ajax'. Prototype was very much a series of ugly hacks driven by the get-shit-done monkeypatching mentality of Rails, but it was fantastic. Meanwhile Dojo was fast-sprawling ecosystem of community and corportate contributions and plugins and whatnot, backed by a non-profit Foundation, and supported by major companies like IBM and Sun -- I can't firsthand speak to its quality (some have said it was quite good), but the contrast was night and day.
Script.aculo.us emerged built on top of Prototype to add tasteful interactivity (like DOM element dragging), and its branding targeted style-conscious developer-designers (the sort who'd read CSS Zen Garden but were tempted by JS). As the MooTools team noted, the weaknesses of Prototype started to show as its capabilities were pushed -- and it was getting kinda big. It was into this landscape that jQuery, Moo.fx, and MooTools arrived, and the rest is now ancient history.
There were many things that set jQuery and MooTools apart, but a notable one was their differring philosophies on extending native JS objects, or in contemporary parlance "extending the DOM". jQuery specifically didn't do this, while MooTools followed in the vein of Prototype and actually extended more builtins. Over time, this particular debate went from an implementation detail to a significant issue in the community -- a good example is this blog post from 2010, and its comment thread [1], to read both supporting and dissenting attitudes of the time.
I remember these early days of "mainstream Ajax" as being fairly annoying, but mostly because of browser vendors, and less so because of library authors. But today, that Ajax JS frameworks have been superseded by MV* JS frameworks, I actually find fewer substantive articles, blogs, and analyses that talk about the innards of frameworks and contrasting design decisions than I did back in those days.
Notwithstanding the issues about framework proliferation, most high-quality reviews, comparisons, and material is produced by first-parties (especially the authors of 'underdog' libraries), while very little is produced by the community. There was a LOT of cargo-culting back in 2007 too -- I know, I was one of those people -- but there's much more today. Whether this is because the most engaged people now tend to contribute to projects instead of blogging about them, or because interest in deeper analysis has declined, I'm not sure. I miss it sometimes.
[1] http://perfectionkills.com/whats-wrong-with-extending-the-do...
...right?
Huh?
Most C64 code was written in 6502 Assembly directly, some was written in Basic or Blitz basic.
Probably your dad was doing C on the Amiga. C on the C64 wasn't really a thing. Nor was C++ on the Amiga, really.