Railscasts was active. This was huge. Repeating for emphasis. Railscasts was huge for me.
There were a few headscratchers along the way - RJS, components, maybe a few other oddities (I think turbolinks falls into this category), but they tend to get removed as time goes on if they don't work for a lot of people. The Rails team may get pretty enthusiastic about some weird stuff now and then, but they're also pretty good about reversing their mistakes. They seemed to have learned from the 2->3 transition hell as well. Upgrades are fairly painless now.
That said, it's still very much relevant. It's been polished to the point where you can really do a lot with very little work. There are solid, well maintained gems that do lots of common tasks (although there are a few things that are strangely missing from the community). The REST convention is very powerful, and the code is easy to follow.
I resisted the move towards complex js front end frameworks because I was tired of figuring out which one to learn. That hasn't changed. I abhor the pace of js framework development - I can't justify learning a lot of it from a business perspective. It is just too unstable. I have clients using Rails apps I wrote 7 years ago that are still very maintainable, and that is great.
When I need complex UI's I take a hybrid approach and have rails load miniature angular apps on a page by page basis. If the view is complex enough, I have it load up a single file angular app to handle that complexity - but only for that page. A 4 line helper loads the angular files automatically. Otherwise, it's all Rails. I've found this approach to be very flexible - it's able of delivering a very rich UI where needed without overcomplicating the good stuff that Rails provides for free.
Even if I were starting over today, I think Rails would be at or near the top of my list. I feel for folks picking it up now, though, as it is a little tougher than it used to be.
I'm finding Turbolinks partial replacement a good option in some cases too.
The thing with not doing a traditional SPA in one Javascript framework, is you can rip out or add anything at anytime. So say in the next 30 seconds when a new Javascript framework comes out, I can use that in my Rails app. If I embraced Angular for my entire app it would be impossible to change the framework out. I've been able to play with React, Knockoutjs and others on certain parts of my app because I'm still embracing traditional navigation(with Pjax or Turbolinks)
...such as? It'd help to know what you consider to be "better alternatives" because it gives scope to what your priorities are. I've seen discussions in which people say, "Well now there's Sinatra"...which is fine, but that's more of an opinion about "Lightweight projects and systems are nicer" rather than "Sinatra is better than Rails". I used to use Rails all the time but now I do most data projects in Middleman...but that's because I prioritize static builds and front-end engineering and most importantly, simplified my data infrastructure so that it can be represented as a spreadsheet or plaintext YAML...but that's not something applicable to all projects.
One of the most valuable parts of Rails is its opinionated infrastructure...and I think that's helped it be a little more nimble from version to version.
Basically, a few years ago I thought it was easier to build my own framework in Golang, C, C++. I've also used PHP, Node and Flask from time to time. After doing all that, I had a pretty good understanding in how it all works, and can see the beauty in some of the way Rails works. I definitely think it'll keep growing and is worth learning if you're into web development.
citing the parent
no that's bullshit, just do the rails tutorial online and you'll be good to go. OF course you need to know Ruby. Like with any other language, you can't just learn the framework.
If a person know Git, HTML, JavaScript, and one server-side language, I can teach them enough Rails to build production apps in a few weeks. I've had a lot of success with that.
We're finding it to be incredibly productive, and more than performant for our needs — especially when you couple it with Postgresql.
For those who want to remember the mood of the times, circa 2005, Bruce Eckel did a great job of capturing it in his December 2005 essay "The departure of the hyper-enthusiasts":
http://www.artima.com/weblogs/viewpost.jsp?thread=141312
He was lamenting/celebrating the sudden end of the hype around Java.