Duelling Frameworks?
September 28, 2006 · 8 Comments
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).
Tags: coldfusion · coldspring · fusebox · machii · modelglue · orm

8 responses so far ↓
1 Matt Woodward // Sep 29, 2006 at 3:19 AM
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).
2 Kurt Wiersma // Sep 29, 2006 at 7:57 AM
3 Jeff Self // Sep 29, 2006 at 8:54 AM
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.
4 Sami Hoda // Sep 29, 2006 at 12:37 PM
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
5 Peter J. Farrell // Oct 1, 2006 at 9:48 AM
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?
6 Sean Corfield // Oct 1, 2006 at 5:06 PM
7 Sean Corfield // Oct 1, 2006 at 5:07 PM
8 SiamesePurr771 // Oct 4, 2006 at 11:47 AM
-Purr
Leave a Comment