When Rails-way does not work anymore?
2 days ago
- #Software Complexity
- #Domain-Driven Design
- #Rails Development
- Rails-way is effective initially but becomes problematic as applications and teams grow, leading to issues like decreased developer confidence and slow AI adoption.
- Organizational signs include prolonged PR processes, difficulty splitting teams, extended onboarding times, and challenges explaining business rules to stakeholders.
- Technical signs involve persistent database performance issues, slow and flaky test suites, unpredictable impacts from simple changes, and duplicated business logic.
- Rails' core strength in rapid development and ease of use diminishes when facing business complexity, causing models to become overloaded and difficult to manage.
- As Rails conventions fall short, teams create custom conventions (e.g., service objects or concerns), which can lead to tighter coupling and inconsistency.
- A disconnect between Rails abstractions and business domains complicates understanding and mapping software to real-world processes, hindering enterprise application development.
- While Rails-way works for many apps, handling growing complexity may require shifting towards domain-driven approaches without completely abandoning Rails practices.