Hacker News new | ask | show | jobs
by heriC 4942 days ago
Having used both Drupal and Rails fairly extensively, I yearn for a Rails CMS with the community and variety of modules in Drupal. I hate doing Drupal development, but from a return on investment prospective, in many use cases, Rails actually loses to Drupal.

In Drupal we can often get 2/3rds of our app for free, which productivity-wise has let us accomplish things in timeframes that would be impossible in Rails.

If something with Drupal's advantages were available within Rails (as an engine or what have you) it would be a clear game-over for other stacks vs. Rails.

2 comments

> If something with Drupal's advantages were available within Rails (as an engine or what have you) it would be a clear game-over for other stacks vs. Rails.

I have to disagree here. There are clear use cases for either Drupal or Rails. I understand why you yearn for a Ruby Drupal, because dealing with PHP is a hassle, but objectively there is little to be gained since Drupal is already a beast and performance would only be hurt by being ported to Ruby.

Aside from that, the key advantage that Rails or other low-level web frameworks have over Drupal is that they don't make any assumptions beyond the fact that you are using HTTP. With Drupal there is an incredible amount of pre-existing architectural cruft to enable its powerful functionality, but it creates a ton of overhead to deal with as soon as you want to do something that doesn't neatly fit it's paradigm. As soon as you brought something like this into Rails then you'd be defeating the purpose of its simple elegance.

I just don't see any way to separate out the best of both worlds. They have very distinct use cases.

To be clear, I don't want it in Rails core. I want someone to make a framework that can run in Rails where I can pull in giant duplo-blocks of functionality.
But what would be the advantage over just running Drupal on PHP?
> Having used both Drupal and Rails fairly extensively, I yearn for a Rails CMS with the community and variety of modules in Drupal.

Why, if not for religious reasons? Drupal already exists, and there's no compelling business reason to reimplement it in Rails. (otherwise somebody would have done it already)

Because Drupal is a mess. It is like a naturally evolved organism with vestigial organisms and the difficulty in refactoring that comes along with it. The hooks are all global in scope. It all works, but it is all over the place. Using Drupal makes me feel productive, but dirty. And to develop any new functionality the Ruby/Rails stack is much faster. So the reason to want something that marries both is to get fast development for new parts, and giant reusable Duplo's for the repetitive common app parts. If I was religious about these things, I would not be developing in Drupal in the first place... :-)
What if the Drupal productivity is directly a result of the messiness?
Interesting theory, but the productivity is almost entirely due to not having to write large blocks of code. For example, in our last project, I didn't have to write an admin interface, users, roles, authentication, tagging, forms and more. The messiness was tangential, not useful.