| Speaking for myself, and I tend to make practical choices for what I understand now. At the moment, I am not using Rails in my day to day work, and this is largely based on my past experiences. Pros: - easy enough to find libraries for most things I wanna do - community likes testing, as do I - community seems to focus on business & web implementations, so good for those use cases - lots of questions for which I want answers already answered - package management - deployment to PaaS/Herorku-ish platforms pretty easy for smaller teams - here in San Francisco, there are lots of job opportunities for Rails developers - I like Ruby, even though I am less excited about OOP these days Cons: - Rails is magical & opinionated, and that always annoys me - Figuring out where some method is coming from in a Rails object is often a pain - In Elixir I almost never need a debugger, but in Ruby I almost always do - loading Rails apps can get really slow, and learning to wait for software to boot isn't a skill I like to develop - I feel more pressure "to do it" right when the time "to do it right" simply doesn't exist for reasons, because trying to come back and refactor gnarly Ruby code is just harder than it is in a compiled language - Ruby has to be installed on the system to which an app is deployed, and needing to think about how to pre-install Ruby or how long a Ruby install takes is a mild pain (stand alone Go binaries or Elixir releases are pretty sweet) |