Will Adobe ever implement decent Ajax UI tags?
Tags: Coldfusion
Ever since ColdFusion introduced these tags, one of the things that I considered a downside to them was their complete lack of basic functionality. Now 2 version of Coldfusion later and we are still asked to jump through hoops to do the most basic things with these tags.
So what is missing.
Well to be honest with you a hell of a lot.
Adobe keeps claiming that they are RAD and to some degree they are, but one has to ask why implement something that seems have finished.
Lets take the cfgrid for instance, there has been many applications I have written over the past that has required multiple selecting, sure you can switch it on with the use of some JavaScript. But why should it not be an option to the tag to begin with.
Another thing that is not supported across the Ajax UI tags is any form of support for Drag n Drop, I designed an Application for a customer a few years ago and would have loved to show case the Ajax UI tags. But quickly came undone and wasted a lot of development time because I couldn't find the ability to drag objects from one grid to another, Adobe have actually sat back and left the Ajax UI stuff alone and not really added much to the new ColdFusion 9 release when it comes to better support for Drag n Drop across there tags.
Since extJS 2.0 one has had the ability to create what is known as portlets, these coupled with Drag n Drop could allow a user to create a dashboard like page and allow the user to then order these around on the page to best suit them, Adobe again have not even contemplated adding this support in ColdFusion 9. What a big let down.
Even the Tree tag in ColdFusion has been neglected as well, neither does it have Drag n Drop support. But it too as gone and been customizable with the ability to have columns in the tree as well, and again Adobe have not added this feature to ColdFusion 9.
ExtJS has had the ability to have Quick Tips attached to components, and these would have been great to have a form of bind to go back to the server and get information on these objects or even provide a better interaction with the user to give more info to some of the pages we develop. Again another big let down.
It is not too late to generate support for these, ColdFusion is in beta still and with comments from Ben Forta and other project managers, have made the statement very clear we want to be RAD and we will give you a product that you ask for. So now is the time to generate support for these things. Lets get the word out there and get Adobe to begin getting these things into ColdFusion when they should have been looking at some of these in ColdFusion 8 and the beginning of the Development Life Cycle of CF9.
Show your support and raise them on the public bug database now.
-
I would much rather adobe spent more time developing features like ORM and left the UI stuff down to javascript libraries and flex. Adobe focuses on what the vast majority of developers are asking for, and with evryone blogging about jQuery and flex, I doubt there was many requests for UI upgrades. ColdFusion is backend anyway, i think the fact they brought these tags out in the first place was a mistake
# Posted By Will Wilson | 7/15/09 5:29 AM -
Hello Andrew,
Interesting post. For greater control of JS UI components, why not just go with EXT or jQuery. You mentioned how EXT 2 supported sometihng you wanted.. so why not just get EXT 2 and use that?
I don't really see it as Adobe's responsability to provide both the back end scriptng, and front end UI elements. I think it's handy and convinent that they do. Nice for the quick use, but anything extensive, like how to hande drag and drop, and any rues that might apply, is in my opinion, out of te scope of the language.
Sorry if I sound like a ranting downer. Maybe I'm just jaded from the days when CFform embeded a java object on the page. (And am now a bit of a purist when it comes to this, and I like to write my own javascript anyway.)
Thanks,
Tim# Posted By Tm Leach | 7/15/09 5:30 AM -
This is something we bitch about a lot at work, and we end up using jquery for most stuff. Just thinking out loud, but the UI tags represent to me a kind of different class of the cfml language because even in advance you know its underlying functionality is going to need to evolve and be updated more frequently than the rest of the language. Seems like there ought to be a way, perhaps through the administrator, to plug in and update different libraries that drive these tags. Documentation and support would get hairy, but I don't see any other way to keep them relevant.
-
@Will - First Adobe sat back and asked what we would like instead of being proactive about it, they knew these things would be a requirement and for many years have done nothing to add them. It is this kind of thinking that makes people not want to use the feature, so they may as well jsut drop it all together.
# Posted By Andrew Scott | 7/15/09 5:37 AM -
@Tim - I am a very seasoned extJS user and developer, however you have to realise that it can't be used in all situations. Thanks to the license of that. Adobe have included extJS under the hood and have even made it hard to use that with great ease, making the location of the files different tow where you would normall expect them.
Drag n Drop between grids is a very handy feature, or even to drag from a tree to a grid can be a godsend. If you know how extJS works it works on something called a datastore, its not like it is rocket science to write. But why not give us that flexability to create wonderess things?
I have never liked the Ajax UI tags, and have always opted for extJS where possible, but not all projects I have worked on could afford the license cost to use. So we are then forced to write far more code to get it to work work with Adobes implementation or look at other frameworks and write even more code to do what extJS has as a give me.# Posted By Andrew Scott | 7/15/09 5:42 AM -
@Jason - Agreed, extJS is very powerful and they allow you to nest objects to reate widgets. This is not achievable with CF at all, and I can live with that. But to half implement something makes the job harder for us Developers.
Adobe claim ColdFusion is RAD, and I keep seeing areas that is no where near RAD it is not funny. If you see some of the things that people have written with extJS, one can only dream when trying to get ColdFusion to even come close to it. And that is what Adobe can't or won't allow us to do.# Posted By Andrew Scott | 7/15/09 5:45 AM -
I've never heard anyone before say the CF UI tags should never have been released in the first place, but that is absolutely right.
What business do UI features have with a back-end server side programming language?
One cool thing about jQuery is that new plugins are coming out all the time and most UI features can be coded very quickly. CF UI tags bind you in to something that won't be updated for 2 years.
If someone wrote a Top 10 Most Pointless Tags list I reckon all of the CF UI tags would fill it.
jQuery is just too powerful for UI developers to ignore. WTF are backend developers doing using CF UI functionality anyway? Unless they're a 1 man team or have been working under a duvet for the last 3 years.
# Posted By Gary Fenton | 7/15/09 7:33 AM -
@Gary - jQuery is gaining ground, but I have to say next to extJS it is about 10 years behind it.Well maybe not that many, but it has a long way to go before I call it powerful, it wasn't that long ago I looked at it and I have to say it needs some optimisation when it comes to the widgets.
As much as there is a lot of support for jQuery in the ColdFusion community, I have to say there are things I can do in extJS that I can't do with jQuery. In time maybe, but not right now.# Posted By Andrew Scott | 7/15/09 7:50 AM -
#Kumar - And it only takes one customer or client of ours to come along and see that you can do more, and then they begin requesting things that ColdFusion can't do.
What do you do?
You rip out all the work you have done, to then go and rework the Application and you would have wasted all that time implementing something to begin with.
ColdFusion is heralded as RAD, right upto Enterpirse solutions. You will never convince me otherwise with the AJax UI tags giving us anything RAD with the current implementation, the point I tried to make is that if we are forced to to remove it to look a a better solution why is it there in the first place?
RAD does not equal putting something in, trying to get it to work to do something and spending hours on end coming to the conclusion its to hard when it could have been setup and done with ease if Adobe gave us the ability in the first place.# Posted By Andrew Scott | 7/15/09 2:39 PM -
I agree Andrew,
The UI Ext stuff in CF8 is really nice, and with a small amount of effort could be great, why do 90% of the work and not finish it off. Things like no grid multi select and column alignment make no sense.
As for never including the, thats rubbish, CF makes developing web applications easy, it should include as many front and back end features as possible.# Posted By Dale Fraser | 7/15/09 4:36 PM



TweetBacks