Matt Raible has been presenting java web frameworks(Ruby is included) comparisons since 2007. Last presentation was at JFokus 2012. His presentations have been highly criticized due to the lack of objectivity. He says it is his opinion. It is important to remember that comparing web frameworks is still not a established discipline and neutrality has not been reached yet. Nevertheless, I found his speech quite interesting and worth to be listened. You can do it at parleys.com. It is a 45 minutes speech.
The frameworks which were compared are:
- Struts 2
- Spring MVC
- Wicket
- JSF 2
- Tapestry
- Stripes
- GWT
- Grails
- Flex
- Vaadin
- Lift
- Play
- Rails
Remarkable points about his speech :
- There is no best framework, just a lot of awesome choices.
- Modern web development principles
- His matrix:

His presentation contains a matrix for comparing different web frameworks. The matrix has a row per each parameter defined. Every web framework has a grade for each parameter and every parameter is weighted. The numbers in the matrix are just his opinion and the criteria for choosing them is far away from being scientific or precise. Mainly there are 0 if it does not have this characteristic at all, 0.5 if it has it at some level and 1 if it is fully satisfied.
Nevertheless, the matrix is a useful tool. You have already a set of parameters to grade and weigh them. I wrote the matrix in a Calc sheet, you can use it to play with it.
I missed Python and PHP frameworks in his comparison. PHP is widely used and Python is used by high traffic sites(I will write about this soon), therefore, I think their frameworks are valuable to compare.
Based on Matt Raible’s opinion, the winners are Grails, Spring, Rails and GWT.
Best agile web frameworks based on Raible matrix
I have adapted Raible’s matrix weights to look for high productivity frameworks.

Weights explained:
- Developer perception(2): Better perception probably means easier learning curve.
- Learning curve(3): If you are going to learn the technology it really matters.
- Developer availability (2): A technology which is not used is not interesting to be evaluated for this project.
- Job Trends(0): It can be important for a developer, but it is not important for this project.
- Components(2): Reusable components accelerate development.
- Testing(2): Tools for testing allow to find errors faster.
- Quality of Documentation/Tutorial(2) : Better documentation, faster learning.
If you miss the explanation of any parameters, let me know and I will tell you. Winners are Rails, Grails and GWT. It is important to notice that Grails and Rails were compared in the Villamor’s article, they were considered as agile web frameworks and Rails won over Grails too. Unfortunately, Trails and Roma frameworks are not in this comparison.
Thanks for reading. Comments, criticism and sharing will be appreciated.
RT @Wframeworks: Web frameworks comparison of @mraible summarize and his matrix adapted to agile web frameworks http://t.co/e67R5ftruz
A Web framework comparison: Matt Raible views http://t.co/N8dhz5EM0u via @zite
[…] a previous article, Raible’s matrix was used to modify weights according to priorities in this project. Results showed that Grails and Rails were the request-based framework […]
[…] the human user point of view also, these smart website frameworks are important as they are compatible to all the web browsers available. So you do not have to work […]