Here’s the thing, and this just reflects my opinion on the subject. Rails, Node (etc) mostly bring an answer to the challenge of “getting something quickly off the ground”. This kind of implies that a few years in, if your app/concept works and brings in revenue, you make the decision to switch to something more robust (Java, Scala, you name it). Or not, because your Rails codebase is actually clean and maintainable. GitHub is still Rails. ProductHunt is still Rails. Their response times are crazy fast. Twitter, Twitch and others have decided to switch because their architecture didn’t reflect their goals/load anymore. The framework itself has made strides when it comes to speed and reliability. And if you don’t like something, why not take it out? I’ve ran a few Rails apps without the asset pipeline, only on Webpack, and reaped the benefits of hot module replacement, quick livereloading and ES6, coupled with the ability to add features at high speed. Doesn’t take ages, just “peeking under the hood” a little. As for the crazy dependencies… That’s one of the trade-offs of being able to put something out there quickly. You need to know when to change up for a particular project, and maybe even advice your clients to do the same. The community hasn’t done anything wrong in this aspect.
Today I accept that Rails is yesterday’s software.
Rob Robinson
70390