if you stick with convention you help ensure future support as the framework matures
This is true if the framework has already achieved a kind of “middle age”. The problem is that Rails ain’t quite there, yet. When you look at some of the changes that came about with 2.0, I think that’s obvious.
There are some areas where Rails — and in particular, ActiveRecord, just aren’t quite mature enough. The kinds of things it does, it generally does pretty well — but there are common kinds of operations where it basically sucks. Perhaps the most common is dealing with tree structures like threaded conversations.
I think in a relatively immature framework, like Rails, there are advantages to be had in stepping outside the framework because that helps identify areas where work needs to be done.
What’s nice about Ruby is that, quite often, you can build your own extensions and inject them directly into the existing framework. Later, if your extensions become more widespread and absorbed into the framework, you don’t have much to do to integrate that.
Welcome! OmniNerd's content is generated by nerds like you. Learn more.