Parlando dall'esperienza: il lato negativo è che ci si affida molto al framework Rails anche un po ' too . Questa è una grande e meravigliosa cosa se scrivi sempre semplici app CRUD greenfield che si inseriscono perfettamente nel "punto debole" di Rails; la tua produttività salirà alle stelle. Tuttavia, nel momento in cui devi fare qualcosa al di fuori di quel punto debole - interagire con un database esistente, parlare con un'altra applicazione che non ha un'API JSON o XML definita, implementare un flusso di lavoro complicato, Rails diventerà il tuo nemico. È è possibile fare queste cose con Rails, ma va "controcorrente", quindi sei fondamentalmente da solo a capire come farlo dato che la comunità di solito risponde solo con "Don" "Fai così, non è il modo Rails" - questo si traduce in perdita di produttività o di codice molto disordinato, dato che devi fondamentalmente hackerare il framework Rails.
Inoltre, c'è un lato negativo inespresso: tutto il resto sembrerà brutto e sfacciato. Una volta assaggiato il dolce e dolce nettare di Rails (okay, evangelizzando solo un po 'qui ...) tutto il resto è buono. Passare da Rails a PHP, o ASP.NET WebForms, o Java è come camminare su un letto di chiodi dopo aver saltato in un giardino rigoglioso; non vedrai le altre lingue / strutture nella stessa luce, e mentre potresti ancora apprezzarle, vorrai segretamente l'abbraccio amorevole di Rails.