Could decent tooling support for Ruby on Rails accelerate its acceptance?

A common theme at The Server Side Symposium and EclipseCon this week was how to make Java more ‘Ruby on Rails’-like. RoR has made a big impact on showing how simple the development of database driven web apps can be, so simple in fact that it makes our typical multi-layered Java application approaches like almost ridiculous.

In an interview with the developer of RoR, David Heinemeier Hansson, he comments on dynamic languages in general and how they are pressuring Java to adapt and change, in that dynamic languages such as Ruby are a ‘better, faster, and free way for a huge chunk of possible applications”. This is surprising to me, as I consider dynamic languages, in particular scripting languages great for getting some simple, well defined tasks completed quickly, but they are definitely not well suited for other more complex, or enterprise-wide problems. This is the same for statically typed languages such as Java, in that if I had to read a couple of files, parse the content, sort and write out another new file, I probably wouldn’t consider using Java; I would instead use a dynamic language such as Perl or Python.

On the whole, I dislike dynamic languages. I cringe everytime I have to write some Javascript to do something client-side in the browser for a web-app. It is so painful to get things working, to get syntax correct, and to get the results I expect. The reason why? Because the language is dynamic I can change types of variables on the fly, by mistake, and get into all sort of hard to debug problems, plus in order to find any syntax errors I have to run the code (compared to having a compile step with statically typed languages). Debugging – this is also another major hurdle: tool support. With decent tools, Javascript development could be easier, but I really struggle with the basic debuggers that are available compared to debuggers in Java IDEs like Eclipse and NetBeans.

This brings me to this conclusion: given decent, full featured development tools for Ruby on Rails, could this be what it would take to encourage more developers to move to using dynamic languages? I know we are constantly hearing that developers are already moving to RoR, but I don’t buy it (yet). But if Java developers had an ‘Eclipse for Ruby on Rails’, would this make the language and approach more attractive for Java developers? That said, we still have to realize that the approaches of languages like Java and Ruby are different, and that you have to choose the tool that is most appropriate for the task at hand.

Leave a Reply

Your email address will not be published.

This site uses Akismet to reduce spam. Learn how your comment data is processed.