1. Polymorphic Association   http://railscasts.com/episodes/154-polymorphic-association   http://guides.rubyonrails.org/association_basics.html#polymorphic-associations     For instance, a book can be liked and a video can also be liked. To make a generalised association which can like both a book an a video, we can simply make a polymorphic association named likeable which contains the likable_type and likable_id.      2.  Choose between has_many :through and has_and_belongs_to_many   http://guides.rubyonrails.org/association_basics.html#choosing-between-has-many-through-and-has-and-belongs-to-many     For instance, a book has many tags and a tag can be associated with many books. To make a simple many-to-many relationship, we can simply use has_and_belongs_to_many. However, to create an indirect association through a joint model, we can use has_many:through.     3. execJs: 'Could not find a JavaScript runtime' error.     To add gem 'execjs' gem 'therubyracer...