Expectation Gap - Exploring the void between the technology experience that you think you are creating, and what users actually experience.

Top Navigation

Main Content

The State of Web-Frameworks: April 2010
 Posted on: April 20th, 2010 By: Michael McCracken Under: Strategy
I recently attended a great language panel at the Denver Java User's Group which targeted four languages: Ruby, Groovy, Scala, and Clojure. While the panel only briefly touched on the web-frameworks available - it closely coincided with some interest I'd had into the better web-offerings for Java, Ruby, and Groovy. Here's a closer look at some numbers I've assembled.

First, I chose to look at language age, including Python due to widespread use and the fact that it predates all others in this list. Of interest: I thought Groovy was a lot younger.




It's amazing what Rails has accomplished in the same six years it shares with JSF.




Finding what resources are available to "most" people is a difficult task. Here, I focus on what books are widely available per subject-type. I chose to perform a specific type of search on Amazon.com - with understanding of the fact that book numbers change quite rapidly.

Items were searched on amazon within books -> programming, approximately April 5th 2010. While book numbers change over time, a sample of the same items approximately two weeks later showed the same trends.



Items were searched on amazon within books -> programming, approximately April 5th 2010. While book numbers change over time, a sample of the same items approximately two weeks later showed the same trends.




The number of web-development frameworks per-language are another interesting touchpoint, with Java having the most (over 100) and Groovy having the least (1). It's interesting that Python, the oldest language of the group, only has around twenty frameworks. The Ruby community also has some interesting points here, as frameworks like Sinatra work quite well alongside Rails - while Rails and it's strongest competitor (Merb) have merged (Rails3).




The committers and plugins available for each framework are heavily skewed towards Rails, even though Struts (extensions), JSF (Components), and Grails (Plugins) all support similar implementations to broaden framework scope. It's difficult to give Struts and JSF a pass here, especially since Grails has done so well in such a short period of time. That said: the bench-strength of the Rails community is quite impressive and can't be ignored.




Job growth trends offer a glimpse into the frameworks' past, present, and future. These charts show absolute growth versus relative because, while the relative job growth of Groovy and Rails is at first striking, they still hold a much smaller slice of overall jobs. Additionally, Java and .Net were excluded from these charts simply because they so clearly dominate the current software climate due to heavy enterprise use.






This data, while very time dependent (April 2010), really paints an interesting picture of web-development frameworks. The Java community appears to repeatedly attack web-development frameworks without effectively solving the problem (aka: over 100 frameworks). Newcomer Grails has walked in and gained a lot of early momentum, but still faces a tough challenge trying to carve off some of that Java mindshare - especially with strong competition from Struts2, JSF2, SpringMVC/SpringRoo, and Wicket to name a few.

The Ruby space is also fascinating. Consider not only the merge of two strong frameworks in that space (Rails, Merb), but also the diversity that complimentary frameworks like Sinatra bring to the table - all backed by a vibrant community.

What are your views of these frameworks? Can Grails make a dent in the Java community? Will Rails keep up it's impressive momentum?
foo

Leave a Reply





Join the conversation
Posted by: Braden  3 months ago...

Really Good Article. I think the fact that Groovy on Grails is gaining momentum shows that RoR did things the right way. I'm opinionated but seems like Java has decide to be reactive instead of proactive. Rails is constantly making improvements and they seem to be driving the industry to me. (If you have the choice why go with the the copy when you can go with the original). Also I love the support community for Rails. I don't know if I have EVER posted on a rails forum, b/c between the guides.rubyonrails.org, http://railscasts.com/ & all the plugins available. I easily find solutions and examples. Plus I don't like that Java is now tied to Oracle!!!


Secondary Navigation


Footer

Sometimes technology just doesn't work like it should. Be it hardware, software, or programming language - few bridge the divide. Hidden between intent and desire lies the Expectation Gap - an exploration of this technical void, and the exceptional who somehow manage to transcend it. Want to contribute? Write for us. General comments can be sent to: expwsectwasabiationgap**@.org@gori.mmail.ws.foo.comcom

Content & Intellectual Property | ExpectationGap © 2010