views:

519

answers:

11

My company is looking to move their software to an open source framework. Their first thought was J2EE. I know that Django and Rails are popular for recreational development, but not sure about them in a corporate setting.

I was looking to compile a list of possible web frameworks to consider. Unfortunately I am not able to release our requirements to the public. Also I would like to know if you have seen/used different frameworks in a corporate environment.

Thanks

+2  A: 

Struts, Stripes, Wicket, Spring MVC. I use Grails and love it.

You can go to Rails too. We use Rails successfully in a number of serious applications.

If you are just looking to save money from software, you can go to any J2EE frameworks out there. If you looking for some fun and rapid development, try Rails.

It all depends on the type of the project and the talent you have.

Langali
Why do you use Rails for serious application instead of Rails? Is there any consideration for that decision? Cheers.
jpartogi
Did you mean Rails vs Grails? Not really. If I like to stick with the JVM and make use of all the Java libraries, I go with Grails. Rails is just as good, even more mature.
Langali
Yep, sorry a type. That should be Rails vs Grails. So despite of using Java library or not, you would prefer using Rails rather than Grails? Why?
jpartogi
+4  A: 

Not sure what you mean by a corporate use, but we're using Django at a large media company for the websites of nearly 40 radio stations.

Daniel Roseman
+1  A: 

I use django in a real-time professional environment.

it's solid, and blazing fast (django on nginx/fastcgi, and soon couchdb too!)

Oren Mazor
A: 

Struts2, Spring MVC, Stripes, Wicket, Grails, JSF, Seam, GWT, Flex, etc (Stripes and Grails being my favorite).

Matt Raible did interesting comparisons of (most of) them in this presentation which is an updated version of this old one.

Another interesting reading might be the What is the most commonly used Java web framework? question here on SO.

IMO, whatever you choose doesn't matter that much, the presentation layer will still be throw away code.

Pascal Thivent
+2  A: 

Another vote for Django. I'm not sure if the Washington Post or LA Times count as "corporate" but they have a lot more demands (both daily hits and time-to-new-feature) than your average "corporate" environment.

Peter Rowell
+1  A: 

We're using sinatra (ruby) for frontend to our main internal application. Simple, stable and flexible.

A: 

Any framework that keeps you away from the imperative languages (e.g. Java, C#, JSP with Java etc.) is better. Declarative/Functional/Data Flow languages (e.g. Ruby, XSLT, Python, etc.) result in solid implementations that save you support/enhancement $$$.

srini.venigalla
"Any framework that keeps you away from the imperative languages ... s better" any decent reasons why to keep away from "imperative languages"?
Max
A: 

It sounds like the powers that be are comfortable with Java, but do yourself a favor and avoid J2EE. Go grab Restlet and Groovy, write a nice Rest back-end that not only serves as a programmatic API for your project, but will work nicely with any Ajax/Javascript library you choose to implement a UI in.

stinkymatt
A: 

We are currently using Django and the web site is driving a lot of business to the company as well as growing by double digits since last year. It doesn't matter what kind of technology the corporation is using but what their business model is. What are you currently using in-house? It will make more sense to use a web framework related to your in-house code, knowledge and man power.

If nobody knows Rails or Django, you have to factor in the learning curve during the migration. It should only be a couple of weeks depending on the savviness of your developers. Then again if everyone hates or do not enjoy working with the in-house technology, trying a new one might be worth it.

Thierry Lam
+5  A: 

I believe the more important question is what talents you got. If you have a primarily Java team, and you want to completely move to Ruby or Python, it's gonna be hard, if not impossible.

When deciding if X language/framework is good for a business, you have to consider opinions from your internal technical staff first. That normally sets you in a place with limited choices. Unless you are with a very small but highly talented/motivated team or planning to build a team with new hires.

Bill Yang
A: 

"I know that Django and Rails are popular for recreational development (...)"

Rails:

Django:

They have high traffic and content-heavy services. I wouldn't call those guys business as "recreational development".

hcalves