Hablando por experiencia: la desventaja es que confías demasiado en el marco de Rails . Esto es algo maravilloso y maravilloso si solo está escribiendo aplicaciones CRUD simples y nuevas que caen directamente en el "punto óptimo" de Rails; Su productividad se disparará. Sin embargo, en el momento en que tenga que hacer algo fuera de ese punto óptimo: interactúe con una base de datos existente, hable con otra aplicación que no tenga una API JSON o XML definida, implemente un flujo de trabajo complicado, Rails se convertirá en su enemigo. que eses posible hacer estas cosas con Rails, pero va "contra la corriente", así que básicamente estás solo para descubrir cómo hacerlo, ya que la comunidad generalmente responderá con "No hagas eso, no son los Rails manera ": esto resulta en pérdida de productividad o código muy desordenado, ya que básicamente tienes que hackear el marco de Rails.
Además, está el inconveniente tácito: todo lo demás parecerá feo y torpe. Una vez que hayas probado el dulce, dulce néctar de Rails (está bien, evangelizando solo un poco aquí ...) todo lo demás es genial. Volver de Rails a PHP, o ASP.NET WebForms, o Java es como caminar sobre una cama de clavos después de retozar en un exuberante jardín; no verá los otros lenguajes / marcos en la misma luz, y si bien aún puede apreciarlos, secretamente anhelará el amoroso abrazo de Rails.