Advanced Rails Recipes by Mike Clark & Chad Fowler