As projects scale, early trade-offs can begin to haunt you, but a "great rewrite" becomes ever more complicated and unlikely. Many larger Rails applications are written to contain every necessary feature, turning even the most distinct concepts and behaviors into one tightly-coupled behemoth.
In this talk, we'll outline a chat application composed of distinct services including:
- Authorization and session handling
- Search using ElasticSearch and JSON
- Persistence API using ActiveRecord
- Front-end with Ember.js