Skip to content

Commit

Permalink
Luismi Cavalle's proposal
Browse files Browse the repository at this point in the history
  • Loading branch information
cavalle committed Apr 30, 2013
1 parent 3b9f4a6 commit 2147f1a
Showing 1 changed file with 42 additions and 0 deletions.
42 changes: 42 additions & 0 deletions luismi-cavalle.patterns-to-deal-with-big-activerecord-models.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,42 @@
# Patterns to deal with big ActiveRecord models #

## by Luismi Cavallé ##

### Abstract ###

“Skinny controllers, fat models” is a well-known practice in the Rails community
that everyone seems to follow. However, as your application evolves and your
models grow, maintaining them can become less enjoyable than it used to be.

In the last few years, the community has been proposing patterns and techniques
to deal with big AR models. Presenters, Service objects, Concerns or DCI are
only a few examples of solutions suggested to alleviate the pain caused by
gigantic models.

In this talk, we will critically explore these patterns in their varied
flavours. We'll compare them in order to expose their strengths and weaknesses
and you'll learn when and how to use them to keep your Rails models as
pleasurable to deal with as the first day.

### Additional Notes ###

Since several months ago, I've been [collecting][1] resources and
[researching][2] about the big-models issue in Rails. Books, blog posts,
conference talks, a lot have been said about this topic. I'm putting all of it
together to try to distill a view as complete as possible which could help me
(and hopefully others) to improve the maintainability of my AR models.

[1]:https://pinboard.in/u:cavalle/t:big-models/
[2]:https://github.com/cavalle/big-models/

This talk is the result of that effort. I'm willing to share and discuss with
the community some interesting insights about a topic many people are interested
in.

## Social ##

* [GitHub](http://github.com/cavalle)
* [Twitter](http://twitter.com/cavalle)
* [Writings](http://pinboard.in/u:cavalle/t:writings/)
* [Speaker Deck](https://speakerdeck.com/cavalle)
* [SlideShare](http://slideshare.net/cavalle)

0 comments on commit 2147f1a

Please sign in to comment.