Friday, October 12, 2007

Do You Know Ruby..?

Has anyone started using, I mean REALLY using Ruby on Rails for an enterprise KM deployment?

I had run into this question a few weeks into a new project to try and re-platform an ailing Notes application. The evidence was scant but some of our folks had been using it for quick and dirty Skunkworks type projects and a few others even had real Web 2.0 sites up and running but that does not qualify as 'Enterprise'...not in my book anyway.

Ever-interested in how well my peers could help out on this question, I posted again to LinkedIn and here is the history:

Q: "Have you used "Ruby On Rails" as a development tool for a distributed enterprise application project..? If so, your comments and insights would be very welcome. Thanks in advance. "

A range of the answers follow.

1) "I've used Ruby on Rails extensively. While I'm normally a Python/Django bigot, Ruby on Rails has great documentation, and a great community. It allows you to rapidly get your project up and moving, so your time to market is much lower. However, I had two problems. Deployment was a bit cumbersome, and took a little bit more time than I would have liked. As well, the RoR ORM sometimes got in the way more than it helped. Those were definitely issues that I was able to overcome in my Rails projects. " > Software and Consulting

2) "It still is relatively young but very capable and is a natural fit for database-driven web applications. I have every confident Rails can deliver your enterprise application much to your satisfaction. " > Skilled Software Developer

3) "Yes. It depends on what your needs are. I am a professional Rails developer, and the productivity gains from using Rails are unmatched in other web frameworks. Performance and stability-wise, what it all comes down to is architecture. The reality of the situation is that enterprise applications are rarely written in a single language, instead relying on Service Oriented Architectures for communication. Rails has great support for REST XML, and it is fairly trivial to support other standards, such as SOAP XML. " > Software Engineer

4) "Ruby on Rails is an interesting framework; it's well-suited for building end-to-end (interface to database) applications quickly. I'm not totally sold on the idea that it's suitable for long-term, maintainable applications, but I'm not totally sold that it isn't either. It's not the most mature of frameworks, and the plugins available are also not the most mature. The language itself is fairly slow, as languages go, but pleasant to write in. "> Software Development Generalist

5) "I have found the development to be quick and easy. That being said, I think the framework's benefits do not extend well into a mature enterprise. I rarely see many simple web-to-database applications anymore. " >Technical Manager at SunGard Consulting Services

6) "We love Ruby on Rails. Except deployment challenges, the framework is awesome. Keep in mind that RoR is just new and now has got a very large community of developers to it will get better and better. We have been working on it since last 12 months. We have 14 developers working on it now and they have come from .NET and Java background. They don't want to go back working on anything else except RoR. " >Drupal and Ruby on Rails Specialist

7) "Yes, it is a good tool but otherwise not enterprise ready. " > Enterprise Architect

I think that last comment says it all.

In my view Ruby, like all new application development languages, has started out with a strong value proposition that appeals to a certain type of developer and for a certain type of project.

As the uses of the product have grown and it's proponents have pushed it further, the same limiters and constraints that have always come into play (stability, enterprise scalability, security etc) for new languages have arisen and started to require serious consideration if it is to move forward.

In every case of course the way we manage to and work with the limiters is different and, in effect, a brand new architectural framework develops with it's own unique strengths and weaknesses.

Ruby seems to be off to great start but we won't be using it just yet.

No comments: