The Frameworks Debate - My Take

Posted on Sep 26, 2005

I have been reading Simon Horwith's posts about frameworks with interest. I am probably one of the biggest fans of ColdFusion frameworks not to have actually used one. I studied FuseBox starting with version 3; bought (and read) the book for version 4; studied the Mach ii Development Guide and most recently began researching Model-Glue. Yet, in all that studying, I never actually built any serious application using any of these frameworks, and Simon's posts have gotten myself asking why that is, because my reasons seem to differ from his.I guess an initial misconception I had about frameworks back when I first started looking at them was that they would make development easier and/or faster. My feeling at this point is that this is not the case. I think that frameworks primarily offer consistency which can often improve stability. Somehow this led me to thinking about something I read a long time ago about highway expansion projects. Why? Let me explain.

I don't remember the specifics about what I read, but the gist was about some traffic research that showed that most highway expansion projects in the end only trimmed minutes off most drivers' rides, while causing extended delays during construction that often negated the time-savings it eventually netted. Do you get where I am headed? My point is that I often feel as if alot of time is spent learning all the details of using a framework that may not justify the pay-off in any time-savings you may see. Add to that the complication of transitioning an entire development team to a new methodology and adopting a framework can become quite difficult.

Consistency and stability are worthwhile noentheless, and could be enough reason to adopt a framework. However, extending my lame highway analogy...you wouldn't build a highway into a small suburban neighborhood as it would be overkill. Where am I going with this? Well, not every site is worthy of a "highway" IMHO. Implementing a framework for a relatively basic site may be overkill as well, and I have worked on alot of relatively basic and low-traffic sites. However, if you are building a large high-volume enterprise application, perhaps it is worth considering.

So then, why haven't I pushed for implementing one of these frameworks at my current employer considering they are a large enterprise with high-traffic sites? Well first, there is a certain amount of opposition to the idea from others mainly from the legitimate concern about the time it would take to have the entire team learn the framework and get adjusted to actually using it to build sites.

Primarily however, it is because I am coming to realize we build alot of transitional sites. We "refresh" our sites so often as to almost make them perpetually transitional. Following (again) on my lame highway analogy, it would be the equivalent of building a highway to a mobile home...or something like that. Still, I am hesitant to accept these arguments fully myself and still cling to the possibility of adopting a framework in the long run (maybe when model-glue is a little more mature?).

All this being considered, I will still remain a fan of frameworks and will likely continue to read and study each of them as they move forward. Will I ever actually adopt one? Maybe. However, I feel that in studying them I learn alot of techniques for building solid sites that I can adopt without necessarily adopting the framework as a whole. Lastly, it enables me to make an educated choice not to use the framework in a given situation.

Comments

mario excellent post!

I agree with a lot of what you're saying. How many times have you setup something to be modular and easy to update, and then the client (or yourself) TOTALLY changes how something works and and all your modular design is thrown to shite.

Using those framework ideologies and concepts is probably best IMO, when dealing with something as dynamic as the web.

Posted By mario / Posted on 09/27/2005 at 1:00 AM


Write your comment



(it will not be displayed)





About

My name is Brian Rinaldi and I am the Web Community Manager for Flash Platform at Adobe. I am a regular blogger, speaker and author. I also founded RIA Unleashed conference in Boston. The views expressed on this site are my own & not those of my employer.