True story: In a bar (John Collins)i n SF, few weeks ago, end up striking a conversation with somebody in a bathroom line.
Him: what do you do for work?
Me: I am an engineer. Software engineer.
Him: A Java guy!?! (with a lot of smugginess).
.... right now i am wondering if i have java printed on my front of something. wtf.
Me: umm... no. Java is only one of the languages I know. (I use it most in mobile dev). I also work on python and lua on the server side, and come C too. And you? (i was still surprised by his condescending tone).
Him: I am rails dev! Ruby on Rails (with even more smugginess, borderlining on arrogance).
.... few questions later, i realized this guy was a crock. Didn't know much about closures/blocks, how many databases can you use on rails at a time... etc.
imagine working with people like that. They setup rails, get a simple app going, and they feel they are in top of the world and better then you. If you know java, you are automatically assumed to be be an idiot, and if you don't use rails you must be a boring person.
I think the Rails Community is full of people that suffer from the Dunning-Kruger effect. A lot of newbies, who migrated from php, or would have started with php few years ago, have migrated to Ror.
My point is that Rails is just another framework in top of an scripting language which I don't prefer that much. While really nice for basic CRUD apps, as soon as you try to do anything advanced, it shows it's limitations right away. I tried to use Rails, but I have never been attracted to Ruby as primary language.
Then I started using django, but I dropped it soon after my dislike with the way meshes forms and models, and the sheer size of the framework.
I think the lesson I got out of it, is that more than often you just don't need a full blown framework. If you are doing anything highly specialized, a framework will get into your way. If you are doing anything very simple, a full blown framework is just an overkill.
Frameworks like Rails or Django are a perfect fit for most medium complexity type of CRUD apps. If you are doing anything else, better start looking somewhere else, and don't just buy the hype.