Ajax: What's the CF Community Using?

I took a very informal poll on CF-Talk to see what Ajax frameworks were being used in the ColdFusion community. The results were interesting but not too surprising. Some were sticking to the CF-based frameworks such as AjaxCFC, CFAjax and the new MXAjax while others were really behind Spry. JQuery also received some kudos so its interesting to see how people are moving in different directions.

I'd certainly like to understand the rationale behind their choices as I'm sure would everyone else looking at Ajax frameworks. Essentally, why'd you go with AjaxCFC vs. JQuery vs. JSMX etc....

Here's the list of Ajax frameworks that came out of that thread:

I'm leaning towards Dojo or JQuery. Dojo is a monster though and JQuery has an easier learning curve plus a great plug-in feature.

Any thoughts?

Rey...

Comments (Comment Moderation is enabled. Your comment will not appear until approved.)
Raymond Camden's Gravatar I'm definitely very behind Spry. It is still being developed, but is well enough along to use on production sites. (BlogCFC uses it.)
# Posted By Raymond Camden | 8/31/06 10:08 AM
Rey Bango's Gravatar Hi Ray, I know you're a big advocate of Spry. I especially like the data binding functionality that Adobe threw in. Thats very cool. How far do you think they'll take it in terms of UI and components without it stepping on Flex2's toes?
# Posted By Rey Bango | 8/31/06 10:12 AM
Raymond Camden's Gravatar I'm not so sure it would - I mean - if I were building a full RIA, I'd want Flex. If I were doing something that needed to be placed within a normal HTML page, I'd probably use Spry instead. I see Flex2 more of a heavy duty GUI replacement and Spry as more of a 'helper' to make your web pages more dynamic.
# Posted By Raymond Camden | 8/31/06 10:20 AM
Michael Haynie's Gravatar I'm a big fan of prototype. It's fairly small in size, and no CF integration (which I like). There's a bit of a learning curve, but it's a great library and scriptaculous uses it as a base. Thus, if you want the neato effects stuff that scriptaculous gives you, prototype may be a good option.
# Posted By Michael Haynie | 8/31/06 10:49 AM
Rey Bango's Gravatar Yep, the Prototype/Scriptaculous combo is VERY popular. I've just been so concerned about the lack of updates for Prototype but I was reading last night the Sam Stephenson made a ton of updates to the library. Good news!
# Posted By Rey Bango | 8/31/06 11:06 AM
Michael Haynie's Gravatar One note on Dojo: It's a heavy beast. I actually started down the merry path with it on a sizeable application, ripped it out, and replaced it with prototype. Dojo has plenty of bugs and their versioning is a bit off. I've only used Spry briefly and had a few issues with it in conjunction with prototype, however you could argue that if using spry, you don't need prototype. I needed the effects of scriptaculous though, so that ties you to prototype. Another brief note, scriptaculous includes a newer version of prototype than you would get if you just downloaded it from Sam's site.
# Posted By Michael Haynie | 8/31/06 12:51 PM
Rey Bango's Gravatar Thanks Michael. Dojo is definitely a monster and has a big learning curve but it does seem to have a broader set of UI components than prototype/scriptaculous. One thing that I found lacking for example was an accordian control in scriptaculous. I just couldn't find it. I know OpenRico has it and so does moo.fx so I guess I could use those if needed. Did I miss it somewhere?
# Posted By Rey Bango | 8/31/06 1:01 PM
Michael Haynie's Gravatar Nope, you didn't miss it, however it would be fairly trivial to build one using the scriptaculous effects as all the accordion really is hiding/showing divs. Thus, you just have hidden divs under the header tabs, when you click another it closes the previous and opens the next using any effect you want. It takes a bit of monkeying around in javascript, but I bet the code for the function (including the effect) wouldn't be more than about 5-10 lines of javascript. So, it just comes down to your level of javascript knowledge, or the level of tinkering you want to do. I myself wanted more lightweight components since the complexity of what it was actually doing was small, thus I went with a more roll your own approach. Your mileage may vary!
# Posted By Michael Haynie | 8/31/06 5:15 PM
James Holmes's Gravatar For those using Scriptaculous and Prototype, note that MXAJAX bundles these with the Rico accordian via AjaxTags and JSON. It then gives you a CFC interface like AjaxCFC.

It's worth checking out.
# Posted By James Holmes | 8/31/06 9:40 PM
Peter Boughton's Gravatar I use JSMX because it's simple and it just works. And it doesn't do anything I don't need/want it to.
# Posted By Peter Boughton | 9/1/06 4:42 AM
Michael Haynie's Gravatar Rey,
I knew I had seen an accordion function in Prototype. Here's the link that this guy built a widget to do it.

http://www.gregphoto.net/index.php/2006/08/30/crea...
# Posted By Michael Haynie | 9/7/06 2:16 PM
Rey Bango's Gravatar Awesome catch Michael! I'll check it out.
# Posted By Rey Bango | 9/7/06 2:36 PM
Steve's Gravatar I'm backing Adobe's Spry with Ray Camden. I find it so easy, clean and logical to learn and implement. I'm currently using it for a content management system I'm building and it's coming along fine! It's not dependent on any specific Server-Side technology and I feel it will be constantly improving to meet it's growing (and already large) potential.
# Posted By Steve | 9/11/07 11:26 PM
Rey Bango's Gravatar @Steve: Holy cow! You found this post 1 year later!! LOL! Well, I respect your decision. Spry has a place but the fact that it doesn't support unobtrusive development is a big no-no for me. In addition, it hasn't been updated since May, 2007. Since that time, every major library, including jQuery, Ext, Prototype, YUI, Dojo and GWT has had a major version update. I personally don't feel that Spry is a long-term solution for Adobe but I may be wrong. I'm putting my money on Ext & jQuery.
# Posted By Rey Bango | 9/11/07 11:52 PM
michaelc's Gravatar just started working with spry and dojo, spry seems very simple, dojo does more but at a cost of gray matter. on the spry not supporting unobtrusive development, I don't think I would agree.
that's one factor I liked. it was very eazy to seperate the backend from the front, my backend server can be java,asp,php,cf or whatever just needed to create a json or xml document.

the javascript also is not all tied up in the html if you do it right, well with the exception of the spry tags, but that's a very small price.
# Posted By michaelc | 11/25/07 7:39 PM
Rey Bango's Gravatar @michaelc: Spry only recently started supporting unobtrusive techniques and was completely tied into your HTML prior to it's most recent release. So you can't dismiss my opinion, which was based on an older release. Either way though, I'm glad you're having a positive experience w/ Spry. I know that the Adobe team has put a lot of effort into it's most recent release.

I would urge you, though, to check out both jQuery and Ext as you may be surprised at the power included within both libraries.
# Posted By Rey Bango | 11/25/07 9:18 PM
BlogCFC was created by Raymond Camden. This blog is running version 5.8.001.