17.
Finders are great but be carefulRetrieve only the information that you need. Don’t kill your database with too many queries. Use eager loading.Avoid dynamic finders like MyModel.find_by_*.Need an optimized query? Run MyModel.find_by_sql.17#This will generates only one query,# rather than Post.count + 1 queriesfor post inPost.find(:all, :include=> [ :author, :comments ])# Do something with postend

18.
Control your controllersDon’t let them become the God classes.Lesser instance variables.Slimmer the better.Appropriate code in appropriate controller.18

20.
20Obey design principles.Always code in context (Objects). It is the best way to model your solution.Avoid “Quick and dirty”.Understand that no good can ever come out of duplication. Be it code, design, data and most importantly effort.Simplicity is the key.Enjoy coding!