Skip navigation.
Home

Web frameworks.. what a crock

I'm not trying to compete with Hani on this, but can we stop the absurdity and futility of debating web frameworks please? I mean does a framework really need to do anything other than help deal with a web request?

Caveat: this is a little bit more of a rant than an organized, logic rebuttal or endorsement of one philosophy or another.

Is dealing with a web request really so difficult that it requires 150 different java frameworks on top of the 100 written in other languages? Is it really that tough to handle request/post parameters and turn them into proper java objects to be handled by the middle layer? What gets me going is a write up by Raible that compares the prevailing webframeworks of the day. I have read many of these reviews esposing one framework over the other (not just from Matt), saying which is best and why. I am guilty of having strong feelings on occasion about the very same topic.. I like component based frameworks because of blah, blah, blah, blah blah.. but mvc based frameworks are great for blah blah blah. Enough already.

The simple fact is that in programming it is always the right tool for the job. Anyone who has been a contractor for over six months should know this truth and accept it without batting an eye. So why does web framework get so much consideration? Why do managers insist on having a STRUTs person, a Spring MVC person or an IBM WebSphere Commerce person? My answer.. ignorance.

Let's just break down what these awesome web frameworks actually do for a programmer...

  1. Translate a web form into a java object and vice-versa. (maybe you can add validation here but that's pushing it)
  2. Call a class method when a button is clicked.
  3. Show a web page when said class method has finished executing.

Boy that is a lot.. What on earth would we do without these frameworks to help us with these oh so challenging tasks? Isn't it true that the model, business and persistence layers are what developers think programming is? Is the web layer so reusable between clients that a couple of config file changes is all that is necessary for a new application?

The web layer is so trivial and custom, that it is throw-away. I can't think of a single instance where I said boy this client in industry x really could use that web GUI that I built for a different client in industry y (or industry x for that matter!) I think we should start treating these frameworks in much the same light... throw away and of minor significance. If you find yourself espousing the grandiose virtues of one framework or the other to an unknowing, fully trusting manager type, please take a step back and let them know that it doesn't really matter. Please help them understand that supportability and maintainability has much more to do with their available resources than the best practice web framework that is chosen (i.e. right tool for the job/resources). This guy clearly doesn't get it either; there isn't going to be one all incompassing framework that rules them all.. but a bunch that do the same stupid tasks a little bit differently. As a matter of fact, not using a framework at all might be your best option!

Rant off..Eye-wink