Coldfusion Framework Chart?

Where can we find one?

Over the last few weeks CFconversations has some very informative podcasts on frameworks. Personally I am not the biggest fan of frameworks, however I am forced to work with some of the more poplar ones. I can see where they come in to place and on projects involving teams they do have an advantage, but for me most of the time on small projects they are a hindrance and add an unnecessary complextiy to my life. I find that by following my own methodology I can get smaller projects done quickly without having to send the junior developers on a crash courses in using Fusebox or Model Glue. I am aware it would be harder for someone to just pick up my code, but am not in a situation where that happens much and I think most small developers like me are in the same boat (all in house)

However the podcast roundtables had me thinking more about all the CF frameworks and the ones I have not tried and some none intrusive frameworks I had never heard of such as onTap and SOS.

I wanted to compare all the different ColdFusion frameworks. Yes, I know this has been covered hundreds of times before but I simply could not find a simple chart or something similar that compared all the available ColdFusion frameworks, can anyone point me in the right direction?


Related Blog Entries

Comments
Raul Riera's Gravatar I would like to point out that Wheels DOES have

Caching
Friendly URLs
Plugin Architecture (in the latest build)
AJAX

I dont know where you are basing yourself that it doesnt, and you should use "Object Orientated" in quotes, since ColdFusion is not Object Orientated
# Posted By Raul Riera | 13/11/08 21:45
Matt Woodward's Gravatar Mach-II does have friendly/SES URLs. Depending on what you mean by "templating" Mach-II might have that as well, because you can create a single template and then stick different view stacks within that template.

Also, you might consider putting a "Dependency Injection" line in there because ColdSpring (with which Mach-II integrates very well) shouldn't really be in the ORM line.

Mach-II just added a substantial logging package but I'm not sure if that's a feature you want to list on a separate line or not.

Finally, Mach-II really shouldn't have Hibernate listed as an ORM because we do not provide integration with Hibernate.
# Posted By Matt Woodward | 13/11/08 21:56
phill.nacelli's Gravatar @Raul

How is ColdFusion not object oriented? In your opinion what constitutes an Object-Oriented Language?
If I can write an application using Object-Oriented principles in CFML doesn't that satisfy it also being Object-Oriented? Is there a series of criterias that a language must satisfy in order to be Object-Oriented?

Just curious
# Posted By phill.nacelli | 13/11/08 21:56
Jim Priest's Gravatar Something dynamic like the wiki matrix would be really cool where you could easily compare features between several frameworks.
# Posted By Jim Priest | 13/11/08 22:14
Glyn Jackson's Gravatar Raul: It depends how one defines OO, I agree many of the OO concepts in Java point me the say no CFML is not object oriented, but the ability to create components, extend components, threading etc lets me employ "OO-like" development methodologies and some of these frameworks force you to adopt these development methodologies. So yes if you write an application using Object-Oriented principles in CFML i think that does satisfy OO also. what I want to look at here is the frameworks that help you work more OO like and less procedural.

Riera: not syaing this is a guide, i want some input to correct it, having only really ever used Fusebox, Glue and Farcry Core i want to get a picture of the others before i spend time learning them. thanks for the input will now update the chart.

Mach-II: again i have never really used Mach-II and want to get an idea thanks for the input i will update the chart.

I am not the best to do this sort of chart as I only work in a few frameworks, however I am enjoying the exercise :)

Any corrections welcome as i want to get a good picture.
# Posted By Glyn Jackson | 13/11/08 22:18
Raul Riera's Gravatar Well it has some OO sutff in it, but I dont think it can be considered OO, even after Ben Fortar clearly said himself, "ColdFusion is not Object Orientated and it will never be"

"But first, a necessary qualification—CFML is not an object-oriented language, and CFCs don't provide all the features and functionality typically provided by OOP languages. This isn't a bad thing—actually"
http://www.adobe.com/devnet/coldfusion/articles/in...

dont get me wrong, COLDFUSION IS LOVE
# Posted By Raul Riera | 14/11/08 00:35
Raul Riera's Gravatar Oh and Wheels has ORM too :) it is "OO" as well, you should point out NO XML CONFIGURATION has a GOOD thing, its convention over configuration.. and templating? what is that?
# Posted By Raul Riera | 14/11/08 00:39
Tony Garcia's Gravatar @Raul
I know this horse is dead, but Ben Forta's comments notwithstanding, it all comes down on how you define "OO". Sean Corfield has said that CF is, in some ways, even MORE OO than Java. I suggest you check out these posts for arguments against yours (the Corfield comment is under the first one):
http://www.danvega.org/blog/index.cfm/2008/10/16/O...
http://ontap.riaforge.org/blog/index.cfm/2008/11/3...
# Posted By Tony Garcia | 14/11/08 03:23
Sean Corfield's Gravatar I think Ben's comment does a great disservice to ColdFusion and I've no idea what he's thinking on this issue! CFML is absolutely OO.

I hear this - "CF is not OO" - quite often but no one can ever provide any concrete evidence to back this up.

I'll also make the comment that this is one of the least informed framework comparisons I've ever read. The fact that it has to keep changing in response to user comments shows how uninformed it is. So, you don't like publicly documented standard frameworks? Well, boo hoo! Get over your bad self but don't try to post comparisons of things you don't understand...
# Posted By Sean Corfield | 14/11/08 07:57
Glyn's Gravatar Sean Corfield don’t be mean, a god to me, your blog has helped me out of many situations :(

it was my lack of understanding that has giving me a push to find out this sort of information. I am NOT giving ANYONE a comparison of frameworks, or am I qualified to! This exercise is for ME, and my understanding, if an expert like yourself or Raul gives me advice i will take it!

I do have a lot to give this community and my thirst for knowledge is all I seek, don’t get all elite on me thats what the Java community is for.

What i wanted from this post is for me to have a more informed idea of the different frameworks before I spend time and effort learning it.

as a new CF'er, if I never grasp the basic fundamentals or models these frameworks are based on, how will i improve?

i do understand OO concepts i have worked in Java before I first started in .NET and CF and if you read my post above i agree with you, Java has set OO precedence which everyone compares CF to, and thats not right.

Last, I will completely disagree with you saying "this is least informed framework comparisons" because just from the comments above i have already learned so much.
# Posted By Glyn | 14/11/08 11:13
John Farrar's Gravatar To be fair, knowing Sean he isn't meaning to be cruel here. His comments are purely factual perspective. I would not even join in as the creator of SOS and tell you where and what we fit into your chart. The chart misses the point IMO. And his boo hoo is his sense of humor... the Corfield way of making a point. He is just telling you the approach you are taking isn't informative. It's like comparing Apples, Oranges and Bananas by using the skin of the fruits. :) You aren't going to figure it out with the approach you are taking.
# Posted By John Farrar | 14/11/08 16:16
Glyn's Gravatar That’s a fair point, how would you recommend someone like me approach this.? I don’t want to mislead or make incorrect assumptions so I have taken the chart down, however I have enjoyed reading and hearing about the differences of the other frameworks so it was informative for me, at least!

My issue is that I understand the concepts and principles but lack experience in using CF frameworks and I think that’s the issue with a lot of developers I have worked with. Making an informed decision to which framework fits a project before investing time is all I was trying to conclude, and still want to! I have to manage a team and cannot make careless decisions.

I have a government project starting in a 3 months and would really like to use CF this time around to speed up development time, however it’s not a project I can use CF if I don’t have a standardized way of working. I needed to look at other frameworks other than Fusebox which I love to hate.

I still stand on my OO chart label. frameworks that allow or guided a user to take a OO stance forcing concepts like inheritance and reusability it what i was after.

PS. I know of people who have been on the end of Sean Corfield sense of humor but i do see his point.

end of my rant, I have John Farrar : Sean Corfield : now all i have to do is pee off Ben Forta and i have the full set :)
# Posted By Glyn | 14/11/08 17:49
John Farrar's Gravatar My take is your chart has truth... but let's look at it just a bit more pragmatic. Ruby on Rails doesn't do XML and if you listen to David that proves it is superior to ones that do. There are many variables that go into choosing a framework. On famous CFer said that you should not learn Model Glue and ColdSpring at the same time. Not saying I agree but he is a known users. ColdBox is super documented... so if documentation is what makes a framework superior than the issue is settled. LOL

At the end of the day different frameworks solve different challenges. Each of them have trade offs (good and bad). Understanding what framework you should use when you haven't learned to use several of them is like someone who is new to computers trying to choose what computers his company should buy. The point I would make is the goal is noble but the perspective takes time. Each of us over time will choose different perspectives based on our needs, experiences and personalities. So your chart is full of facts but facts are not organic enough to cover the subject. This subject would be hard to cover in a book... not to mention getting it done in a blog thread. Then again... some guru may do just that and shock us all.
# Posted By John Farrar | 14/11/08 18:29
Glyn Jackson's Gravatar I don't want to be someone who gets stuck into one framework just because it's one I have used before, and that's my situation now. I only knew I want to use CF for this next project because I have already done it in ASP and PHP and know the advantage of CF in terms of development time because i have been working in it for a few years now. So I see your point in regards to frameworks but at some stage I must have made a decision to first use CF which lead me to this conclusion, and the same applies to frameworks. I have to look at what there is and pick another to play with, I just wanted my decision to be a more informed one.

John Farra : I really hope someone does surprise us and do a article or something as its was what I was looking for in the first place. CF frameworks could be your next book, everyone knowns we need more!

Anyway, I have really appreciated your comments and everyone else who has posted here. its been a eye opener into the CF community which I so really want to be apart of....... and think given time will.
# Posted By Glyn Jackson | 14/11/08 19:36
Henry Ho's Gravatar Eh? where did the chart go? I saw a chart on Google Reader on this post...
# Posted By Henry Ho | 15/11/08 00:27
Sean Corfield's Gravatar Yeah, I wasn't really trying to be mean but when I saw your post I was like "Ooh, someone's taken the time to evaluate a bunch of frameworks and posted a comparison!" and when I got here I was... er... disappointed.

Isaac Dealey posted a fairly in-depth comparison of frameworks on his site (I don't have the link handy) but even his comparison was flawed in several ways. He took an application and built it with each framework and then wrote up his findings. Of course, as he worked his way through the frameworks, his approach to each framework was colored by his experience of earlier frameworks. Can't be helped - as you use more frameworks, your opinions of them tend to change.

Some years back I compared Fusebox and Mach-II, then added Model-Glue. That was back in the 4.x days for Fusebox and 1.0 for both Mach-II and Model-Glue. Things have moved on dramatically since then and I haven't had cause to go back and revisit such a comparison. Really you have to build some pretty big apps with each framework to get a feel for them - and you have to keep going back and forth between them so that you can take lessons you've learned using each framework and apply to them to other frameworks.

I've built systems with all three of those frameworks but tend to favor Model-Glue - although Mach-II has evolved in very impressive ways over the last year. I started with Fusebox (in PHP), switched to Mach-II (PHP) then Mach-II (ColdFusion), then back to Fusebox (ColdFusion), then Model-Glue and then added ColdSpring and then Reactor and then Transfer (instead of Reactor). My personal site and blog are still powered by Fusebox (the only Fusebox app I maintain these days).

I have not used ColdBox. Luis' documentation is amazing. A lot of people like it but I don't like the direct mapping from URL variables to CFC methods - even tho' I implemented it in Fusebox 5.5 to satisfy the community who didn't like XML. Having used Ruby on Rails a little as well as Grails - and Fusebox 5.5 - I can say that I don't really like convention-driven frameworks. Just my personal preference - but that's really what framework choice comes down to...

I have also not used onTap (but don't like the approach taken by Isaac - even tho' it will appeal to a lot of people). I haven't used SOS either (but what I've seen of COOP is pretty slick).
# Posted By Sean Corfield | 15/11/08 05:16
Glyn Jackson's Gravatar Henry Ho: too late, shows over lol. I wanted to find a chart, could not so started one but with many flaws, so as not to confuse anyone I have taken it down. Still wish someone would create a chart who has used all the frameworks. Isaac, hint, hint. (only joking i know your very busy)

Sean Corfield: I see what your frustration was now, I never wanted to compare frameworks, just to find a comparison for myself in chart form. Thanks for taking the time to write such a detailed response on your experience.

I think ColdBox appeals to me, I actually like the idea of direct mapping. I know Fusebox has a version without XML. I have only just started to used the 5.x, so will see how that goes.

Isaac's onTap is also something that I think would prove beneficial to some of my projects, but as you said until I have the experience using it I will not know. When I do you can be sure I will post about it.

thanks everyone for there time, this has been a very informative post for me :-)
on and upwards!
# Posted By Glyn Jackson | 15/11/08 10:12
 

About Me

Glyn Jackson, 26 years old, MD and youngest member of a web development firm based in Staffordshire called Newebia Ltd. Academic background in BSc Information System & Internet Commerce. Online marketing expert (EE Ranked) and .NET developer. Has been using ColdFusion for just 3 years but loves it. "I am not a veteran in ColdFusion but I do work on challenging projects which help me learn more about ColdFusion and if I can contribute to the community in anyway then, it's all good!"

Recommends

  • ColdFusion