Rails is strongly opinionated. It favors a Convention over Configuration approach to most problems. I think that is why it provokes very different emotions on those who use it. Some people love it while others hate it.

I’ve noticed very few Rails developers take the time to truly understand how a Rails application works. These lack of understanding can be disastrous for web projects: wiped out databases, unmaintainable code, new team members can’t get the app running.