Keep your ActiveRecord models manageable the Rails way

Keep your ActiveRecord models manageable the Rails way

Rails is awesome! It makes very easy and fun to start new projects. However, as your application grows, you will eventually need to come off the Rails. Otherwise your codebase will become completely unmanageable. Everyone knows that.

You'll need presenters and a service layer, including role and use-case objects. DCI will be great too or, alternatively, you can go Hexagonal. After all, the web is just a delivery mechanism, the database is a mere persistence strategy and, of course, “Rails is a detail”.

But… Wait a minute! Is all that really true? Does the Golden Path no longer work as your application becomes larger? How is it, then, that Rails claims to be “optimised for sustainable productivity”?

Criticising Rails is so last year! This time we'll revisit the patterns and conventions that Rails encourages and push them to the limit to see what happens. We'll seek examples of large Rails applications keeping their models manageable without derailing. We'll also discuss the trade-offs of running on and off the Rails. And, maybe, we'll finally learn how to stop worrying and love the Rails way!