• Engine Yard
  • LivingSocial
  • VMware
  • Heroku
  • Rackspace Hosting
  • Blue Box Group
  • JetBrains
  • New Relic
  • Percona
  • Pivotal Labs
  • Rails Dog
  • WyeWorks
  • Chargify

Sponsorship Opportunities

For information on exhibition and sponsorship opportunities at RailsConf, contact Yvonne Romaine at yromaine@oreilly.com.

Download the RailsConf Sponsor/Exhibitor Prospectus

Contact Us

View a complete list of RailsConf contacts.

Fat Models Aren't Enough

Jeff Casimir (Jumpstart Lab)
Location: Ballroom II
Average rating: ****.
(4.48, 82 ratings)

“Fat Models, Skinny Controllers” they scream. Pushing your logic down
to the model layer is a key step to improve testability,
maintainability, and code quality. But many developers now have “junk
drawer” models that don’t realize these goals. Having a fat model
isn’t enough!

In this session we’ll explore techniques for improving your models including:

  • Extracting code into libraries and gems
  • Encapsulating logic into processor objects
  • Using the presenter pattern
  • Deciding between class and instance methods
  • Guidelines to judge code quality and complexity

When you leave this session you’ll be dying to refactor!

Photo of Jeff Casimir

Jeff Casimir

Jumpstart Lab

I started JumpstartLab in the summer of 2009 after six years as a public school teacher and administrator. I love teaching skills that help people unlock their ideas. My primary expertise is in Ruby and Rails, but also love subjects like JavaScript, database design, and anything else related to the web.

Comments on this page are now closed.


Picture of Jeff Casimir
Jeff Casimir
05/24/2011 10:15am EDT

Thank you, your positive feedback means a lot!

Conrad, at user groups I’ve used a screen-capture solution to create a recording. But at a big event like RailsConf I, and I assume other speakers, are terrified of technical glitches. I try to close everything on my machine except Keynote, and running a live recording would make me nervous.

Dustin McCraw
05/23/2011 7:53pm EDT

One of the best sessions of the conference. Great speaker and great material. The presentation was a perfect blend of higher level concepts and lower level code.

Gavin Stark
05/20/2011 4:41pm EDT

Jeff, its clear you put a lot of time and thought into the presentation and it showed! Great job!

Picture of Conrad Taylor
Conrad Taylor
05/19/2011 8:12pm EDT

Hi, I’m sorry that I missed this session. However, you did take my picture. In any case, it would be nice if the presenters used a video capturing application to record their session.

Picture of Jeff Casimir
Jeff Casimir
05/19/2011 6:11pm EDT

Thanks for all the support! Here is a link to the slides: dl.dropbox.com/u/69001/Fat%...

Gourav Tiwari
05/18/2011 10:35am EDT

Well explained the details of the re-factoring. can’t wait to see the slides!

Jonathan Gross
05/18/2011 2:41am EDT

well presented

Walter Davis
05/17/2011 4:49pm EDT

I wish I’d seen this one. Hope you can present it again sometime.

Robert Fox
05/17/2011 1:57pm EDT

Quite a few excellent points were made in this presentation. The design pattern presented looks like it will help to simplify several projects I’m working on. I hope to see the presentation slides posted somewhere, and perhaps an audio recording of this presentation.

Chris Johnson
05/17/2011 8:12am EDT

I would like to have seen more on splitting (too) fat models into more manageable classes via methodical refactoring.

CJ Gregory
05/17/2011 8:09am EDT

Interesting content…got me thinking about how I’m approaching my MVC designs. First time I’ve heard Jeff speak, and I’m impressed. New twitter follower here…

Stefan Rusterholz
05/17/2011 7:46am EDT

Great talk. Enjoyed it.

Picture of Jeff Casimir
Jeff Casimir
03/11/2011 3:39am EST

This session has gotten great feedback at user groups across the country, most recently tuned up by the expert hackers at BMore on Rails.

The talk is primarily about refactoring and is code rich, going beyond “you should do X” and instead taking common practices and refactoring them into awesomeness.

If you have any thoughts or questions hit me on twitter at @j3.