<< Some Reasons Flex Looks Appealing | Home | Some Thoughts on Swing, MVC, and Available Application API's >>

"Best Tool for the Job" is a Myth

when it comes to web frameworks

Browsing around the Q&A on JavaRanch.com I see a lot of the same questions when it comes to web frameworks. To paraphrase:

"Which web framework should I choose and why?"

I and others often respond with the typical canned answer. This answer comes in many flavors; "There is no golden hammer", "We can't answer without the context of your project", "Every project requires its own investigation to answer this question", etc, etc. The meaning of those answers is all the same, however. But is it true?

The last 3 projects I've worked on I really pushed for, and was able to use, Stripes. I really like Stripes and since I am not a "full stack" person I generally like to pick and choose each portion of my solution puzzle. Stripes is my go to web MVC piece of that puzzle. And I honestly can't recall that during the discovery phase of any of these projects I honestly considered anything else. (on my current project we did discuss Symfony vs Stripes but that is more of a language debate than framework debate). Is that a mistake? I don't think so. If you use, like, and favor Wicket do you really consider something like Struts 2 or Spring MVC when you are getting ready to start a new project? I'd be willing to bet you don't.

I think we all like to think that we are open minded about this sort of thing but the passion on blogs and forums (or flame wars if you prefer) really prove otherwise. Most developers think their tool box contains the golden hammer(s).

What do you think?



Re: "Best Tool for the Job" is a Myth

One of the things I do as a professional, is realizing solutions that were the best available at one point no longer are. At that point, you must be able to admit this, and choose differently.

But when using a full-stack framework, this is generally not possible. This is why I favor the UNIX approach: use different pieces together. And as an added advantage, I can only use those pieces I actually need.

Re: "Best Tool for the Job" is a Myth

What do you think about Spring MVC 2.5?, I like Stripes too but I feel more flexible Spring MVC 2.5 now because I can plug it any functionality and I could use the annotation approach or the xml configuration, I could use the services or not or straight to Hibernate etc. I'm starting a project with Spring MVC with annotations and for the view Freemarker it rocks really very clean and easy to use.

Re: "Best Tool for the Job" is a Myth

@Sidewinder128: All of which you can do just as easily in Stripes using Spring. What do you think Spring MVC gives you that Stripes doesn't provide?

Re: "Best Tool for the Job" is a Myth

Yeah, it's a bit like some years ago when everybody claimed "we use best-of-breed tools to accomplish this and that". While at first it sounds like a good thing, there's a cost to be paid for combining separate tools/frameworks instead of using a single integrated one. It's the same here. Neither of these approaches is right all the time. There's a time to evaluate and then choose, and there's a time to just use what you know. Just like there's a difference between talking the talk and walking the walk :-)

Add a comment Send a TrackBack