It’s really amazing to see all the innovation that keeps coming out of languages and frameworks. Obviously languages like Ruby and even more so, frameworks like Ruby on Rails are needed to challenge the status quo. Ruby and Rails helped pulled Java and .Net into the stateless realm of the web and out of heavy session memory, cumbersome non-service oriented architectures. We were having a conversation with the DAY CTO, David Nuescheler, who pointed out the architectures of old based on stateful sessions like Struts don’t really have the flexibility needed for the web of today. The lesson is that language frameworks and languages need to change to be more RESTful and based on service oriented approaches. Frameworks like Spring and
Groovy Grails help provide those best practices for Java for example.
So, it’s great having all these new languages out there, and given we are doing more web development outside of the browser, there’s room for more diversity, which is great, but Java is still doing fine according to this ReadWrite Enterprise article. The interesting thing for Razorfish is that our clients are enterprise 500-1000 organizations and we don’t see a lot of the newer languages there, but we do see a lot of Java and .Net. Until there are drastic and readily apparent increases in language productivity, it seems it’ll continue to be more about the framework than the language. Frameworks like Java EE are extremely broad, where lightweight frameworks like Rails and
Groovy Grails are very web centric, but not as complete.
That being said, I would keep my eye on node.js. Since node.js can run on just about any device, that may turn out to be the next ‘hot’ language. I thought it was neat to see the webos platform choose node.js as it’s application language. The folks at Joyent have some very interesting thoughts on node.js.