jQuery: The Write Less, Do More JavaScript Library

Blog » Why jQuery’s Philosophy is Better

Posted August 20th, 2006 by wycats

There have been a whole bunch of posts on this blog about the differences in code size between jQuery and Prototype. The basic premise of those posts (which I agree with) is that because of the way jQuery code is structured, all sorts of typical Javascript design patterns are rendered shorter and simpler in the framework when compared with Prototype.

For the longest time, I was a confessed Prototype junkie. I discovered the framework when I started doing Rails work, and for Rails developers, there is very little alternative. Prototype, in all its ugliness, is baked into Rails, and it’s very difficult to give up the productivity gains Rails provides by coding Javascript by hand. Going further on a tangent, that’s why I started working on jQuery on Rails, which aims to allow Rails developers to use jQuery as a drop-in replacement for Prototype.

But back to the purpose of this post, there’s something more fundamentally different about jQuery’s programming sense than just its code size. In fact, the difference in sensibilities is very similar to the difference in sensibilities between Java and Ruby, so it’s ironic that the Rails community has embraced Prototype so completely.

Let’s take a look at some code comparisons. First up, adding some arbitrary HTML after a particular node.

In Prototype:

new Insertion.After('myId', 'Arbitrary HTML');

In jQuery:

$('#myId').after('Arbitrary HTML');

Now, we haven’t done much by way of reducing code clutter (although jQuery’s is cleaner), but there is a fundamental difference in the way that Prototype and jQuery each approach the problem.

Prototype creates a series of monolithic classes that each encapsulate some functionality. Developers then pass in an id, and some other parameters, and the class does what it’s supposed to do. Very much like the Java way of encapsulating functionality (like the Math class, for instance). NOTE: That’s not to say that Java couldn’t do things this way.

jQuery approaches the problem in a fundamentally different way. It sees sets of HTML nodes as objects to pass messages to (more like the traditional Ruby way). So instead of having a separate class that adds text after an HTML node, jQuery glues the functionality onto the jQuery object, which is returned by the $ function. By contrast, Prototype’s $ function returns a vanilla DOM node.

Prototype attempted to achieve similar functionality with its $$ method added in the latest RC of the framework, but there’s a fundamental difference. While Prototype’s $$ returns an array of DOM Elements, jQuery’s $ is the fundamental underpinning of the entire framework. Virtually all jQuery functions bind to the jQuery object, which is returned by the $ method.
The benefits of the jQuery way are highly visible:

  • Chainability. Because jQuery objects have functionality glued onto them, they return other jQuery objects, which the developer can then pass additional messages to. The trivial example on the jQuery website is $(”p.surprise”).addClass(”ohmy”).show(”slow”);
  • Use of CSS selectors and XPath operators. Because jQuery passes messages to objects, it can (and has) implement additional selector functionality into the $ method. The methods that are glued onto jQuery objects just see an array-like object that holds a series of DOM elements. It doesn’t care how we got them. So plugin developers can add additional parsers into the $ method, or glue additional functions onto the jQuery object rather easily.
  • Which brings us to plugin development. The jQuery way is very conducive to plugin development. It’s quite easy to add functionality that takes advantage of the jQuery object, and jQuery plugins are usually much shorter than their counterparts. jQuery Plugins
  • Automatic looping. jQuery methods are required to automatically loop through all DOM elements in the array, and apply the desired method. So $(expression).after(’some HTML’) transparently adds the HTML after every single element returned by the expression. $(’p').after(’some HTML’) will add ’some HTML’ after every <p> on the page, for instance. Personally, I find the elimination of iteration in my code (in most cases) to be one of the top practical, day-to-day benefits of using jQuery.
  • Builds on itself. As jQuery has matured, it’s become easier to build plugins on top of the existing architecture. Because all jQuery functions automatically loop, using existing jQuery functions means that annoying iteration is all but gone.

There’s more, but the thread that runs through all of the benefits comes out of the very meticulous way that John Resig has made the jQuery object/array accept passed messages, rather than build various monolithic functionality blocks, each of which must be built from scratch.

Some other examples:
AJAX Updater in Prototype:

new Ajax.Updater('placeholder', url, { method: 'get', parameters: par });

AJAX Updater In jQuery:

$('#placeholder').load(url + par);

Note: This example doesn’t deal with the obvious iteration benefits we get if we wanted to load the response into every <p> object, for instance.

Adding a class to an element in Prototype:

Element.addClassName('element', 'className');

Adding a class to an element in jQuery:

$('#element').addClass('className');

Adding a class to a group of elements in Prototype:

$$('.element').each(function(node) {
Element.addClassName(node, 'className');
}

Adding a class to a group of elements in jQuery:

$('.element').addClass('className');

That last one is the clearest example of the difference in methodology. Because jQuery is passing messages to jQuery objects, the code is barely changed. jQuery doesn’t care that we’re now adding a class to a group of objects instead of one object; the underlying code is the same (add the class to the set of elements in the object). Prototype, on the other hand, requires an iterator.

And as your code becomes more complex, jQuery’s scales easily, while nested loops become the norm in frameworks like Prototype.

[UPDATE] An astute reader (Mislav) pointed out that Prototype does indeed do just a bit of what jQuery does. Prototype seems to bind the Element class to DOM Elements, allowing things like $(’myElement’).hide(), and such. However, it only applies to the Element module, and seems to only work on single DOM elements. Binding the Elements module is cool, but it’s more an afterthought than the way jQuery makes it a fundamental design decision.


77 Responses to “Why jQuery’s Philosophy is Better”

  1. Mislav Says:

    One important correction: Prototype doesn’t for a long time now return just a “vanilla DOM node” from the $ function. It mixes in its Element extensions, which is similar to what jQuery does.

    Nevertheless, I look forward to jQuery on Rails. It has much potential

  2. jQuery: più lo uso e più mi piace   |   .:: Maurizio Pelizzone ::. Says:

    […] Il motivo per il quale la filosofia di jQuery è migliore lo potete leggere in un interessate post pubblicato sul blog ufficiale, dove vengono analizzati alcuni frammenti di codice e messi a confronto con prototype. […]

  3. Interaction Design Blog » Blog Archive » jquery vs prototype Says:

    […] Why jQuery’s Philosophy is Better Bookmark: digg - de.licio.us - ma.gnolia.com - technorati […]

  4. Igwe Says:

    Jquery is really excellent and I posted about the need for a jquery on rails project on railsforum.com but found out you were working on it.
    I’m really impressed. There is one bug I see in JQuery though.
    Lets assume I have an input field with an id of, I don’t know , yo.
    If I want to get the value, $(’#yo’).value doesn’t work. Only $(’#yo’).get(0).value works. For me this is odd since I thought that there can the id of elements in the DOM must always be unique so there should be no need for get(0). Anyway, besides that I really love JQuery. Keep up the good work.

  5. Igwe Says:

    Also we need better functions for working with forms. Prototype has Form.reset and Form.serialize which I find very useful.

  6. wycats Says:

    Igwe,

    Both of those problems have been resolved in jQuery 1.0

    $(expr).val() returns the value of the first element matching the expression. $(expr).serialize() serializes a form. Regarding reset, is there a reason the regular vanilla Javascript reset won’t work?

  7. Weblogger.ch » Blog Archive » Liens Says:

    […] jQuery: Why jQuery’s Philosophy is Better. En gros le billet montre les avantages utiliser jQuery par rapport d’autres framework. […]

  8. Ghor Says:

    Does script.acul.us , Dojo or others effects library works with JQuery ??! Xcuse for my poor english, I’m french ….

  9. Yehuda Katz Says:

    Ghor, jQuery has its own effect library, called Interface. Check it out at http://www.eyecon.ro/interface/. Just a word of warning though: while jQuery is transitioning to 1.0, there will likely be problems using Interface with the latest version of jQuery. That should be resolved soon.

  10. Jörn Says:

    There is a typo in the AJAX Updater In jQuery example, it should read:
    $(’#placeholder’).load(url, par);

  11. Yehuda Katz Says:

    Jörn,

    I was operating under the assumption that you’d want to do a GET Request, and that par was a query string that could be glued onto the end of the URL.

  12. András Bártházi Says:

    As I really like the philosophy behind JQuery, it is full with bugs. Firefox on Linux halted several times when I made a page with it (nothing special, some JQuery expression), it’s very slow and sometimes has problems with Explorer. It’s evolving too slow. So philosophy is nice, but I want to develop with it. :)

    Anyway, to be ontopic: I don’t think, that Prototype’s syntax is sooo bad, and that’s a more memory friendly solution than JQuery’s.

  13. Yehuda Katz Says:

    Andras,

    The key bug in jQuery at the moment is that there’s no error handling for bad expressions. You probably wrote a jQuery expression that didn’t parse correctly (probably a typo or just an incorrectly created epxression), and jQuery doesn’t have an exception handler, and it frequently fails.

    This is an extremely important shortcoming, and John has said that he plans to release a developer plugin that will add in the error handling (he has said that implementing it for production with be memory prohibitive).

    There are certainly a number of bugs that remain, but the jQuery team has been squashing bugs with haste (check out the jQuery Trac at http://proj.jquery.com/dev) and 1.0 should be a lot more stable.

    Also, it’s not that Prototype’s SYNTAX is bad, it’s that jQuery overall design philosophy beats it by a wide margin (which has a side-effect of producing cleaner, shorter code).

    I have been able to use jQuery on production, rock-solid web sites.

  14. Devlounge | Ajax on Rails - Prototype vs JQuery Says:

    […] Yehuda Katz - author of autoDB - the dynamic admin console for Rails apps - has his feet deep in jQuery land as well. He manages the Visual JQuery documentation, and recently wrote an article comparing the philosophies of Prototype and JQuery, to help people understand how they are different. […]

  15. Dr Nic on Ruby on Rails » Ajax on Rails - Prototype vs JQuery Says:

    […] Yehuda Katz - author of autoDB - the dynamic admin console for Rails apps - has his feet deep in jQuery land as well. He manages the Visual JQuery documentation, and recently wrote an article comparing the philosophies of Prototype and JQuery, to help people understand how they are different. […]

  16. Tobie Langel Says:

    Regarding Mislav’s comment and your update, I would like to add that Prototype provides a method for the Element class (called addMethods) which enables extending it to provide the kind of short-hand you are advocating.

    Check out my post (http://tobielangel.com/bytesandpieces/2006/08/16/extending-prototype-a-better-syntax-for-dom-insertion/) on the subject, and my small extension-pack to Prototype which enables cleaner JQuery-like syntax:

    $(’myUl’).insertionTop(’a new list item’)

    rather than:

    new Insertion.Top(…).

    It is true however that iteration can quickly become tedious with Prototype.

  17. András Bártházi Says:

    Yehuda: there is no problem with the expression, because it works well, when the browser doesn’t hang. The latest development version seems to work, and I hope it will.

    Cleaner design: I wrote a very-very nice, short expression to create a graphical menu, and it worked. I liked it. But it was sooo slow, that I had to rewrite it to optimize. Currently it’s fast, but nothing from jQuery’s philosophy.

    I really like it, I want to use it, but I cannot. I hope, that 1.0 will be faster and better.

  18. Yehuda Katz Says:

    Andras:

    Cool. From what I hear, jQuery 1.0 is faster, and I believe John has put some focus into speed optimizations. That said, there’s always going to be a certain speed tradeoff that you have to make for simplicity. Ideally, it’s not prohibitive, though.

  19. Ghor Says:

    Thank for the link ehuda Katz, and your answer, I understand now :D
    I Think I choose this library for my futures applications but I have to test this before …

  20. Yehuda Katz Says:

    Ghor,

    jQuery is a very forward-looking framework that you will definitely be able to use for future applications. It’s in a bit of a transitional stage at the moment, but that is rapidly coming to a close.

    One of the nice structural things about jQuery is that the developers strongly favor automated testing. In fact, the build scripts that build jQuery can also automatically build the test suite for jQuery.

    So you don’t have as much to worry about testing-wise as with some other frameworks (although scriptaculous does have a nice manual test suite).

    Keep an eye out!

  21. Tobie Langel Says:

    Thanks to your post, I dug into jQuery last night… and I was impressed!

    Here’s the product of my ramblings: http://tobielangel.com/bytesandpieces/2006/08/23/jquery-a-serious-prototype-contender/.

    Any comments welcomed.

    regards,

    Tobie

  22. Encytemedia Says:

    JQuery: (Mis)leading the Pac

    I always hate election season. Its not really the 3 billion signs you see staked at every corner, its the negative campaigning and slight twist of the truth by opposing candidates. Running these types of campaigns makes you look foolish, and in turn,…

  23. Krzysztof Says:

    Hi,
    Shouldn’t be your site (http://www.yehudakatz.com/) an example of ‘rock-solid web sites’ based on jQuery (instead on behaviour + prototype + effects) ?
    BTW, I’m not sure whether the site has intentionally lack of contents, or it is some another weird IE6.0 bug…

  24. Anselm Says:

    There is a difference between comparing two frameworks, and intentionaly denigrating one. It’s this type of attitude which I hate from the Rails comunity and makes me favor other frameworks. I really like jQuery - but if it’s comunity is going to go down that road, I’ll have to look for something else….

  25. wycats Says:

    Kyzysztof:

    Thanks for the comment. Like I said in the article, there’s a difficulty, currently, in using Rails with jQuery. My site, which is a Typo blog, uses Prototype because Rails uses Prototype. In fact, my professional Rails projects generally use Prototype too (and I love Rails’ RJS).

    I’ve used jQuery quite well in both Java projects and PHP projects. In particular, I redesigned an internal website that leveraged jQuery to do some pretty spectacular things (I was able to take an administrative panel that was previously on about 5-6 pages and move it into one, AJAXy page).

    Also, my site has no contents at the moment because I just put it up yesterday. It was previously a very bare site with some basic personal details.

    Anselm:

    I did not intend to bash Prototype. As this was on the jQuery blog, I obviously favored jQuery, but I did not intend to do so by denigrating Prototype. Like I said, I have used Prototype to good effect, and some of the techniques posted by Encytemedia are definitely useful and have given me a better appreciation of the framework (although I really wish that there was some better documentation out there about techniques like invoke that really should change the way a Prototype developer does coding).

    Again, I like Prototype. It’s a good language. I like jQuery better primarily because its general philosophy is a better fit for the way I think about coding Javascript.

  26. Ajaxian » Framework Disagreement: JQuery: (Mis)leading the Pack Says:

    […] Justin Palmer has taken issue to some of the statements made by jQuery and writes JQuery: (Mis)leading the Pack as a retort of sorts to “Why JQuery’s Philosophy is Better”. […]

  27. Joseph Annino Says:

    I’ve experimented with adding my own methods to prototype’s element class so that all dom nodes would inherit them automaticly, giving me basicly functionality similar to jquery. I found that the more methods I added, the slower the whole thing got, especially on IE. Its not a big deal if you need to just manipulate a few nodes on a page, but when you are manipulating dozens of nodes, and creating new ones, the speed hit is noticable. I like the jquery syntax better, but so long as IE is out there, I don’t think its a practical solution.

  28. Yehuda Katz Says:

    Joseph:

    Have you tried checking the speed of the actual jQuery? John has done some great things to improve the speed of the technique that makes jQuery work, and I haven’t encountered any major speed issues in IE, although it is marginally slower than Firefox.

  29. jQuery 1.0 en flamewar | Scriptorama Says:

    […] Enkele dagen voor de release van jQuery 1.0 kun je een blogpost vinden op de jQuery website dat enigsinds Prototype probeert af te kraken. In Why jQuery’s Philosophy is Better worden verschillen tussen jQuery en Prototype opgenoemd en waarom jQuery op meeste vlakken beter is dan Prototype. Ook is de auteur van mening dat de Rails community beter jQuery moet gebruiken omdat het meer past in de filosofie. Justin Palmer is het hier niet mee eens en argumenteert dat de blogpost van jQuery niet klopt. Zo zou jQuery helemaal niet in de Ruby filosofie passen. Just browsing through the JQuery plugin site, it seems all of the plugins use a functional approach. Despite the articles claims, this is as far from Ruby as you’ll get. […]

  30. jQuery 1.0 ha salido para mostrarnos la luz - aNieto2K Says:

    […] Acaban de sacar la versión 1.0 de esta fantástica librería y en el blog explican el por que filosofía de jQuery es mejor que la de Prototype. No conozco tan a fondo las dos librerías como para juzgarlas, pero la idea de poder usar XPath en las busquedas de elementos es realmente interesante, sin contar el tamaño de la misma (10kb!!). […]

  31. jurriaanpersyn.com » Blog Archive » BarCamp Brussels 2006 - 16PM - 17:30PM Says:

    […] Why jQuery’s Philosophy Is Better than Prototype’s Posted by oemebamo Filed in tech, work (tags: ajax barcamp barcampbrussels brussels extensions firefox javascript jquery json programming tech typO3 webdev work xml ) […]

  32. jQuery und Jamal - flying sparks Says:

    […] Why jQueries Philosophy Is Better — Ein Eintrag im Entwicklerblog das Protoype und jQuery vergleicht. […]

  33. Adam On Life » Blog Archive » Prototype vs JQuery? Says:

    […] I’ve always been a Prototype advocate. Not for any deep down reason for how it compares with jQuery though, mostly because I was interested in learning Ruby on Rails and it happend to be the library of choice. With version 1.0 of jQuery hitting the shelves over the weekend, it’s a good time to reevluate the reasoning behind this. Luckily there’s great posts out there advocating both for prototype and Why jQuery’s Philosophy is Better. Interesting food for thought. Look forward to reading over jQuery 1.0’s source. […]

  34. kchlog » Blog Archive » jQuery vs. Prototype: pointless Says:

    […] A while ago, there was a post on the jQuery blog on Why jQuery’s Philosophy is Better. I should point out that this post is somewhat misleading because John obviously didn’t keep up on what’s going on with the development of Prototype. […]

  35. Sohum’s Stuff — RSS Import » jQuery on Rails Says:

    […] So, I really like jQuery and it’s clever extensions of bad old javascript. So, obviously, I’ve been looking at ways to integrate it with Ruby on Rails.Now, me being a RoR newbie, I didn’t realize that it has it’s very own ajax-y extension to Javascript, namely, Prototype. And while I’m sure it’s very powerful and extensible and all that, my thoughts on it can be summed up in a quote from Yehuda Katz’s excellent blog post on this topic: In fact, the difference in sensibilities [between Prototype and jQuery] is very similar to the difference in sensibilities between Java and Ruby, so it’s ironic that the Rails community has embraced Prototype so completely. […]

  36. jQuery on Rails « Sohum’s Stuff Says:

    […] Posted in Uncategorized at 001300 (050) by Sohum So, I really like jQuery and it’s clever extensions of bad old javascript. So, obviously, I’ve been looking at ways to integrate it with Ruby on Rails. Now, me being a RoR newbie, I didn’t realize that it has it’s very own ajax-y extension to Javascript, namely, Prototype. And while I’m sure it’s very powerful and extensible and all that, my thoughts on it can be summed up in a quote from Yehuda Katz’s excellent blog post on this topic: In fact, the difference in sensibilities [between Prototype and jQuery] is very similar to the difference in sensibilities between Java and Ruby, so it’s ironic that the Rails community has embraced Prototype so completely. […]

  37. Sohum Says:

    Thanks, for your informative and excellent post. Just so you know, comment 35 ^^ is an intermediate comment from an intermediate blog as I just transferred from my blogger account. Feel free to delete it — I didn’t realize the pingbacks|trackbacks|whatever these are are called were on.

  38. geekgrl.net » jQuery vs Prototype - WordPress Gone Astray? Says:

    […] There are a variety of examples of how JQuery uses cleaner, more logical, shorter code on the JQuery blog itself. These are a little technical though, and I wanted to provide a quick glimpse that might be more relevant to Plugin Developers: […]

  39. Steve Ballmer Says:

    JQuery will never be officially “blessed” by the Rails team for obvious reasons (Prototype core is part of Rails :-) ). So stop wasting your breath.

  40. Yehuda Katz Says:

    I don’t particularly need jQuery to be blessed by the Rails team. I simply want those who prefer the jQuery way of operating to be able to use jQuery (a great library) in conjunction with Rails (a great framework).

    I’ve made some strides on this in the past few months, and hope to have an announcement soon.

  41. IAMWW | blog | links for 2007-02-02 Says:

    […] jQuery: » Why jQuery’s Philosophy is Better (tags: jquery javascript Prototype ajax rails philosophy library productivity programming reference webdesign web development design) […]

  42. links for 2007-02-02 - IAMWW Says:

    […] jQuery: » Why jQuery’s Philosophy is Better […]

  43. Rostislav Siryk Says:

    BTW, here’s the interesting benchmark with comparison of Prototype and jQuery performance:

    http://ajaxian.com/archives/benchmark-prototype-and-jquery

    What do you think guys about it?

    As far as I know, jQuery is embraced by many people due to its small size and cute behavior.

  44. prototype.js与jQuery两大阵营的唇枪舌剑 : To be a RIA expert Says:

    […] 在jQuery爱好者Wycats的一篇post中,由以下的例证开始了与prototype.js的这场宗教战争。 […]

  45. Buy Viagra online yzs Says:

    Look! Only now! Discounts!

  46. JASONT » Blog Archive » 與 Ajax 的交集… Says:

    […] jQuery vs Prototype - WordPress Gone Astray? Why jQuery’s Philosophy is Better Prototype and jQuery benchmarked Why jQuery is The Answer Zebra Table Showdown […]

  47. Andrew Says:

    This has been up for almost a year. And you still haven’t edited it to be less acerbic. Encytemedia says it all.

    Look up “Monolithic”. A 1500 line function is monolithic. Classes are made to “encapsulate … functionality”, and that would be the Ruby way.

  48. anty Says:

    Very nice post. I really dislike the size of Prototype and was searching for an alternative. I often saw some jQuery code but never thought why jQuery should be better just because you can chain methods together.

    Thanks to this post I know that the philosophy behind jQuery is a very good one and the speed-tests I saw before I got to this site showed me that prototype and jQuery are comparable.
    I will try jQuery for some future projects, to test it. By the time this article was written jQuery was obviously not past the 1.0 version number.
    The speed tests I refer to are for 1.1.2dev and are very promising.

    Hopefully my development will go on without discovering a jQuery bug.

    Thanks for this post, it really opened my eyes!

  49. anty Says:

    Damn, I have to correct my comment above: The speed tests I was referring to showed clearly, that prototype is 26 times faster than jQuery.
    I didn’t read the value in the correct column. The only framework that is only slightly slower than prototype is MooTools 1.2dev.
    Nonetheless I will try jQuery because I like the philosophy behind it ;)

  50. TweeZz Says:

    http://encytemedia.com/blog/articles/2006/08/23/jquery-mis-leading-the-pack

  51. Johnson Says:

    Nice blog you have!

  52. Marc Says:

    Thanks for the helpful post, perhaps you can visit my site sometime.

  53. Какой JS-фреймворк выбрать? » Wake Up! Says:

    […] а также сравнения двух JS фреймворков: Prototype и jQuery […]

  54. Jquery vs Prototype na prática at Webpoint - Weblosofia com CSS, Jquery, Javascript, Ajax, PHP etc. Says:

    […] Como está descrito no Blog do Jquery , o último é código é um exemplo claro da diferença de metodologias. Pelo fato do Jquery está passando mensagens para objetos Jquery, o código possui uma sutil mudança. O Jquery não importa se você está adicionando uma classe em um grupo de objetos ao invés de um objeto. O código para ambas as situações é o mesmo. Prototype, por outro lado, requer um iterador(No caso o each que percorre todos os objetos selecionados). […]

  55. Design By Tim » Blog Archive » jQuery for the non-visually impared Says:

    […] I have no qualms of throwing a debate together about jQuery against Prototype. However Why jQuery’s Philosophy is Better does such a better job than I could. Not to leave out the rebuttal this is a well thought out approach to why JQuery: (Mis)leading the Pack. […]

  56. TaiviabnaxTab Says:

    61ovipnavigator dog
    d2ovipnavigator cat
    fbovipnavigator pig
    gkovipnavigato home
    rtovipnavigator/ klava
    g1odidjvs givsan
    g2odidjvs draft

  57. Derek Says:

    This post convinced me to convert my site, and I’m loving the decision so far! jQuery is awesome.

  58. The Five JavaScript Libraries - Scatterism Says:

    […] jQuery: This is the gem I was sold on. jQuery’s philosophy is pragmatic, and its strict about its download size. The minified and gzip’ed version is about 14kb, that’s smaller than you average PNG image. To be honest, I was sold after reading a comparison with Prototype. But then I found out that Prototype isn’t so bad either, it just feels a bit more formal. […]

  59. My Cup of Java - Today’s Top Blog Posts on Java - Powered by SocialRank Says:

    […] jQuery: » Why jQuery’s Philosophy is Better […]

  60. at buy soma Says:

    income soma buy buy watson soma

  61. Phil Rathe.com » jQuery + Rails ( Part 1 ) Says:

    […] […]

  62. Phil Rathe.com » jQuery + Rails ( Part 1 ) Says:

    […] In fact, the difference in sensibilities [between Prototype and jQuery] is very similar to the difference in sensibilities between Java and Ruby, so it’s ironic that the Rails community has embraced Prototype so completely […]

  63. aknet Says:

    Hi, I´m new to this stuff but I guess it´s not only prototype that makes it interesting for ruby but also scriptaculous which needs prototype and I heard, prototype enlarges the capabilities of javascript, does jquery provide this additional funct. too?

  64. Prototype en JQuery, ‘t vervolg « CoochieHoochieMan Says:

    […] 5 januari 2008 Blijkbaar doen JQuery en Prototype juist hetzelfde, namelijk  Javascript samenvatten, en zitten de verschillen in de syntax (hoewel relatief) en vooral in de achterliggende ontwerpgedachte (JQuery: slechts 1 object, het JQuery-object; Prototype: aparte objecten per beoogd gedrag). Ik heb nog met geen van beide gewerkt (dus ik hoef geen argumenten te zoeken in de zin van “waarom overschakelen?”), maar op het eerste zicht lijkt JQuery heel aantrekkelijk qua opvatting en ziet het er eenvoudig te gebruiken uit (leesbare code, wellicht omdat het niet nodig is om expliciet te itereren over een resultatenset doordat dat al ingebouwd is in de functies). […]

  65. Mani Says:

    jQuery is awesome for most of my projects. There are others where I use prototype but its all about using the best tool for what needs to be done.

    To those who are complaining, you can *use whatever you want*. If you cant then learn how to deal with more than one framework and improve your coding skills, thats your problem. Also, like some people have posted… not using a framework because you disagree with the community behind it? Really? I bet that goes over real well when it comes to actually doing work, choosing something for a job not because its right but because its “community” is better.

    PS. I hate javascript. Freakin ajax hippies.

  66. Mark Pris Says:

    Hello, your website is very informative and useful,
    I would like to share with you links, send all the questions
    on my e-mail.

  67. Says:

    AAR Group: , , , 2008, , , , www.aargroup.ru

  68. CFO Says:

    CFO Russia - , - , , . www.cfo-russia.r

  69. Says:

    , , , www.effcom.ru.

  70. Femida Says:

    - : , due diligence, , , due diligence due diligence, , www.femida-audit.com

  71. Femida Says:

    - : , , , , www.femida-audit.com

  72. Says:

    AAR Group: , , , www.aargroup.ru

  73. SmMoscow Says:

    , , , , map Moscow breadth of Moscow, satellite card , , SmMoscow.Narod.Ru

  74. JQuery vs. Prototype | Phine Solutions Says:

    […] I found this article best explains the differences between JQuery and Prototype from the level of the framework itself. […]

  75. Says:

    , , , . , , , , .

  76. What Makes jQuery a Good Choice? Says:

    […] Here are some examples of the concise nature of jQuery, taken from the jQuery blog: […]

  77. CFO Says:

    CFO - , , , , . www.cfo-russia.r

Leave a Reply