September 29, 2006
After Peter Bell
stirred the pot, Peter Farrel wrote a fairly
explosive post (repeating a lot of what he said on the cfweekly, episode ?) and it spurred Joe Rinehart to respond with an
impassioned blog post defending the design choices made in the development of Model-Glue: Unity.
As someone who has contributed extensively to Mach II, Model-Glue, Fusebox, ColdSpring and Reactor (phew!), I would like to step up and defend Joe's decisions - he's done a sterling job, sticking to his vision for the framework and has been very clear about what should be in the framework and what should not. As a framework developer myself, I can tell you it's a rocky road. The "community" deluge you with requests for all sorts of features and you have to stand firm and defend your vision. None of the popular frameworks are "kitchen sink" efforts - there are countless feature requests that have been denied by the framework authors.
I've requested enhancements to all these frameworks. Some of those requests have been implemented but most have been denied. Even as lead developer on one of the Mach II releases, some of my suggested enhancements were turned down (and some of the changed Peter implemented in Mach II were reverted as inappropriate for the framework).
When I built Fusebox 5, I was deliberately very conservative about what went into the framework and what didn't. I implemented a few things the community really wanted that I didn't think were great ideas but I also did not implement several things that I thought were great ideas that the community weren't very interested in.
Fusebox 5.1 will be a fairly conservative enhancement release. Fusebox 6 has more scope for adding features but, even so, backward compatibility will be maintained and the addition of features will be strictly controlled but community-driven.
I don't know how community-driven Mach II is. I don't think it has a public bug tracker (Model-Glue, Fusebox, ColdSpring and Reactor all do). I get the impression that Application.cfc support was added for coolness (the other frameworks have taken great pains to remain compatible with CFMX 6.1 and equivalent competing ColdFusion engines).
Comments
Sean, Application.cfc was not added "for coolness," it was added so developers can take advantage of the functionality of Application.cfc in the context of Mach-II. Not sure why you'd see that as a gimick.
Additionally, Mach-II is absolutely compatible with CF 6.1 because using Application.cfc is a choice on the part of the developer. If you're on CF 7 you can use it; if you're on 6.1 you would continue to use Application.cfm.
As for the community-driven aspects of Mach-II, we're moving in that direction. The code is already in SVN and when we rework the web site we're going to make Trac available to the community (at least that's the plan at this point).
Posted By Matt Woodward / Posted At
9/29/06 6:19 AM
I read Peter F's blog and didn't really see it as saying anything negative about MG:U. I think his point was that you have to be careful about your dependencies when choosing a framework and that extensibilty is something to consider. He said he believes that you want something that is flexible and pluggable vs something which is not. I don't he believes that MG:U isn't pluggable but his point is you don't have to use all of those framework together. Finally my belief is evaluate the frameworks and choose the best one for you, something that Matt and Peter have said on their podcast. I think they have been very good about not saying M2 or MG:U is the only way to go.
Posted By Kurt Wiersma / Posted At
9/29/06 10:57 AM
I've only been developing in Coldfusion since February of this year. After writing two applications using nothing more than the ColdFusion MX7 WACK book at my side, I've decided there's got too be a better way. So I've started looking at frameworks, especially Model-Glue:Unity. Some have argued that you should become almost an expert before you should use a Framework. I say baloney. I don't have time to become an expert. If I can use a framework to shorten the time it takes to write an application, then I'm going to use one. I don't care to know about the nuts and bolts in Reactor or ColdSpring. My company isn't paying me to become a ColdFusion expert. It's paying me to write applications in ColdFusion. I'm going to trust those that have written the frameworks. You guys know a lot more than me. I'll put my trust in your code over my code for the time being. Thats for sure.
I am looking forward to writing a real application in Model-Glue:Unity in the near future. I'm sure there will be times where I say "huh?" or "what the ...?". But I believe in the end, the framework will allow me to concentrate a lot more on the business problem rather than a ColdFusion problem.
Posted By Jeff Self / Posted At
9/29/06 11:54 AM
Sean,
I can speak to App.cfc support in M2 mostly. It was added as a real need in my company. (You'll see that in the comments for that file.)
Peter has been real good at listening to advice, and there is a small group that do email back and forth on suggestions for next versions.
And I think the next version of the M2 site will make it much more "open."
Sami
Posted By Sami Hoda / Posted At
9/29/06 3:37 PM
Sean, I remember reading a while back that you, Ben, and Hal were working on app.cfc support for M2. I found this post on the old email list:
houseoffusion [dot] com /groups/CF-Talk/thread.cfm/threadid:38178#193547
Were you opposed to it then? Do you think our current implementation isn't benifical to developers?
Posted By Peter J. Farrell / Posted At
10/1/06 12:48 PM
Peter, that was discussion around a 2.0 version (as the HoF post notes) and as the discussion unfolded, compatibility across a broader range of ColdFusion platforms was ultimately considered more important (than adding even optional features that were version specific).
Posted By Sean Corfield / Posted At
10/1/06 8:06 PM
And just to be clear, we were never "working on app.cfc support", we were just discussing whether incorporating such support made sense - and the decision was that it did not make sense.
Posted By Sean Corfield / Posted At
10/1/06 8:07 PM
The same four or five geeks trading blog comments isn't really as exciting as you make it sound. These are the same bunch of guys who go to developer conferences and sit around talking about code!
-Purr
Posted By SiamesePurr771 / Posted At
10/4/06 2:47 PM
Post Your Comments
Hosting provided by