Although it may not have every new shiny bell and whistle, the ecosystem is mature enough to be stable and to have developed accepted best practices, which means you don't need to worry about whether the tool you use is still going to be supported in 6 months time.
But the churn on gems is very painful. To be successful with Rails long term, you must make time to constantly upgrade your framework, for for too often a gem maintainer will just stop supporting older versions of the framework.
And all of a sudden the version you need won't build, or isn't compatible with something else, etc.
So Rails is great. It saves you tons of time and gives you rock solid web apps that talk to databases. As long as you don't fall behind in your gem versions. :)
That's me speaking after maintaining several apps from Rails 1 all the way to 4.2. And probably 5.
I don't here about people being bug free with TDD ( though significantly less bugful)
Obviously all about tradeoffs, but my impression is that if a third party lib needs a major version update, the time changing the version in your requirements is dwarfed by the time needed to investigate generally
(Disclaimer, some friends of mine made it)
It's still better than JavaScript, where whatever popular build tool you use today will be replaced in 6 months :D
I agree that it nailed the needs of web applications in 2004. If you are still building web applications like they did then, perhaps it is still the best tool. In the circles I find myself in, there is a push for much more Javascript heavy applications and Rails starts to become a large hinderance more than a help in that environment, when compared to other tools.
We've built a log of great software together over the years, but I can honestly say that I'm not going to rush into using it in future projects.
Rails Admin: https://github.com/sferik/rails_admin Active Admin: https://github.com/activeadmin/activeadmin Administrate: https://github.com/thoughtbot/administrate
https://stackoverflow.com/questions/16426398/active-admin-in...
But I think that's just where Rails is in its lifecycle. We all learned a lot from it, and we've started to build alternatives, but nothing has really coalesced yet.
Flash forward 5 years and there will be post-Rails frameworks that have worked their kinks out and are starting to enjoy the network effects that Rails has. At that point Rails will lose a lot of its advantage.
Most answers say the opposite:
https://www.quora.com/Has-C-and-ASP-NET-MVC-been-replaced-by...
It does one thing, web applications, and does it really, really well for the type of coder / team it was designed for.
People that belittle it by saying it has too much magic or whatever have never seriously tried to maintain a huge web application all by themselves. Web apps are ridiculously, mind-bogglingly complex, Rails conventions have been baking for well over a decade now.
If you're Twitter, maybe you have the resources to maintain a serious web presence without Rails. Everyone else is just handicapping themselves.