On 11/29/06, Peter Michaux <[EMAIL PROTECTED]> wrote: > * an aspiration for the highest quality code > * author documentation > * in-browser unit/integration tests > * namespaced code > * does not augment JavaScript built-in prototypes > * does not add a layer of sugar on top of JavaScript to make > writing JavaScript like writing in another language > * Is minimizable with jsmin > * MIT License > > There are many JavaScript libraries out there. Why add another one to > the list? To create a quality library with a liberal license.
I agree with you on many points: * YUI made the best design decisions in their widgets * YUI's non-widget code has some strangeness * prototype's modifications to built in objects is unacceptable (only because of design flaws in JS) * dojo's quality varies (it's not bad, it varies) * I care very much about high quality code, api, and architecture but I disagree that the result is a new library. I'll toss in MochiKit as the library you should have used/modified instead of rolling your own. I suppose that the 'sugar' comment is the reason for rejecting MochiKit, but iterators are a part of JS (as of 1.7) and aren't required, comparison has to be solved somehow, I can't imagine someone preferring the normal DOM over MochiKit.DOM, MochiKit.Signal has an api that's fairly close to yours except it normalizes the event rather than providing access functions, and MochiKit.Visual is a port of Scriptaculous, which you've mentioned you like. That leaves MochiKit.Async. I'll admit that deferreds are weird, but weird enough to write a new library? Eh. As to writing new stuff, I dislike scriptaculous' effects architecture and wrote my own. I'm also slowly porting the YUI widgets that I like over to MochiKit. I'm working against the MochiKit.Visual code and scriptaculous stuff, but that's a much smaller task than re-learning all the weird browser issues and writing a completely new framework without a clear goal other than being better than everybody else. I was at a talk with Paul Graham and he mentioned that "doing X but better" wasn't a great way to pitch a startup. Sure, you might actually be better, but how are we supposed to know that you're actually better until you prove it? The other libraries have a vision: * prototype - We love prototype hacking and come with rails (was a first mover) * MochiKit - We make javascript suck less (we love syntax sugar) (first mover) * TIBCO - We provides bazillions of components but you need(ed) to pay us money (first mover, recently open sourced) * Dojo - We are the omnibus of frameworks, we do it all, anywhere, for as many people as possible (early) * YUI - We think the web needs design patterns (and we have Doug Crockford) * GWT - We're Google. We do Javascript in Java. * Mootools - Size matters. We do it smaller. All these projects have mindshare and userbases. The first movers have been around for a year and a half, the remainder for at least a couple months. All but maybe Moo and prototype (which I'm not sure about) have multiple developers backing the project and enough momentum that they're not going to die anytime soon. Most are MIT or BSD licensed. I'm not saying that you can't carve a niche, but you're entering a fairly crowded space with a new and unproven project. Good luck. --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "Ruby on Rails: Spinoffs" group. To post to this group, send email to [email protected] To unsubscribe from this group, send email to [EMAIL PROTECTED] For more options, visit this group at http://groups.google.com/group/rubyonrails-spinoffs?hl=en -~----------~----~----~----~------~----~------~--~---
