> However, for a complex SaaS (any SaaS can get here really), you will need to make some sane choices around modularity and building separate, loosely coupled services before things get out of hand. Node.js (or any of its lightweight frameworks on top) is probably a little stronger than Rails in this regard.
Huh? This is a load of crap. Frameworks, and even languages, have nothing to do with modularity and building services. You can do this in any language and any framework. Modularity and loose coupling are decided by the developer(s) writing the code and if you think a particular tool will solve this for you then you have a grave future.
I don't think it's right for you to call what he said crap without backing it up with any evidence. Node.js is essentially the modern poster child of modularity. JavaScript doesn't have inherent modularity--but the devs of Node have made some choices that make it possible to have an extensive module ecosystem for Node. npm is probably one of the best package managers for development right now, as it comes with one of the most popular platforms and is inherently flexible.
Package managers have nothing to do with modularity. You're confusing modules, a thing, with modularity, a property. How you write and design your systems is how you get (and don't get) modularity, not by having a service you upload and download packaged code to.
Again, modularity has nothing to do with the quality of your package manager.
> Frameworks, and even languages, have nothing to do with modularity and building services.
I respectfully disagree with this statement. Many frameworks actively encourage a monolithic architecture through conventions, all to increase productivity during the initial construction phase of a project. If you're sprinting to launch a project, modularity and loose coupling matter a lot less than sheer productivity to churn out as many features as quickly as possible. Rails was designed with this mindset and it excels in it more than any other framework out there.
Refactoring to modularity and loose coupling down the road after choosing something like Rails is non-trivial, especially when compared to the rapid pace the development team enjoys in the early stages of using the framework. So one needs to be aware of that before diving in.
Other lightweight tools like Node.js front load the cost of modularity by forcing you to design on your own conventions early on. If you know the product is likely going to get complex very quickly, it maybe worth taking on the front-loaded cost of these tools.
Huh? This is a load of crap. Frameworks, and even languages, have nothing to do with modularity and building services. You can do this in any language and any framework. Modularity and loose coupling are decided by the developer(s) writing the code and if you think a particular tool will solve this for you then you have a grave future.